【SpringBoot注解,springboot的注解有哪些注解

【SpringBoot注解public int test() {return testService.test();}}
// 业务层
Service
public interface CaseService {
int test(

公共int 测试() {

返回testService.test()。

}

}

//业务层

@服务

公共接口案例服务{

int 测试();

}

//业务实现层

@Service(值=“testService”)

公共类CaseServiceImpl 实现CaseService {

@覆盖

公共int测试(){

返回1。

}

}

[]( )1.2 一般例外情况

————————————————– ——————

异常场景一:接口没有实现类,因此启动Spring Boot应用时报如下错误:

描述:

com.ui.InterfaceController 中的字段interfaceTest 需要一个“com.ui.InterfaceTest”类型的bean,但未找到。

注入点有如下注释:

– @org.springframework.beans.factory.annotation.Autowired(必需=true)

行动:

考虑在配置中定义“com.ui.InterfaceTest”类型的bean。

进程退出,退出代码为1

从错误信息中可以看出,只需在@Autowired中添加required=false即可。

@RestController

公共类接口控制器{

@Autowired(必需=假)

私有接口测试接口测试;

@RequestMapping(值=\’/test\’, 方法=RequestMethod.GET)

公共int getCaseList() {

返回接口Test.getCount();

}

}

当然项目是可以启动成功的,但是调用这个控制器就报空指针异常。

java.lang.NullPointerException: null

在com.ui.InterfaceController.get(TestServiceImpl.java:23) ~[classes/:na]

在com.ui.InterfaceController.get(TestController.java:18) ~[classes/:na]

在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法) ~[na:1.8.0_60]

在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_60]

异常场景2:一个接口有多个实现类

如果一个接口有多个实现类,则需要特殊处理:

将@Autowired 的必需属性设置为false。这告诉SpringBoot即使对应的bean不匹配也不要报错,并指定要注入的实现类到\\*\\(以及要注入的类名)。 *@Qualifier\\*\\* 相同,但第一个字母小写)。它将如下。

//TestService的第二个实现类

@Service(值=“testService”)

公共类testServiceImplSecond 实现testService {;

@覆盖

公共int测试(){

返回2。

}

}

//将testService插入接口层并指定第二个实现类

@RestController

@RequestMapping(值=“/测试”)

公共类CaseController {

@Autowired(必需=假)

@Qualifier(\’testServiceSecond\’)

私有TestService测试服务;

@RequestMapping(值=\’/autowired\’, 方法=RequestMethod.GET)

公共int 测试() {

返回testService.test()。

}

}

[]( )2 @资源

======================================================================

@Resource 与@Autowired 的效果大致相同,但也有一些区别。

* @Autowired是Spring注解,@Resource是J2EE注解,可以通过导入注解的包名来判断。

\\-@Autowired默认根据byType进行bean匹配,@Resource默认根据byName进行bean匹配。

* Spring 是第三方的,而J2EE 是Java 专有的。因此,我们建议使用@Resource注解来减少代码与Spring之间的耦合。

* @Autowired 作用于构造函数、方法、参数、字段和注解\\_type;@Resource 作用于方法、字段和类型。

一个例子是:

@服务

公立班学校{

@资源(名称=\’老师\’)

私人家教老师。

总结

我们总是仰望大公司的高手,但实际上,高手与新晋程序员相比也只是普通人,如果不付出努力,差距只会越来越大。大。

虽然面试问题肯定会对你以后想做的事情有所帮助,但我们希望你能用它们来总结自己的弱点,提高自己的核心技术竞争力。每一次面试经历都是技术技能的一课,你的面试后回顾总结很棒。

私人家教老师。

总结

我们总是仰望大公司的高手,但实际上,高手与新晋程序员相比也只是普通人,如果不付出努力,差距只会越来越大。大。

虽然面试问题肯定会对你以后想做的事情有所帮助,但我们希望你能用它们来总结自己的弱点,提高自己的核心技术竞争力。每一次面试经历都是技术技能的一课,你的面试后回顾总结很棒。

[外部链接图像正在传输.(img-3lOY79V6-1720083993932)]

以上关于#SpringBoot的相关内容来源网络,仅供参考。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92949.html

(0)
CSDN的头像CSDN
上一篇 2024年7月4日
下一篇 2024年7月4日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注