当前位置: 首页 > news >正文

spring boot 注解

spring boot 注解

spring 会把被注解@Controller、@Service、@Repository、@Component 标注的类
纳入Spring容器中进行管理。
第7章会讲解 IoC 容器。

@Controller。
它用于标注控制器层,在MVC 开发模式中代表C(控制器)。
Model View Controller

@Controller 主要用于构建MVC 模式的程序(本书第5章会专门讲解)。

@Service。
它用于声明一个业务处理类(实现非接口类),用于标注服务层,处理业务逻辑。
例如,以下代码就是继承 ArticleService 来实现其方法。

*Description:标注为服务类
*/
@Service
public class ArticleServicelmpl implements ArticleService 
@Autowired
private ArticleRepository articleRepository;
*Description:重写 service接口的实现,实现根据id 查询对象功能
@Override
public Article findArticleByld(iong id){
return articleRepository.findByld(id);}
}

(4)
@Repository。它用于标注数据访问层。
(5)
@Component。

它用于把普通POJO(Plain Ordinary Java Objects,简单的Java对象)实例化到 Spring容器中。当类不属于注解@Controller和@Service等时,就可以使用注解@Component 来标注这个类。它可配合CommandLineRunner 使用,以便在程序启动后执行一些基础任务。
Spring会把被注解@Controller、@Service、@Repository、@Component标注的类纳入Spring容器中进行管理。第7章会讲解IoC容器。
(6)@Configuration。
它用于标注配置类,并且可以由Spring容器自动处理。它作为Bean的载体,用来指示一个类声明、一个或多个@Bean 方法,在运行时为这些 Bean 生成 BeanDefinition 和服务请求。
(7)@Resource.
@Autowired与@Resource 都可以用来装配 Bean,也都可以写在字段上或Setter方法上。
public class AritcleController {
@Resource
private ArticleRepository articleRepository;
Description:新增保存方法
/
@PostMapping(“”)
public String saveArticle(Article model)l
articleRepository.save(model);
return “redirect:/article/”;
/

(8)@Autowired。
它表示被修饰的类需要注入对象。Spring 会扫描所有被@A在loC容器中找到匹配的类进行注入。被@Autowired注解后
标注
再导

1 PathVariable

(2)@PathVariable。用于获取路径中的参数。

3 Bean

(3)@Bean.
它代表产生一个Bean,并交给Spring管理。用于封装数据,一般有Setter、Getter方法、在MVC模型中,对应的是M(模型)。

4 ResponseBody

(4)@ResponseBody。
它的作用是通过转换器将控制器中方法返回的对象转换为指定的格式,然后写入Response象的body区。它常用来返回JSON/XML格式的数据。
使用此注解后,数据直接写入输入流中,不需要进行视图渲染。用法见以下代码:@GetMapping(“/test”)
@ResponseBody
public String test(){
return " test";

http://www.xdnf.cn/news/452071.html

相关文章:

  • 【征稿通知】OCSA 2025投稿享早鸟优惠
  • 如何通过数据集成实现金蝶云星空高效对接
  • Flink CDC—实时数据集成框架
  • [已解决] VS Code / Cursor / Trae 的 PowerShell 终端 conda activate 进不去环境的常见问题
  • JAVA实战开源项目:校园网上店铺系统 (Vue+SpringBoot) 附源码
  • 用 wireshark 解密 SIP over TLS 以及 SRTP 解密
  • libmemcached库api接口讲解三
  • 速来体验丨MaxKB v1.10.7 LTS版本发布,支持接入Qwen3
  • 嵌入式学习笔记DAY20(链表,gdb调试)
  • vue2 头像上传+裁剪组件封装
  • FFplay 音视频同步机制解析:以音频为基准的时间校准与动态帧调整策略
  • 动态稀疏化训练系统设计:从算法到GPU硬件协同优化
  • C语言—再学习(指针)
  • C++(2)
  • 中国古代史7
  • 230. 二叉搜索树中第 K 小的元素
  • day25 python异常处理
  • c#中equal方法与gethashcode方法之间有何关联?
  • 2025五一杭州西湖三天游
  • 大涡模拟实战:从区域尺度到街区尺度的大气环境模拟
  • 【python】UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xb2
  • 一种资源有限单片机处理cJSON数据的方法
  • 编写第一个MCP Client之Hello world
  • Android RTL语言视图适配(保加利亚,阿拉伯语种等)
  • JAVA中的文件操作
  • sqli—labs第六关——双引号报错注入
  • BitMart合约交易体验 BitMart滑点全赔的底层逻辑
  • 朱老师,3518系列,第八季
  • 使用Git+Cron实现BIND的Named域名配置自动化管理!
  • D2203使用手册—高压、小电流LDO产品4.6V~36V、150mA