springboot核心注解

来源于微信公众号------------ Java大讲堂

springboot核心注解

@SpringBootApplication内部注解包含
@SpringBootConfiguration:继承@Configuration,会将当前类内声明的一个或多个以@Bean注解标记的方法的实例纳入到spring容器中,并且实例名就是方法名,
之后调用直接注入该定义的bean即可
@EnableAutoConfiguration自动将@Configuration标注的类进行加载到spring的IOC容器中
@ComponentScan自动扫描并加载符合条件的组件或bean可以通过basePackages扫描指定bean的位置,不扫描默认启动类所在包和他包下来的类下

Controller 相关注解

@Controller 控制器,处理http请求
@RestController = @Controller + @ResponseBody 将方法返回的对象直接在浏览器上展示成json格式
@RequestBody 浏览器传参放在请求体 ,后台接收使用转为对象形式
@RequestMapping 用来写请求地址
@GetMapping 用于将HTTP get请求映射到特定处理程序的方法注解

取请求参数值

@PathVariable:获取url中的数据,用于restful风格的请求地址
@RequestParam:获取请求参数的值,默认参数都是必填的

注入bean相关

@Repository DAO层注解 mybatis的使用@Mapper注解
@Service、@Component可以结合@Scope使用,确定对象bean的模式。默认为单例模式
@Scope中value属性设置:
singleton 表示该bean是单例的。(默认)
prototype 表示该bean是多例的,即每次使用该bean时都会新建一个对象。
request 在一次http请求中,一个bean对应一个实例。
session 在一个httpSession中,一个bean对应一个实例。
@Bean产生一个bean的方法,并且交给Spring容器管理
@Autowired 自动导入,可以实现Bean的自动注入,可以使用在构造函数、方法、方法参数、类字段

导入配置文件

@PropertySource注解用于查找配置文件的配置属性,通常结合@ConfigurationProperties(用于确定属性的前缀注入prefix属性)一起使用
引入单个properties文件:
@PropertySource(value = {“classpath : xxxx/xxx.properties”})

引入多个properties文件:
@PropertySource(value = {“classpath : xxxx/xxx.properties”,“classpath : xxxx.properties”})

@ImportResource导入xml配置文件
引入单个xml配置文件:@ImportSource(“classpath : xxx/xxxx.xml”)

引入多个xml配置文件:@ImportSource(locations={“classpath : xxxx.xml” , “classpath : yyyy.xml”})

取值:使用@Value注解取配置文件中的值
@Value(“${properties中的键}”)
private String xxx;

@Import 导入额外的配置信息,功能类似XML配置的,用来导入配置类,可以导入带有@Configuration注解的配置类
例如:

@SpringBootApplication
@Import({SmsConfig.class})
publicclass DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

事务注解 @Transactional

此类事务注解属于声明书事务,一般用于service层,利用的是AOP原理

全局异常处理

@ControllerAdvice 统一处理异常,注解定义全局异常处理类
@RestControllerAdvice

@ExceptionHandler 注解声明异常处理方法

@ControllerAdvice
public class GlobalExceptionHandler {

	@ExceptionHandler(Exception.class)
	@ResponseBody
	String handleException(){
		return "Exception Deal!";
	}
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值