1.ssh(Spring+Struts2+Hibernate)
Spring
简介:是一个轻量级的ioc与aop容器框架,是框架与框架之间的粘合剂。(事务集成,框架集成)
IOC:控制反转,依赖注入。依赖对象的创建和维护交给了Spring容器管理。
优点:节约内存,性能提高。
例子:比如在登录的时候 ,每次登录需要new一个user对象,角色对象。每次new一个对象都会占用内存,如果我上万个人登录那么上万个对象占用内存。但是ioc就很好的解决了这个问题,它的底层是单例的,也就是说每一次注入的对象还是那一个。
注入方式:
setter注入,
构造注入,constructor-arg ref="user"></constructor-arg> ref定义其他标签name的值
接口注入(一般不建议使用有侵入性)。
AOP:面向切面编程。 本质是拦截器 管理事务 日志 权限,通知等
简单来说三点构成一线,线构成面 ,点就是开启事务 ,线就是增删改,面就是关闭事务
Struts2
简介:
hibernate
简介:将数据库的操作装换为java对象的操作,从而简化开发;
1.缓存:
一级缓存,二级缓存
2.hibernate java中应用对象的状态
1.临时态
2. 游离态
3.持久性
3.Hibernate中getCurrentSession()和openSession()的区别?
getCurrentSession()判断当前线程是否绑定了session,如果有直接使用,没有则创建
openSession()则是直接new一个session对象并返回
getCurrentSession()在提交事务会自动关闭而opensession则要手动关闭
2.ssm(Spring+SpringMVC+Mybatis)
SpringMVC
简介:基于java实现了MVC设计模式的、请求驱动类型的、轻量级WEB框架。
请求流程:
1.用户发送请求给web服务器 web服务器进行解析,交给对应的DispatcherServlet请求路径
2.DispatcherServlet根据请求信息以及handlermapping找到对应的处理器handler,在将具体的处理权交给handler
在具体由handlerAdapter对handler进行具体的调用
3.handler对数据处理完之后返回一个modelandview对象给dispatcherservlet
4.dispatcherservlet通过viewresolve将逻辑视图装换为视图view
5.dispatcherservlet通过model解析出modeladview中的参数进行解析最终返回一个完整的view给客户端。
Mybatis
简介:基于java持久层框架(半自动),它支持普通SQL查询,存储过程和高级映射的优秀持久层框架。
springboot
ssh与ssm主要区别
1.Struts2与springmvc的区别
Struts | springmvc |
---|---|
StrutsPreparaedAndExcuteFiter | dispatcherservlet |
侵入 | 非侵入性 |
基于类开发 | 基于方法开发 |
2.hibernate与mybatis的区别
hibernate 查询比较慢性能差 mybatis性能好
hibernate sql语句不需要程序员自己写开发效率要高 mybatis需要自己编写sql语句 开发效率慢
两者均为ORM框架,但也有一些不同
mybatis | hibernate |
---|---|
轻量级 | 重量级 |
半自动化 | 全自动化 |
sql | hql(但也可以使用sql,但违背了hibernate的初衷) |
扩展性、迁移性比较差 | 缝移植 |
SpringBoot
简介:简化Spring应用开发的一个框架,整个spring技术栈的一个大整合,j2ee开发的 一站式解决方案