常用的框架

锵锵锵,今天给大家分享的是我们在做项目时常用到的框架。

Spring

首先Spring是一个开源轻量级的IOC和AOP的容量框架,Spring对主流框架提供了很好的集成支持,比如Hibernate和SpringMvc等。
1,IOC:控制反转,简单来说就是以前我们需要自己New对象的这个操做现在由Spring容器使用工厂模式为我们来创建,我们直接调用即可。
2,AOP:面向切面,本质就是拦截器,我们将一个个对象某些类似的地方抽象成切面,对这切面进行一个事务管理,记录日志等操做。列如我们在对数据库进行增删改的操做是需要进行事务开启与提交,如果每调用一次方法就要开启一次事务太过于繁琐,这时Aop便能帮我们简化,在配置文件中配置哪些方法需要事务,哪些不需要。

Spring的注入方式

     1.setter注入

     2.构造注入

     3.接口注入

框架比较

1. SpringMvc和Struts2的区别

      1,SpringMvc是非侵入式Struts2是侵入式

      2,SpringMvc的入口是Servlet即前端控制器,而Struts2的入口是filter过滤器

     3,SpringMvc基于方法开发,即在跳方法时可直接进入方法,不必先进入类,可以设计为单例或者多列。Struts2基于类开发,在跳方法时必须先进入类从而再找到方法,只能设计为多列。SpringMvc会比Struts2稍微快些。

    4,Struts2采用的时值栈存储请求和响应的数据,通过OGNL存储数据,SpringMvc通过参数解析器是将request请求内容解析并将方法形参赋值。Struts2的OGNL表达式使页面的开发效率相比SpringMVC更高些

2. Hibernate和Mybatis的区别

   1,Hibernate是ORM框架,它对Sql语句进行了封装,在分层结构中处于持久化层,我们可以直接使用,Hibernate属于全自动

   2,Mybatis是将Sql语句与Java代码分离,Sql语句写在Xml文件配置,Mybatis属于半自动。

   3,Hibernate是自动生成SQL而MyBatis是手动编写SQL,可以避免不需要的查询,提高系统性能。所以MybatisSql调优是比较好的。

3. SSH和SSM的区别

   1,两者之间最主要的区别就是Hibernate与Mybatis了。

缓存

1. Hibernate的缓存

Hibernate的一级缓存为Session缓存,Session内置不能被卸载,Session的缓存是事务范围的缓存,即Session对象的生命周期通常对应一个数据库事务或一个应用事务。

Hibernate的二级缓存为SessionFactory,由于它的生命周期是应用程序的整个过程,因此SessionFactory是进程范围或者集群范围的缓存,有可能出现并发问题。

2.Mtbatis的缓存
Mybatis 的一级缓存的作用域是session,当openSession()后,如果执行相同的SQL (相同语句和参数),Mybatis不进行执行SQL,而是从缓存中命中返回。
Mybatis的二级缓存的作用域是一个mapper的namespace, 同一个namespace中查询sq1可以从缓存中命中。二级缓存是可以跨Session的。

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值