Spring注解开发

2022/3/8 23:15:53

本文主要是介绍Spring注解开发,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、配置命名空间

<?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 http://www.springframework.org/schema/context/spring-context.xsd">

    <!--配置组件扫描-->
    <context:component-scan base-package="com.finnlee" ></context:component-scan>
</beans>

  

二、注解(必须配置组件扫描)

@Component:使用在类上用于实例化Bean    等价于  <bean id="userDao" class="com.finnlee.daoImpl.UserDaoImpl" ></bean>

@Autowired :使用在字段上用于根据类型依赖注入  (如果不加@Qualifier)

@Qualifier: 结合@Autowired一起使用用于根据名称进行依赖注入  (按照名称注入)

等价于

<bean id="userService" class="com.finnlee.services.UserServiceImpl">
     <property name="userDao" ref="userDao" ></property>
</bean>

@Resource : 相当于@Autowired+@Qualifier,按照名称进行注入  @Resource(name = "userDao")

@Controller : 使用在web层类上用于实例化Bean  和 @Component 一样

@Service : 使用在service层类上用于实例化Bean 和 @Component 一样

@Repository : 使用在dao层类上用于实例化Bean 和 @Component 一样

@Value : 注入普通属性  可以用来获取容器中的key值

@Scope : 标注Bean的作用范围 

@PostConstruct:使用在方法上标注该方法是Bean的初始化方法  等价于 init-method

@PreDestroy : 使用在方法上标注该方法是Bean的销毁方法 等价于  destroy-method

 

新注解: 

@Configuration : 用于指定当前类是一个 Spring 配置类,当创建容器时会从该类上加载注解 

@ComponentScan : 用于指定 Spring 在初始化容器时要扫描的包。等价于  <context:component-scan base-package="com.itheima"/>

@Bean : 使用在方法上,标注将该方法的返回值存储到 Spring 容器中 

@PropertySource  : 用于加载.properties 文件中的配置

@Import : 用于导入其他配置类



这篇关于Spring注解开发的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程