Java基础(六)

Java基础(六)_第1张图片

Spring依赖注入的几种方式

1、接口注入
2、setter方法注入
3、构造方法注入

Struts2的拦截器与过滤器的工作原理

1、Structs2拦截器是在访问某个Action或Action的某个方法、字段的之前或之后实时拦截。
过程:
当请求达到Structs2的ServletDispacher时,Structs2会查找配置文件,并根据配置文件实例化对应的拦截器,然后串成一个列表,最后按顺序调用列表中的拦截器
2、Filter依赖于servlet容器,基于函数回调,可以对几乎所有请求(静态资源、页面、Servlet)进行过滤,如CharacterEncodingFilter

Spring中的IOC和AOP

1、IOC(Invert Of Control):控制反转
IOC就是依赖注入,在spring中创建被调用者的工作不再由调用者来完成,而是由spring容器来完成,然后注入调用者
2、AOP(Aspect Oriented Program):面相切面编程
AOP目的是将复杂的需求分解出不同的方面,将公共功能集中解决的过程,比如在登陆之前、之后写入日志等

Spring事务都有哪些

1、编程式事务
将事务管理代码嵌入到业务方法中来控制事务的提交和回滚,在编程式管理事务当中,必须在每个事务操作中包含额外的事务管理代码,繁琐,不方便。
2、声明式事务
是建立在AOP之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。声明式事务最大的优点就是不需要通过编程的方式管理事务,这样就不需要在业务逻辑代码中掺杂事务管理的代码,只需通过基于@Transactional注解的方式或者配置文件中做相关的事务规则声明,便可以将事务规则应用到业务逻辑中。

Hibernate的缓存机制

1、一级缓存:也称为“Session缓存”,使用一级缓存的目的是为了减少对数据库的访问次数,从而提升hibernate的执行效率
2、二级缓存:也称为“SessionFactory的缓存”,一般存储以下几种数据:
1)常量数据或很少被修改的数据
2)不会被并发访问或很少被并发访问的数据
3)与其他应用共享的数据

MyBatis和Hibernate有什么区别

1、Hibernate:
是一个标准化的ORM框架。入门的门槛较高,使用HQL,对SQL优化、修改比较困难。
适合需求变化不多的项目,比如ERP、OA。
2、Mybatis:
是一种半自动化的ORM实现,专注SQL本身,程序员需要自己写SQL语句,SQL的修改与优化比较方便。
适合需求变化较多的项目。

你可能感兴趣的:(Java基础(六))