为了账号安全,请及时绑定邮箱和手机立即绑定
  • 这种方式,会将异常捕获,然后返回的内容就会按照我们想要的方式返回

    过程:

    1. service里面如果验证不通过的话,就直接往外面抛异常

    2. controller直接调用service的方法

      1. 这个时候不需要对service的返回进行判断,因为已经通过抛出异常来解决问题了

    3. 由expection handle来处理这个异常


    查看全部
  • 如果不建异常捕获的包,抛出的内容会很多,我们需要建立捕获异常的方法

    查看全部
  • 抛异常会一层一层往外抛,从service,然后接着抛到controller

    查看全部
  • 异常处理的统一格式,json:code, msg, data

    查看全部
  • @AfterReturn注解,可以在console打印出返回的object及内容(可以像添加getter和setter一下添加toString方法)

    查看全部
  • 获取类方法的方式:

    1. 首先传参加入joinPoint

    2. 然后在输出时使用joinPoint的方法

    查看全部
  • 日志的记录方式,和在string里面进行输出的传参方式

    查看全部
  • 将@Before请求这个路径前的作输出改成实际要做的操作,记录一些信息(http请求内容):

    • url:

      • 注意HttpServletRequest要选javax.servlet.http

    • method

    • ip

    • 类方法

    • 参数

    查看全部
  • 采用记日志的方式打印的好处:能够显示(时间 INFO 进程号 【nio-端口-exec-1】 哪个方法哪个包下打的日志)

    查看全部
  • 实际逻辑代码部分:

    • @After注解:注解括号里面的内容可以和Before注解写得一模一样

      • 这里发现我们会有重复的代码(坏处:1太low,2修改起来会特别麻烦),解决方案:用@Printcut注解单独对相同部分定义一个方法,然后使用这个方法名作为代替放入Before和After注解里面

    • System.out.println的另一种方式,Logger

      • 在类内部声明Logger(org.slf4j: spring自带的日志框架,底层实现使用的是logback)

      • 在方法里面使用logger.info或者logger.error打印


    查看全部
  • 正式逻辑代码:

    1. Http请求到这些api的时候就把这些记录下来:@Before注解表示在方法执行之前就执行这个方法(记得有个小技巧,先写下下面的public void log(){}代码框架,这样才会有上层的Before的内容提示)

    2. 拦截方法时,在方法的参数里面加..表示不管里面什么参数,都会进行拦截

    3. 如果要对所有的方法都进行拦截,就写成controller.*(..)

    查看全部
  • 防止没有登录的用户对api进行调用成功

    (通常方法是在每个api前面进行添加判断,这样每个api都加太累了)

    使用AOP来进行的步骤:

    1. 添加依赖:spring-boot-starter-aop

    2. (往常的做法是要在启动类加一个注解,但是aop不需要加)

    3. 建立处理文件:新建一个包叫aspect,然后在底下建一个java class(不要选aspect)叫HttpAspect,加上注解@Aspect和@Component,然后开始写逻辑代码

    查看全部
  • 构造方法的解决方案来进行控制是否登录的用户才可以访问api的方式行不通:当spring程序运行的时候就会把这些类给实力化了,当一次http请求来的时候不会再执行这个构造方法了,所以这样是行不通的。

    查看全部
  • 事务只会对RuntimeException 进行事务回滚,不会对Exception进行回滚。

    查看全部
  • AOP的例子

    查看全部

举报

0/150
提交
取消
课程须知
没有基础的同学建议先学习前置课程 《2小时学习Spring Boot》 http://www.imooc.com/learn/767, 代码示例请参考 https://git.oschina.net/liaoshixiong/girl
老师告诉你能学到什么?
Spring Boot针对Web方面的相关技巧

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!