栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring注解开发、通过注解将类托管到容器中

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring注解开发、通过注解将类托管到容器中

        学到这里大家应该都学过通过beans.xml配置文件将类托管到容器中了吧,在这里我们就使用另一种方式将类托管到容器中;也就是通过注解的方式将类托管到容器中。

        使用注解步骤

  • 在beans.xml文件中的beans标签添加支持自动装配的约束
  • 在beans.xml文件中添加指定包注解生效的标签
  • 在java类上使用注解
  • 获取类对象

先看一下通过xml文件托管类的方法,方便与后面的注解托管方式对比




    
    
        
    

1.在beans标签中添加context约束

写在beans标签的xsi属性值中

http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd
2.在beans.xml文件中添加使指定包下的注解生效的标签

xml文件配置如下:



    
    

    
    


3.在java类使用注解
- @Component // 托管类 等价于 
    组件,放在类上,说明这个类被Spring管理了,就是bean 相当于一个bean

- @Component的衍生注解,衍生注解功能根@Component一样
   dao层        【@Repository】
   service层    【@Service】
   contorller层 【@Controller】
使用衍生注解表示这个类是什么层,功能等价于@Component 都是将类注册到Spring容器中,然后装配bean

 
- @Value("幼诗")
   //赋值 使用在属性上 相当于   给属性注入一个值;也可以放在set方法上

- @Scope("singleton")
  //作用域 例如设置为单例(singleton) 原生(prototype)  使用在类上

使用代码如下:

1.@Component托管实体类、@Value赋值、@Scope单例:

// 等价于 
@Component
//作用域 例如设置为单例(singleton) 原生(prototype)
@Scope("singleton")
public class User {

    //相当于   给属性注入一个值;也可以放在set方法上
    @Value("幼诗")
    public String name ;
}
2.@Controller管理层Controller
@Controller
public class UserController {
}
3.@Repository  dao层
@Repository
public interface UserDao {
}
4.@Service业务层service
@Service
public class UserService {
}

以上1、2、3、4后跟紧的注解功能都是一样,表示将类托管到容器中

获取实体类对象

    @Test
    public void user(){
        ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
//直接通过类名小写来获取就OK,因为没有使用bean标签来托管所以不能指定一个id了获取类
        User user = context.getBean("user", User.class);
        System.out.println(user.name);
    }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/839073.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号