1、整合
2、容器 (能降低耦合度) Javebean
3、AOP面向切面编程 业务逻辑和系统服务分离开,系统服务抽离到切面。
4、Ioc:反射和工厂
Bean 作用域
Rquest 在它实例化之后共享同一个rquest请求
Session 会话,在一次会话以内都是有效的
global session 全局session作用域
<!-- 启动@AspectJ的支持 -->
<aop:aspectj-autoproxy/>
<!-- 声明 -->
<bean id="logAspect" class="com.lovo.aspect.LogAspect"></bean>
一些今天学到概念,和练习的代码,以及切面的学习@Aspect//声明一个切面。
各种类型的通知比如:@Before(value = "execution(* com.lovo.service.impl.*ServiceImpl.*(..))")
用了session ,mybatis和spring集合起来的练习,dao用的注解方式,业务层实现
public void add(SqlSession sql,UserBean bean) {
dao = sql.getMapper(com.lovo.dao.IUserdao.class);
try {
int rows = dao.add(bean);
Assert.assertEquals(1, rows);
sql.commit();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
sql.rollback();
}
}
在切面进行
Object[] objts = jp.getArgs();
objts[0] = DBTools.getSession();
Object obj = jp.proceed(objts);
return obj;
这种方式感觉还是有点缺陷。