springboot教程-@Service详解

本文介绍了@Service注解在Spring框架中的应用,如何声明类并自定义变量名,以及如何在不指定value时使用默认名。通过实例阐述了如何实现接口和服务类,并展示了如何通过名称进行依赖注入。
部署运行你感兴趣的模型镜像

介绍

对于 service 层的类,在类上用 @Service 注解声明

源代码

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Service {
    @AliasFor(
        annotation = Component.class
    )
    String value() default "";
}

使用

只能声明类

value属性

相当于实例化该类的 变量名,如下:

UserSrvImpl userSrv=new UserSrvImpl();

value 属性的值,相当于上面代码的 std ,通过该 名字 进行注入

如果不指定,默认值为 当前类名(首字母小写) ,具体看下面例子

例子

实现IUserService接口

在企业开发中,多使用接口,其实可以不用接口

public interface IUserService {
    public List<User> query();
    public void save(String username, String password);
}

实现UserSrvImpl类

@Service
public class UserSrvImpl implements IUserService {
    public UserSrvImpl(){
        System.out.println("UserSrvImpl构造方法");
    }
    @Override
    public List<User> query() {
        System.out.println("调用UserSrvImpl的query()方法");
        return null;
    }
    public void save(String username,String password){
        System.out.println("调用UserSrvImpl的save()方法,参数:"+username+"-"+password);
    }
}

类名上使用 @Service 注解,没有指定 value 属性,那么默认值为:userSrvImpl ,可通过该名字进行注入

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值