文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Spring使用注解开发的方法

2023-06-30 15:16

关注

这篇文章主要介绍了Spring使用注解开发的方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Spring使用注解开发的方法文章都会有所收获,下面我们一起来看看吧。

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

Spring使用注解开发的方法

使用注解需要导入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        https://www.springframework.org/schema/beans/spring-beans.xsd        http://www.springframework.org/schema/context        https://www.springframework.org/schema/context/spring-context.xsd">    <!--开启注解的支持-->    <context:annotation-config/></beans>

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

import org.springframework.stereotype.Component;//等价于<bean id="user" class="com.kero.pojo.User"/>@Componentpublic class User {    public String name = "xxx";}

@Value

import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;//等价于<bean id="user" class="com.kero.pojo.User"/>@Componentpublic class User {    @Value("xxx")//等价于<property name="name" value="xxx"/>    public String name;}

或者

import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;//等价于<bean id="user" class="com.kero.pojo.User"/>@Componentpublic class User {      public String name;    @Value("xxx")    public void setName(String name) {        this.name = name;    }}

@Component有几个衍生的注解 我们在Web开发中会按照MVC三层架构分层

&middot;dao[@Repository]

&middot;service[@Service]

&middot;controller[@Controller]

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

Spring使用注解开发的方法

Spring使用注解开发的方法

Spring使用注解开发的方法

注解的作用域@Scope

@Scope 放在类上,默认是单例模式

@Scope(prototype)是原型模式,每次创建的都是一个新的对象

Spring使用注解开发的方法

其作用等价于

Spring使用注解开发的方法

补充:

@Scope("singleton") 或者@Scope 单例模式 下面代码输出结果为true

@Scope("prototype")下面代码输出结果为false

import com.kero.pojo.User;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class MyTest {    public static void main(String[] args) {       ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");        User user = context.getBean("user", User.class);        User user2 = context.getBean("user", User.class);        System.out.println(user==user2);    }}

xml vs 注解

&middot;xml更加万能 适用于任何场合 维护简单方便

&middot;注解 不是自己类使用不聊 维护相对复杂

最佳实践:xml用来管理bean

注解只负责完成属性的注入

我们在使用的过程中 需要注意 使用以下代码

<!--指定要扫描的包 这个包下的注解就会生效->-->    <context:component-scan base-package="com.kero"/>    <!--开启注解的支持-->    <context:annotation-config/>

针对最佳实践的例子

<?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        https://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.kero"/>    <!--开启注解的支持-->    <context:annotation-config/>    <bean id="user" class="com.kero.pojo.User" scope="prototype"/></beans>
import org.springframework.beans.factory.annotation.Value;public class User {    @Value("XXX")    public String name;    public void setName(String name) {        this.name = name;    }}

关于“Spring使用注解开发的方法”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Spring使用注解开发的方法”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯