-
1、自定义Exception要继承RuntimeException,spring只对RuntimeException会做回滚 2、枚举值使用,只提供get方法即可 public enum ResultEnum{ UNKNOW_ERROR(-1,"未知错误"), ERROR_100(100,"100错误"), SUCCESS(0,"成功"); private Integer code; private String msg; }查看全部
-
@ControllerAdvice public class ExceptionHandle{ @ExceptionHandler(value = Exception.class) @ResponseBody public Result handle(Exception e){ return ResultUtil.error(100,e.getMessage()); } } class ResultUtil(){ public static Result success(Object obj){ Result result = new Result(); result.setCode(0); result.setMsg("成功"); result.setData(obj); return result; } public static Result success(){ return success(null); } public static Result error(Integer code,String msg){ Result result = new Result(); result.setCode(code); result.setMsg(msg); return result; } }查看全部
-
AOP 1、引入依赖,spring-boot-starter-aop 2、建class,注释@Aspect @Component(引入Spring容器中) @Aspect @Component public class HttpAspect{ //方法中的..表示,此方法中参数任意,只要拦截到此方法,即进行日志操作 @Before("execution(public * com.**.GirlCOntroller.girlList(..))") public void log(JoinPoint joinPoint){***} //统一切点入口 @Pointcut public void log2("execution(public * com.**.GirlCOntroller.girlList(..))"){} @After("log2()") public doAfter(){***} } 【aop中获取HttpRequest请求数据:】 //url //method //ip //类方法-使用joinPoint对象取 //参数 【aop中获取方法返回内容】 @AfterReturning(pointcut=***) public void do_log(Object obj){ //{}为占位 log.info("return={}",obj.toString()) }查看全部
-
@Valid-检验,结果返回到BindingResult对象中 public void **(@Valid Girl girl,BindingResult bindingResult){ if(bindingResult.hasErrors()){ String errmessage = bindingResult.getFieldError().getDefaultMessage(); } ... } class Girl(){ @Min(value=18,message="***") Integer age; }查看全部
-
打印出返回信息查看全部
-
log查看全部
-
//获取http请求中相关的内容 import org.slf4j.LoggerFactory; @Aspect @Component public class HttpAspect { private final static Logger logger= LoggerFactory.getLogger(HttpAspect.class); @Before("execution(public * com.quanxian.quanxian.controller.UserController.*(..))") public void log(JoinPoint joinPoint) { ServletRequestAttributes attributes=(ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); HttpServletRequest request=attributes.getRequest(); logger.info("url={}",request.getRequestURI()); logger.info("method={}",request.getMethod()); logger.info("ip={}",request.getRemoteAddr()); logger.info("class_method={}",joinPoint.getSignature().getDeclaringTypeName()+"."+joinPoint.getSignature().getName()); logger.info("args={}",joinPoint.getArgs()); } }查看全部
-
从请求中获取细节信息查看全部
-
定义一个公用的方法,这样可以避免重复写路径查看全部
-
首先,需要在pom中引入aop的包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> 然后建立一个类,用 @Aspect @Component 做注解 然后,在类中需要统一处理的方法,并用@before注释一下需要应用切面的包或者类或者方法 @Before("execution(public * com.quanxian.quanxian.controller.UserController.*(..))") public void log() { System.out.println("111111"); }查看全部
-
aop请求过程查看全部
-
controller测试查看全部
-
测试断言查看全部
-
枚举 异常处理查看全部
-
mvn clean package -Dmaven.test.skip=true//是在打包的时候跳过单元测试查看全部
举报
0/150
提交
取消