弹簧引导中有哪些常用的注解?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
<强> @RestController和@RequestMapping注解强>
4.0重要的一个新的改进是@RestController注解,它继承自@ controller注解高祖之前的版本,spring MVC的组件都使用@ controller来标识当前类是一个控制器servlet。使用这个特性,我们可以开发其他服务的时候不需要使用@ controller而专门的@RestController。
,当你实现一个RESTful web服务的时候,响应将一直通过反应身体发送。为了简化开发,spring 4.0提供了一个专门版本的控制器。下面我们来看看@RestController实现的定义:
@Target (value=https://www.yisu.com/zixun/TYPE) @Retention(值=运行时) @Documented @ controller @ResponseBody 公共@ interface RestController @Target (value=类型) @Retention(值=运行时) @Documented @ controller @ResponseBody 公共@ interface RestController
@RequestMapping注解提供路由信息。它告诉春天任何来自“/奥肪兜腍TTP请求都应该被映射到家里方法。@RestController注解告诉春天以字符串的形式渲染结果,并直接返回给调用者。
<强> @EnableAutoConfiguration注解强>
第二个类级别的注解是@EnableAutoConfiguration。这个注解告诉弹簧引导根据添加的jar依赖猜测你想如何配置弹簧。由于spring-boot-starter-web添加了Tomcat和Spring MVC,所以自动将假定你正在开发一个web应用并相应地对弹簧进行设置.Starter酸盐和自动配置:设计自动配置的目的是更好的使用“起动POMs",但这两个概念没有直接的联系。你可以自由地挑选起动酸盐以外的jar依赖,并且弹簧引导将仍旧尽最大努力去自动配置你的应用。
你可以通过将@EnableAutoConfiguration或@SpringBootApplication注解添加到一个@ configuration类上来选择自动配置。
注:你只需要添加一个@EnableAutoConfiguration注解。我们建议你将它添加到主@ configuration类上。
如果发现应用了你不想要的特定自动配置类,你可以使用@EnableAutoConfiguration注解的排除属性来禁用它们。
& lt; pre name=癱ode"类=癹ava"祝辞进口org.springframework.boot.autoconfigure。*; 进口org.springframework.boot.autoconfigure.jdbc。*; 进口org.springframework.context.annotation。*; @ configuration @EnableAutoConfiguration(排除={DataSourceAutoConfiguration.class}) 公开课MyConfiguration { } & lt;以前的名字=癱ode"类=癹ava"祝辞进口org.springframework.boot.autoconfigure。*; 进口org.springframework.boot.autoconfigure.jdbc。*; 进口org.springframework.context.annotation。*; @ configuration @EnableAutoConfiguration(排除={DataSourceAutoConfiguration.class}) 公开课MyConfiguration { } @ configuration
弹簧引导提倡基于Java的配置。尽管你可以使用一个XML源来调用SpringApplication.run(),我们通常建议你使用@ configuration类作为主要源。一般定义主方法的类也是主要@ configuration的一个很好候选。你不需要将所有的@ configuration放进一个单独的类。@ import注解可以用来导入其他配置类。另外,你也可以使用@ComponentScan注解自动收集所有的弹簧组件,包括@ configuration类。
如果你绝对需要使用基于XML的配置,我们建议你仍旧从一个@ configuration类开始。你可以使用附加的@ImportResource注解加载XML配置文件。
@ configuration注解该类,等价与XML中配置豆类;用@ bean标注方法等价于XML中配置bean
@ComponentScan (basePackages=癱om.hyxt" includeFilters={@ComponentScan.Filter (Aspect.class)}) @ComponentScan (basePackages=癱om.hyxt" includeFilters={@ComponentScan.Filter (Aspect.class)}) @SpringBootApplication
很多弹簧引导开发者总是使用@ configuration, @EnableAutoConfiguration和@ComponentScan注解他们的主要类。由于这些注解被如此频繁地一块使用(特别是你遵循以上最佳实践时),弹簧引导提供一个方便的@SpringBootApplication选择。
该@SpringBootApplication注解等价于以默认属性使用@ configuration, @EnableAutoConfiguration和@ComponentScan。
包com.example.myproject; 进口org.springframework.boot.SpringApplication; 进口org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication一样//@ configuration @EnableAutoConfiguration @ComponentScan 公共类应用程序{ 公共静态void main (String [] args) { SpringApplication.run (Application.class, args); } } 包com.example.myproject; 进口org.springframework.boot.SpringApplication; 进口org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication一样//@ configuration @EnableAutoConfiguration @ComponentScan 公共类应用程序{ 公共静态void main (String [] args) { SpringApplication.run (Application.class, args); } }弹簧引导中有哪些常用的注解