spring的好处:
其实用spring最好的地方就是实现代码的复用。
首先spring的设计原则是非侵入性的,就是实际业务逻辑代码中感觉不到spring框架的存在,spring只是在其中起到一个实例产生的作用,然后把实例分配给需要的对象。这种设计的好事就是可以随时随地的把某个业务逻辑很轻松的从整个系统中抽离出来再在无任何修改的情况下用到其他系统中去。
然后就是切面的编程,这种设计是灵活的操作织入,例如你的某个业务逻辑是执行存款,存款这个业务之前之后都应该有某些附加操作,例如用户登录,检查余额,记录存款日志信息,但是这些不能够放在存款主业务当中,这个时候就可以用面向切面的方式灵活织入到存款业务中,但是这个过程有不需要改变原存款业务代码和逻辑实现。如果将来某个时候这些副业务刚改,例如我不想记录存款日志信息,但是我又要加入打印出存款细节的附加操作,这个时候只要把记录日志剥离出来,再植入打印功能。同样不需要更改源代码。
spring这些设计的终极目标就是避免同样或者相似功能在不同系统中的重复开发而设计的。
项目中添加spring的支持:
1 首先在项目的src目录下添加ApplicationContext.xml文件
2 在lib中添加spring.jar 和 commons-loging.jar
3 在一个main中写ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml"});//用于获取applicationContext.xml文件
然后 B b= (B) ctx.getBean("cctest");//获取applicationContext.xml配置的bean 赋给对象b
b.test();//调用b的方法
AOP:
什么是切面(aspect):
切面(aspect): 一个关注点的模块化,这个关注点可能会横切多个对象;