当前位置: 首页 > wzjs >正文

游戏网站推广衡水建设网站

游戏网站推广,衡水建设网站,网站程序组成,哪个小说网站可以做封面1、介绍下什么是Spring框架的IOC和DI IOC 控制反转,指将对象的创建权,反转到Spring容器; DI 依赖注入,指Spring创建对象的过程中,将对象依赖属性通过配置进行注入,不能单独存在,需要在IOC的基础上完成操作…

1、介绍下什么是Spring框架的IOC和DI

IOC 控制反转,指将对象的创建权,反转到Spring容器;

DI 依赖注入,指Spring创建对象的过程中,将对象依赖属性通过配置进行注入,不能单独存在,需要在IOC的基础上完成操作,通过引入IOC容器,利用依赖关系注入的方式,实现对象之间的解耦。

2、Spring里面 bean的scope作用域有哪些

singleton:单例, 默认值,调用getBean方法返回是同一个对象,实例会被缓存起来,效率比较高,当一个bean被标识为singleton时候,spring的IOC容器中只会存在一个该bean。

prototype: 多例,调用getBean方法创建不同的对象,会频繁的创建和销毁对象造成很大的开销。

request :每个Http请求都会创建一个新的bean。

session: 每个Http Session请求都会创建一个新的bean。

3、什么是AOP以及好处

AOP 面向切面编程, 在不改变原有逻辑上增加额外的功能。

AOP思想把功能分两个部分:核心关注点(业务的主要功能)和横切关注点(非核心、额外增加的功能)。

比如以用户下单为例子:核心关注点是创建订单,横切关注点:记录日志、控制事务。

AOP 面向切面编程的好处:解耦;减少代码重复,可以统一处理横切逻辑。

4、解释下AOP里面常见的概念,比如 横切、通知、连接点、切入点、切面 、目标、织入

横切关注点:对哪些方法进行拦截,拦截后怎么处理,比如 权限认证、日志、事物;

通知:在特定的切入点上执行的增强处理,有5种通知(什么时间点、做什么事情);

连接点:要用通知的地方,全部方法都可以是连接点;

切入点:不能全部方法都是连接点,通过通配、正则表达式过滤出特定的一组 JointPoint连接点来进行通知;

切面:通常是一个类,里面定义 切入点(定义在什么地方)+通知(什么时间点、做什么事情);

目标:目标类,真正的业务逻辑,可以在目标类不知情的条件下,增加新的功能到目标类的链路上;

织入:把切面应用到目标函数的过程称为织入。

5、说下JDBC连接数据库的步骤

(1)加载数据库驱动

(2)获取数据连接对象

(3)获取语句对象,会话对象有两种Statement和PreparedStatement执行语句,     PreparedStatement在执行之前会进行预编译,能够有效防止SQL注入;PreparedStatement支   持?占位符而不是直接拼接

(4)处理结果集

(5)关闭连接资源,关闭顺序:rs.close()、st.close()、conn.close() 

6、说下Mybatis加载的流程

每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为核心,SqlSessionFactory 的实例是通过 SqlSessionFactoryBuilder 从 XML 配置文件来构建出来的,SqlSessionFactory可以创建 SqlSession,SqlSession提供了执行 SQL 的方法,接着Executor负责执行SQL 语句。

7、#{ } 和 ${}的区别是什么

#{ }是预编译处理,${}是字符串替换;

mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值;

mybatis在处理${}时,会把${}替换成变量的值。

使用#{}可以有效的防止SQL注入。

8、介绍下Mybatis一级缓存跟Mybatis二级缓存

(1)、一级缓存的作用域是SqlSession,同一个SqlSession中执行相同的SQL查询(相同的SQL和参数),第一次会去查询数据库并写在缓存中,第二次会直接从缓存中取,默认开启一级缓存

失效策略:当执行SQL时候两次查询中间发生了增删改的操作,即insert、update、delete等操作commit后会清空该SQLSession缓存; 比如sqlsession关闭,或者清空等。

(2)、二级缓存是namespace级别的,多个SqlSession去操作同一个namespace下的Mapper的sql语句,多个SqlSession可以共用二级缓存;默认是没有开启二级缓存,为了使用二级缓存,需要手动配置并在对应的 Mapper XML 文件中启用它。

操作流程:第一次调用某个namespace下的SQL去查询信息,查询到的信息会存放该mapper对应的二级缓存区域。第二次调用同个namespace下的mapper映射文件中,相同的sql去查询信息,会去对应的二级缓存内取结果。

失效策略:执行同个namespace下的mapepr映射文件中增删改sql,并执行了commit操作,会清空该二级缓存。

注意:

实现二级缓存的时候,MyBatis建议返回的POJO是可序列化的, 也就是建议实现Serializable接口。

若一级缓存和二级缓存同时启用,优先查询二级缓存->查询一级缓存->数据库。

http://www.dtcms.com/wzjs/804712.html

相关文章:

  • 南京网站开发选南京乐识好淘宝网网页版首页登录入口
  • 天津开发区建网站公司网站推广 html关键词代码解说
  • 长春网站建设seo攸县网页设计
  • 南阳网站关键词查收录
  • 网站备案 加急做视频网站需要什么空间
  • 网站设计开发工程师网站建设需要什么材料
  • 网站维护推广的方案个人简历模板下载免费
  • 广安建设局网站长沙网络营销公司有哪些
  • 萝卜建站wordpress验证码代码
  • 公司做网站 优帮云目前常用的搜索引擎有哪些
  • 简单详细搭建网站教程视频教程wordpress同类
  • 中国购物网站排名湖北省建设工程质量安全监督网站
  • 怎样做站长建网站可以做英文教师的网站
  • 白银做网站的董事免费入驻的电商平台
  • 做网站需要哪些技术人才百度网站验证
  • 提供网站建设管理视频号分销解决方案的特点
  • 青海教育厅门户网站外贸网站有哪些
  • 网站建设傲成都网站制作软件
  • 合肥官方网站建设网站机房建设成本
  • 洞头区网站建设收费有哪些网站可以做h5
  • iis 建设网站网站布局建议
  • dw制作简单网站模板下载牟长青 做网站推广的四个基本要点
  • 做网站的软件多少钱wordpress示例页面删除
  • 软件下载网站怎么赚钱wordpress怎样给目录增加
  • 如何做网站上抓视频wordpress积分系统
  • wap网站建设免费如何用api方式做网站
  • 民房做酒店出租网站appwordpress视频去广告插件下载
  • 广东网站备案时间免费在线观看韩国电视剧网站推荐
  • 国内网站设计公司关键词智能调词工具
  • 最优的手机网站建设做网站联系方式