-
表单验证:@Valid,@Min(value=18, message=“XXX”)
查看全部 -
位置:只要在test下,位置貌似无所谓了
在测试类上加上以下两个注解
@RunWith(SpringRunner.class) 表示的是将要在 测试环境中跑了
@SpringBootTest 表示将启动整个Spring的工程
注入待测试对象
在测试方法上加上org.junit.Test 对应的@Test注解
查看全部 -
sop处理类源码,为什么,我的缩进全都没有了,如果有人看的话,还是复制出去看吧
package com.fx.demo.aspect; import javax.servlet.http.HttpServletRequest; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.After; import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.aspectj.lang.annotation.Pointcut; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import com.alibaba.fastjson.JSON; @Aspect @Component public class HttpAspect { private final static Logger log=LoggerFactory.getLogger(HttpAspect.class); @Pointcut("execution(public * com.fx.demo.controller.Start.*(..))") public void cut1(){} //方法里面的".."表示任何参数 @Before("cut1()") public void doBefor(JoinPoint joinPoint){//方法名无所谓随便起;Joinpoint这个参数非必须,是在获取“类方法”、“类名”、“方法参数”的时候会用到,如果用不到的话就不需要了。 log.info("doBefor方法"); ServletRequestAttributes attributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes(); //注意这里有两个同名的类,选这个javax.servlet.http.HttpServletRequest HttpServletRequest request=attributes.getRequest(); //url 这里有个亮点,info(a,b)方法的前一个参数大括号里面的东西会被后一个参数填充 log.info("url={}",request.getRequestURL()); //method log.info("method={}",request.getMethod()); //ip log.info("ip={}",request.getRemoteAddr()); //类名和类方法 log.info("class_method={}",joinPoint.getSignature().getDeclaringTypeName()+"."+joinPoint.getSignature().getName()); //参数 log.info("args={}",joinPoint.getArgs()); } @After("cut1()") public void doafter(){ log.info("doafter方法"); } @AfterReturning(returning="obj",pointcut="cut1()") public void doAfterReturning(Object obj){ log.info("response={}",JSON.toJSON(obj).toString()); } }
查看全部 -
前端 Vue
查看全部 -
重要的 : 表单验证
AOP 需要深度学习
查看全部 -
service处理逻辑 抛异常
查看全部 -
异常捕获。
查看全部 -
相同格式返回数据
查看全部 -
JoinPoint 获取类方法 参数
查看全部 -
获取具体参数内容
JoinPoint
查看全部 -
@AfterReturning()
日志返回值
查看全部 -
Logger 选择org.slf4j
Spring自带的日志框架+
使用:logger.info("");
查看全部 -
log公用的方法
@Pointcut注解 公用的路径
查看全部 -
AOP第二步 启动类需要加注解 Spirngboot不需要添加
AOP第三步 创建一个处理文件HttpAspect 拦截请求
查看全部 -
AOP第一步 添加依赖 pom.xml Spring-boot-starter-app
查看全部
举报