文档介绍:,DI(依赖注入,控制反转)容器*入门:*spring-home/dist/,spring-home/lib/log4j/log4j-,spring-home/lib/mons-*(提示的添加:window->preferences->myeclipse->fileandedit->xml->xmlcatalog->add,改keytype为uri,然后location中找到spring下dist里面找到spring-beans-,再将keytype改回schemalocation最后将spring-beans-)*在manager类中提供setter方法,让spring来实例化的对象注入给我们,spring来管理对象的创建说明:userDao为接口,userManager为客户端调用的类(同单态模式),而userDao4MySqlImpl和userDao4OracleImpl为实现接口的具体类,ref=””描述的是manager类具体调用的是哪个实现类,省去了重新写一个工厂创建具体的实现类*调用:*注入的方式有3种:,(构造函数),()方法*普通属性的注入:intStringlistsetarraymap属性编辑器(),,当然format格式也可以注入(要求提供一个setter方法,然后在下面加入<propertyname=”format”value=”yyyy-MM-dd”/>)可改*对象的配置:为减少配置量,可以抽取实体类的公共部分,配置为abstract一个对象拥有另外对象的引用则:*springbean的作用域singleton每次调用返回相同的实例(默认的scope)(声明试服务,默认采用的是jdk动态代理:proxy,处理与业务逻辑无关的事物:如记录日志,进行安全性检查等)*静态代理(纵切线)适用于需要代理的对象比较小的情况没有影响原有真实的业务逻辑实现,但在代理内中冲刺着大量的与业务无关的代码Example::publicinterfaceUserManager{publicvoidaddUser(Stringname,Stringpassword); publicvoiddelUser(Stringid);publicvoidmodifyUser(Stringname,Stringid);}:lassUserManagerImpimplementsUserManager{publicvoidaddUser(Stringname,Stringpassword){ //checksecurity(); ("------static---proxy---addUser()--------");}publicvoiddelUser(String