码迷,mamicode.com
首页 > 编程语言 > 详细

spring-boot入门之二——web环境

时间:2018-06-30 12:54:18      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:sha   jpg   test   framework   bin   错误   dna   for   环境   

一、@Valid验证

场景:添加部门信息时,增加部门下的人数;满足一定人数可以被成功添加,否则返回NULL

//部门人数
@Min(value=18,message="不满足18个人,不能成立新部门!")
private Integer count;

//get/set 方法

@PostMapping(value="/saveDept")
public  DeptTemp saveDept(@Valid DeptTemp temp,
		//错误信息返回对象
		BindingResult result){
	if (result.hasErrors()) { //如果有错误信息,则打印 并返回
		System.out.println(result.getFieldError().getDefaultMessage());
		return null;
	}
	temp.setdName(temp.getdName());
	temp.setLoc(temp.getLoc());
	temp.setCount(temp.getCount());
	return deptRespository.save(temp);
}

由于,我们处理了验证不同过时的信息,如果验证不通过时会在控制台打印“自定义的验证信息,例如:不满足18个人,不能成立新部门!”

否则的话,此访问路径则会返回“500”错误,运行时异常;

在满足正确的条件下则可以被添加数据库,否则被拒之门外。



二、AOP统一处理日志

AOP是一种编程规范,与语言无关,是一种程序设计思想;

场景:记录下每次访问的请求

第一步:添加依赖

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-aop</artifactId>
</dependency>

第二步:定义Aspect类

@Aspect
@Component //该文件引用到spring 容器里
public class HttpAspect {

@Before("execution(public * com.test.controller.DeptController.getList(..))")
public void log(){
	System.out.println("Aspect:log");
    }
}

该log方法将作用在getList方法上面,并且先于该方法之前打印出日志。

技术分享图片

同样也会有After方法,方法同上。

//Spring自带的日志框架,底层实现是logback 
private final static Logger logger = LoggerFactory.getLogger(HttpAspect.class);

@Pointcut("execution(public * com.test.controller.DeptController.getList(..))")
public void log(){
	
}
	
@Before("log()")
public void doBefore(){
	logger.info("Aspect:before:log");
}
	
@After("log()")
public void doAfter(){
	logger.info("Aspect:after:log");
}





spring-boot入门之二——web环境

标签:sha   jpg   test   framework   bin   错误   dna   for   环境   

原文地址:http://blog.51cto.com/mazongfei/2134465

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!