欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

详解spring如何使用注解开发

时间:2021-10-25 10:50:24|栏目:JAVA代码|点击:

Spring4之后,要使用注解开发,必须要保证aop的包导入了。

在这里插入图片描述

使用注解需要导入context约束,增加注解的支持。

<?xml version="1.0" encoding="utf-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       https://www.springframework.org/schema/context/spring-context.xsd">
       
    <!--指定要扫描的包,这个包下的注解会生效-->
    <context:component-scan base-package="com.chen.project"/>
    <context:annotation-config/>
</beans>

1.bean

@Component:组件,放 在类上,说明这个类被Spring管理了,就是bean

2.属性如何注入

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

//等价于<bean id="user" class="com.chen.dao.User"></bean>
@Component
public class User {

   public String name;
   
   //等价于<property name="name" value="lan"></property>
   @Value("LAN")
   public void setName(String name) {
       this.name = name;
   }
}

3.衍生的注解

@Component有几个衍生注解,我们在web开发中,会按照mvc三层架构分层!

  • dao【@Repository
  • service 【@Service
  • controller【@Controller

这四个注解功能都是一样的,都代表将某个类注册到Spring中,装配Bean

4.自动装配置

-@Autowired通过byType的方式实现。

@Resource默认通过byName的方式实现。

5.作用域

@Scope("singleton")
public class User {
}

6.小结

  • xml更加万能,适用于任何场合,维护简单方便
  • 注解不是自己的类使用不了,维护相对复杂!
  • xml于注解最佳实践
  • xml用来管理bean
  • 注解只负责完成属性的注入
  • 我们在使用的过程中,只需要注意一个问题,必须让注解生效,就需要开启注解的支持
<!--指定要扫描的包,这个包下的注解会生效-->
   <context:component-scan base-package="com.chen.project"/>
   <context:annotation-config/>

上一篇:Java编程基本概念

栏    目:JAVA代码

下一篇:详解SpringBoot Controller接收参数的几种常用方式

本文标题:详解spring如何使用注解开发

本文地址:http://www.codeinn.net/misctech/181250.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有