【Spring】使用注解开发

@Component

使用这一类注解,需要在xml配置文件里注册注解支持:

<context:component-scan base-package=“com.kxy”/>
扫描com.kxy包以查找带有@Component注解 的任何类,并将这些类注册为容器内的 Spring bean 定义

@Component:标注当前的类为Spring容器中的Bean,(把普通实体类实例化到spring容器中,相当于配置文件中的< bean id=“” class=“”/ >)

针对于三层架构的三个类,都是把类标注为Spring容器中的Bean。只不过把@Component名字更改了以下:

@controller: controller控制器层:早期的servlet(注入服务)
@service : service服务层(注入dao)
@repository : dao持久层(实现dao访问)

@Value(" ")

对Bean的注入,可以注在属性,setter之上。

@Scope(value=" ")

ScopeValue
singleton单例(默认)
prototype原型(多例)
reqeust同一次请求
session同一个会话级别

singleton 单实例的(单例)(默认)   ----全局有且仅有一个实例
prototype 多实例的(多例)   ---- 每次获取Bean的时候会产生一个新的实例
reqeust   同一次请求 ----request:每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP request内有效
session   同一个会话级别 ---- session:每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP session内有效

@Configuration @Bean

完全不使用 XML 来使用 Spring 容器:

public static void main(String[] args) {
    ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class);
    MyService myService = ctx.getBean(MyService.class);
    myService.doStuff();
}

@Configuration:标注当前类为配置类,这个配置类替代了原本的ApplicationBeans.xml文件
@Bean:标注当前方法的返回值对象,装配到spring容器中。只能用在方法上。代替原本的spring容器中的Bean标签。

现在,你不需要xml文件,仅仅只需要一个config配置类和实体类就能实现依赖注入!

@Configuration
public class Config {
    @Bean//User对象相当于Bean标签的class 方法名getUser相当于Bean标签的id
    public User getUser(){
        return new User();//要注入的对象
    }
    //<Bean id="getUser" class="com.kxy.pojo.User>
    // </Bean>
}
public class User {
    @Value("kxy")
    private String name;

    public String getName() {
        return name;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

❀༊烟花易冷ღ

觉得博客写的不错就打赏一下吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值