【核心核心】5.Spring【DI】注解方式
2024-09-05 04:07:33
使用注解的方式依赖注入不用提供set方法
1.普通类型的注解
@Value
@Value(value="春天") private String name;
2.对象类型的注解
@Autowired --默认按类型自动装配
public interface UserDao { public void saveUser(); }
@Repository(value="userDao") public class UserDaoImpl implements UserDao { @Override public void saveUser() { System.out.println("持久层:保存客户.."); } }
@Autowired private UserDao userDao;
----------------------------------------------------------------------------------------------------------
@Qualifier
--强制使用名称注入,但是必须和@Autowired一起使用
@Autowired @Qualifier(value="userDao") private UserDao userDao;
----------------------------------------------------------------------------------------------------------
@Resource --相当于@Autowired和@Qualifier一起使用
注意:
1.@
是Java提供的注解Resource
2.属性使用name属性
@Resource(name="userDao") private UserDao userDao;
Bean的作用范围和周期注解
1.作用范围注解--@scope
@Scope(value="prototype")作用在类上。值如下:
* singleton -- 单例,默认值
* prototype -- 多例
2.生命周期注解
@PostConstruct -- 相当于init-method
@PostConstruct @Override public void start() { System.out.println("初始化持久层...."); }
---------------------------------
@PreDestroy -- 相当于destroy-method
@PreDestroy @Override public void end() { System.out.println("销毁持久层...."); }
最新文章
- mysql进阶之存储过程
- WEB页面中常见的四种控件的必须的测试
- flask-- 基础篇
- jQuery-1.9.1源码分析系列(十五) 动画处理——外篇
- url中
- Python导入cx_Oracle报错
- ORA-01033: ORACLE 正在初始化或关闭 进程 ID: 0 会话 ID: 0 序列号: 0
- 007商城项目:商品列表查询-需求分析,以及Spinmvc的访问知识
- ShellCode框架(Win32ASM编写)
- Nginx + tornado + supervisor部署
- 深入探索AngularJS(持续更新)
- 最长上升子序列(LIS)模板
- TCP的3次握手和4次挥手
- 设置trace SQL
- BZOJ 1018 堵塞的交通traffic(线段树)
- Java字符串连接最佳实践
- 002Java概述
- Struts2【配置】知识要点
- Delphi的RzDbgrid改变某行的背景色
- 【大前端攻城狮之路】JavaScript函数式编程
热门文章
- css---6伪元素选择器
- [JZOJ6278] 2019.8.5【NOIP提高组A】跳房子
- Windows copy
- CentOS7的mysql5.7-rpm.bundle方式安装
- 运维人员最常用150个linux命令汇总
- 尚学linux课程---8、rpm软件包安装
- HDU-1852-Beijing 2008-一个神奇的公式求逆元
- 左神算法基础班4_1&;2实现二叉树的先序、中序、后序遍历,包括递归方式和非递归
- springcloud(十六)、feign+hystrix+ribbon+zuul应用案例
- Linux 实用指令(5)--组管理和权限管理