SpringMVC(1)

来源:互联网 发布:淘宝不给发票怎么应对 编辑:程序博客网 时间:2024/06/05 11:12

1.了解Spring框架作用
Spring框架可以改善系统结构,提高系统灵活性。
–Spring提供了IOC和AOP机制,可以降低程序组件之间的耦合度
–Spring提供了Spring web MVC实现可以快速开发MVC结构的web程序
–Spring提供了对JDBC,MyBatis,Hibernate,Struts等其他技术的整合应用
2.什么时候用
**降低程序组件耦合度,*web MVC结构程序的时候使用
3.怎么使用Spring
1)Spring容器IOC应用(Core核心)
a.创建组件对象
容器类型:ApplicationContext和BeanFactory
容器对象创建:ClassPathXmlApplication
组件定义方法,有3种



**控制对象使用范围:scope=”singleton或prototype”
Singleton:一个,在容器中只有一个对象
Prototype:一个,每次调用getBean都会产生一个新的对象
指定初始化和销毁方法:
Init-method和destory-method属性
Init-method:在对象创建后,自动调用指定的初始化方法
Destroy-method:仅对scope=”singleton”组件有效,在调用容器close方法销毁时触发
指定bean对象延迟实例化
单利组件,在Spring容器实例化时自动实例化;
可以采用lazy-init=”true”将对象创建推迟到getBean()方法调用
b.维护组件对象关系(IOC思想)
IOC概念:Inversion of Control反向控制/控制反转
本质:改变了对象获取方式,由原有自己创建对象应用,转为接收界注入的对象使用。由spring容器负责对象创建,以及关系注入的控制。
Spring的IOC主要采用DI技术实现关系注入
DI:Depedency Injection 依赖注入
Spring的DI又分为set注入,构造器注入
1.**set注入应用
2.构造器注入:Bean对象注入 ref=”要注入的Bean对象ID”
3.自动装配(bean对象注入简配)
autowire属性值
byName:按名称匹配,的id名与setxxx名字匹配注入,否则不注入
byType:按类型匹配,的class类型与属性类型一致注入,否则不注入
(byType:遇到多个匹配类型会发生异常)
4.各种类型信息的注入
a.基本信息注入
字符串,数值等单个值

b.Bean对象注入(也可以自动装配)

c.集合注入
List,Set,Map,Properties
—>
—->
—->
–>
d.Spring表达式注入
可以将某个Bean对象或集合中的信息注入

{id属性值.属性}//调用getxxx方法

{id属性.key}//map或properties方问

{id属性[0]}//list或数组方问

5.注解技术是在类定义中追加标记
标记格式:@标识符
@Component
@Service
@Resoruce
标记只能出现在类的定义前,方法定义前,成员变量前
注解好处:框架一般采用注解简化或替代原有的XML文件配置
组件自动扫描使用
可以简化定义,按指定的包路径扫描包内所有组件,如果组件类定义前出现以下几个标记之一,就将组件声明定义到容器。
@Component //组件
@Controller //控制组件
@Service //业务组件
@Repository //数据访问组件DAO包
@Named //需要引入第三方标准jar包
默认扫描组件,id属性为组件名首字母小写,可以采用@Service(“id”)形式
@Resource仅适用set注入
@Autowired适用set和构造器注入
@Inject第三方标准,等价于@Autowired

0 0