Java|Java Spring的使用注解开发详解
目录
- 使用注解开发
- 1.bean
- 2.属性如何注入
- 3.衍生的注解
- 4.自动装配
- 5.作用域
- 6.小结
- 代码show
- 1.新建一个模块:
- 2.新建pojo包及类
- 3.新建dao包及类
- 4.新建service包及类
- 5.新建controller包及类
- 6.新建配置文件applicationContext.xml
- 7.测试
- 彩蛋
- 总结
使用注解开发 在Spring4之后,要使用注解开发,必须要保证aop的包导入了
文章图片
使用注解需要导入context的约束,增加注解的支持
1.bean
2.属性如何注入
//等价于//@Component组件@Componentpublic class User {// 相当于@Value("gongyi")public String name; //@Value("muzi")public void setName(String name) {this.name = name; }}
3.衍生的注解
@Component有几个衍生注解,我们在web开发中,会按照mvc三层架构分层!
- dao【@Repository】
- service【@Service】
- controller【@Controller】
4.自动装配
- Autowired:自动装配通过类型。名字如果Autowired不能唯一自动装配上属性,则需要通过 @Qualifier(value = "https://www.it610.com/article/xxx")- @Nullable 字段标记了这个注解,说明这个字段可以为null- Resource:自动装配通过名字。类型
5.作用域
@Component@Scope("singleton")public class User {// 相当于@Value("gongyi")public String name; //@Value("muzi")public void setName(String name) {this.name = name; }}
6.小结
xml与注解:
- xml更加万能,适用于任何场合,维护简单方便
- 注解 不是自己类使用不了(比如DataSource类),维护相对复杂
- xml用来管理bean
- 注解只负责完成属性的注入
- 我们在使用的过程中,只需要注意一个问题:必须让注解生效,就需要开启注解的支持
代码show 代码结构图:
文章图片
1.新建一个模块:
spring-06-anno
2.新建pojo包及类
//等价于//@Component组件@Component@Scope("singleton")public class User {// 相当于@Value("gongyi")public String name; //@Value("muzi")public void setName(String name) {this.name = name; }}
3.新建dao包及类
@Repositorypublic class UserDao {}
4.新建service包及类
@Servicepublic class UserService {}
5.新建controller包及类
@Controllerpublic class UserController {}
6.新建配置文件applicationContext.xml
7.测试
public class MyTest {public static void main(String[] args) {ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); User user = (User) context.getBean("user"); System.out.println(user.name); }}
彩蛋 1.被spring托管的类在idea中的显示
1)未被托管前
文章图片
2)配置托管
文章图片
3)托管后
文章图片
总结 【Java|Java Spring的使用注解开发详解】本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!
推荐阅读
- 一文教你MySQL如何优化无索引的join
- MyBatisPlus代码生成器的使用示例
- ReentrantReadWriteLock不能锁升级的原因总结
- SpringBoot4.5.2|SpringBoot4.5.2 整合HikariCP 数据库连接池操作
- 关于python中不同函数读取图片格式的区别浅析
- Mybatis|Mybatis Plus 中的LambdaQueryWrapper示例详解
- 详解QTreeWidget隐藏节点的两种方式
- 你知道Ins上的图片是可以保存到手机相册里的吗()
- 扎“芯”了——CP探针卡的国产替代道阻且长
- 宇宙最強的IDE - Visual Studio 25岁生日快乐