1.1 IOC的注解开发
1.1.1 创建工程引入jar包
1.1.2 配置核心文件
1.1.3 配置类扫描器
1.1.4 编写dao的实现类
引入Component注解
1.1.5 测试Component注解
1.1.6 怎么给属性赋值
使用注解给“普通”属性赋值有2种写法
如果当前属性提供了set方法,可以在set方法上面使用@Value(“某个值”)
如果当前属性不提供set方法,直接在变量名上面使用@Value(“某个值”)
给引用类型(就是对象类型)属性赋值
可以使用@Autowired 注解
该注解和类型有关,和名字无关
要想使用名字,需要组合注解@Qualifier ,name此时必须保证注解名字一致。
可以使用@Resources注解代替 @Autowired和@Qualifier 组合。
1.2 IOC注解的详解
@Component组件注解,修饰任何一层的类,(分层不明)
Spring框架为了使注解代码结构清晰,对Component做了细分
@Controller 用于修饰控制器层
@Repository 用于修饰Dao层
@Service 用于修饰Service层
以上4个注解,完全可以混用。
如果对于分层不明显的类,比如Javabean类。可以仍旧使用Component注解。
1.2 Bean的其他注解
1.3.1 bean生命周期方法的注解(了解)
@PostConstruct 等同于xml 写法的 init-method
@PreDestroy 等同于xml 写法的 destroy-method
1.3.2 @Scope注解
Scope取值:
Singleton 单例模式
Prototype 多例模式
Request
Session
Global session
1.3 IOC注解和XML写法对比
xml写法:结构清晰,如果系统升级,可以清楚知道,类对应的功能。
注解写法:优点- 敏捷开发,如果要系统升级,需要一个一个注解去看,找到对应的java源码。
Xml 和 注解 混合开发。(将bean仍旧交给spring管理,属性交给注解配置)
需要注意:如果在类上面写了注解,那么一定要写类扫描器。不能单独使用
<context:annotation-config/>