Java S2SH框架整合
来源:互联网 发布:php的des加密解密 编辑:程序博客网 时间:2024/06/15 13:57
整合后的写程序顺序:
谁能先测试先写谁
Struts2:业务逻辑数据传输
Hibernate:数据持久化
Spring:依赖注入控制反转
Spring
IOC(控制反转)
概念
把对象的创建、初始化、销毁等工作交给spring容器来做
创建对象
构造函数(用的最多)
DI(依赖注入)
注解
概念
1、 用来解释说明
2、 注解必须作用在类的某一个部分
3、 注解的作用域范围(java,class,jvm)
4、 注解解析器
流程分析
1、 启动spring容器
2、 Spring容器解析类扫描的注解解析器,在base-package指定的包及子包中查找所有的类
3、 查看哪些类上面是否含有@Component注解
4、 如果该注解的value的属性的值为空,则把类名的第一个字母变成小写,作为id值,放入到spring容器中
5、 如果该注解的value的属性的值不为空,则用value的属性的值作为id值,放入到spring容器中
6、 再次查找在spring容器中的类的所有的属性,按照@Resource的规则给属性赋值
Aop
代理模式
切面
事务、日志、安全性的框架,权限等就是切面
通知
切面中的方法就是通知
切入点
只有符合切入点的条件,才能让通知和目标方法结合在一起
织入
形成代理对象方法体的过程
切入点表达式
通知
前置通知
在目标方法执行之前执行。
后置通知
在目标方法执行之后执行
可以获取目标方法的返回值
当目标方法遇到异常,不执行
最终通知
无论目标方法是否遇到异常都会执行,相当于代码中的finnaly
异常通知
获取目标方法抛出的异常
环绕通知
能够控制目标方法的执行
目标类
从配置中可以看出,把service层所有的类当成目标类,只要service层所有的类的所有的方法抛出异常,则exceptionAspect中的异常通知就会获取到目标方法抛出的异常,所以在这里异常通知就是用来处理异常的,而且只有一个方法。并且该切面和所有的其他类都是松耦合的。
Spring的声明式事务处理
概念
程序员不再负责处理事务,事务处理交给spring容器来做。
具体的详解
程序员负责两个内容:
1、 对表的crud操作:目标类的目标方法
2、 告诉spring容器什么样的目标方法采用什么样的事务策略
Spring容器负责:(切面)
负责事务的处理
实现原理
采用了aop技术来实现的。
Spring与hibernate
组成
1、 hibernate的配置文件
2、 持久化类和映射文件
3、 Dao层和service层所有的类
4、 Spring的配置文件
5、 客户端
Spring与hibernate
组成
1、 hibernate的配置文件
2、 持久化类和映射文件
3、 Dao层和service层所有的类
4、 Spring的配置文件
5、 客户端
Action与service要做到完全的松耦合,所以在action中的service必须由spring容器进行注入,那么要完成该注入,action必须在spring容器中。所以action必须由spring容器产生。
1、 为了松耦合action与service,service与dao,使用了ioc和di
2、 为了不让程序员接触到事务,使用了声明式的事务处理
3、 有可能会用springaop处理权限、日志等内容
数据库的操作由hibernate充当
1、 mvc的作用
2、 使用插件的机制使得struts2与spring整合在一起了,实际上就是把
Struts2中的action交给spring处理了。
- Java S2SH框架整合
- java S2SH项目框架整合搭建实例教程
- java S2SH项目框架整合搭建实例教程
- java S2SH项目框架整合搭建实例教程
- s2sh框架整合
- S2SH框架整合案例
- java S2SH项目框架整合搭建实例教程(转载)
- s2sh三大框架整合
- 如何整合S2SH 框架 使用 myeclipse
- s2sh框架整合详细配置-xml方式
- s2sh框架整合demo介绍-注解方式
- 我的S2SH框架整合的例子
- Spring S2SH框架整合(一)
- s2sh框架整合demo介绍-注解方式
- s2sh框架整合详细配置-xml方式
- 学习笔记——S2SH框架整合
- S2SH整合
- S2SH整合
- PAT乙级(Basic Level)真题 >人口普查
- Springboot MyBatis多数据源切换
- 输入身份证号和年份计算年龄
- 关于EL表达式中requestScope和param区别
- Java界面常用布局管理器
- Java S2SH框架整合
- 使用python抓取落网期刊图片
- TI GPIO控制
- deque的构造与内存管理
- junit
- Android开发之Genymotion安装第三方软件的“APP not installed”问题
- 【省赛个人选拔赛九补题】NBUT [1225] NEW RDSP MODE I (思路题)
- 【Java设计模式06】——装饰者模式
- 对一个整数按位反转和对字符反转