spring boot(二):注解大全
序言
spring boot注解
@Autowired
注解的意思就是,当Spring发现@Autowired注解时,将自动在代码上下文中找到和其匹配(默认是类型匹配)的Bean,并自动注入到相应的地方去。
@Bean
相当于XML中的<bean></bean>,放在方法的上面,而不是类,意思是产生一个bean,并交给spring管理。
@Bean是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里。添加的bean的id为方法名
@Configuration public class AppConfig { @Bean public TransferService transferService() { return new TransferServiceImpl(); } }
这个配置就等同于之前在xml里的配置
<beans>
<bean id="transferService" class="com.acme.TransferServiceImpl"/>
</beans>
@Controller
@CookieValue
@Configuration 等同于spring的XML配置文件;使用Java代码可以检查类型安全。
@Component 可配合CommandLineRunner使用,在程序启动后执行一些基础任务。
@ComponentScan 组件扫描,可自动发现和装配一些Bean。
@Component
泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。: 将当前类注册为spring的Bean
@ConfigurationProperties(prefix = "appSettings.key")
@Data
@data注解的作用:不用额外的使用setter、getter方法,配置好以后就可反复使用。
@EnableAutoConfiguration 自动配置。
@GetMapping(value = "profile")
@ImportResource
SpringBoot提倡零配置,即无XML配置,但实际上有些特殊的配置需要使用XML配置。我们可以通过Spring提供的@ImportResource来加载XML配置.
@ImportResource({"classpath:some-context.xml","classpath:another-context.xml"})
@JsonBackReference解决嵌套外链问题。
@ModelAttribute
@MapperScan
@PostMapping(value = "/profile")
@RequestParam,@PathParam,@PathVariable等注解区别
https://blog.csdn.net/u011410529/article/details/66974974
@PathVariable
获取参数。
@RequestParam
@RequestBody
@RequestMapping
a:value,指定请求的地址
b:method 请求方法类型 这个不写的话,自适应:get或者post
c:consumes 请求的提交内容类型
d:produces 指定返回的内容类型 仅当request请求头中的(Accept)类型中包含该指定类型才返回
e: params 指定request中必须包含某些参数值
f:headers 指定request中必须包含指定的header值
@RequestParam
@RequestHeader
@RequestMapping
@RestController注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直 接填入HTTP响应体中,是REST风格的控制器。
@RepositoryRestResourcepublic配合spring-boot-starter-data-rest使用。
@repository
用于标注数据访问组件
@ResponseBody
@Resource
@Service
用于标注业务层组件 : 将当前类注册为spring的Bean
@SpringBootApplication
@SpringBootApplication=@ComponentScan+@Configuration+@EnableAutoConfiguration:约定优于配置
关闭特定的自动配置
通过@SpringBootApplication注解的参数exclude参数实现:
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class})
@SessionAttributes
@Transactional(rollbackFor = TipException.class)
Spring团队建议在具体的类(或类的方法)上使用 @Transactional
注解,而不要使用在类所要实现的任何接口上。
@EnableAsync
异步执行,就是开启多线程的意思
spring注解
@PostConstruct
@Scheduled(cron = "0 0/1 * * * *")

@Scheduled(cron = "0 0/1 * * * *") @PostConstruct public void refreshCache() { }
资料
https://www.cnblogs.com/lori/p/10418271.html
https://www.cnblogs.com/tanwei81/p/6814022.html
http://www.cnblogs.com/youclk/p/8613551.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2017-03-07 Java MyBatis3(2) Mapper代理的开发方式
2016-03-07 [转载]玩转Asp.net MVC 的八个扩展点
2016-03-07 SQLServer处理亿万级别的数据的优化措施