目录 BaseEnum MyEnum StringToEnumConverterFactory FormatterConfig DTO RestController 参考 BaseEnum package com.src.xxx.constant.enums; public interface BaseEnum<ValueType> { ValueType getValue(); } MyEnum package com.src.xxx.constant.enums; import com.f…
Spring Boot AOP之对请求的参数入参与返回结果进行拦截处理   本文链接:https://blog.csdn.net/puhaiyang/article/details/78146620   spring Aop切面中的@Before @Around等执行顺序与请求参数统一解码 https://www.cnblogs.com/newAndHui/p/11771035.html 对于spring框架来说,最重要的两大特性就是AOP 和IOC. 以前一直都知道有这两个东西,在平时做的项目…
一.项目实例 1.项目结构 2.项目代码 1).ActionController.Java: package com.example.controller; import java.util.Date; import java.util.Map; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.spring…
一,为什么要做参数验证? 永远不要相信我们在后端接收到的数据, 1,防止别人通过接口乱刷服务:有些不怀好意的人或机构会乱刷我们的服务,例如:短信接口, 相信大家可能很多人在工作中遇到过这种情况 2,防止sql注入等行为:如果对数据会行严格的验证,可以过滤掉大量的攻击行为 3,防止客户端出错后的生成数据错误 所以,后端必须进行参数校验, 即使前端已经校验过,因为我们不能保证我们收到的请求都是由我们的前端程序发出 说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblog…
我们在开发spring boot应用程序的时候,往往需要测试某个写好的类,但是在测试的时候发现不太好测试,用Junit等测试框架,总是会报一些问题,大致是找不到配置文件以及无法利用spring创建的对象导致空指针. 所以,我们另辟蹊径,自己写一个controller来测试,话不多说,直接介绍: 上图就是写好的controller类,其中会用到自动装载的三个对象,用这种方式就可以用这些对象了,test函数就是要测试的具体代码,你可以自己写. 然后你可以设置断点,debug该程序,通过浏览器输入:…
        一.接收参数(postman发送) 1.form表单 @RequestParam("name") String name 会把传递过来的Form表单中的name对应到formData方法的name参数上 该注解不能接收json传参 该注解表示name字段是必须入参的,否则会报错 @RequestParam(value = "name", required = false) String name required = false表示必须入参 @Req…
本文主要记录几个注释的使用方法. 1. @Controller : 处理http请求 2. @RequestMapping : 配置URL映射 3. @RestController : 组合注解,spring 4之后新加的注解,相当于@Controller和@ResponseBody配合使用 4. @PathVariable : 获取URL中的数据 5. @RequestParam : 获取请求的参数的值 6. @GetMapping/@PostMapping : 组合注解 使用方法: 1. @…
MockMvc 来自Spring Test,它允许您通过一组方便的builder类向 DispatcherServlet 发送HTTP请求,并对结果作出断言.请注意,@AutoConfigureMockMvc 与@SpringBootTest 需要一起注入一个MockMvc 实例.在使用@SpringBootTest 时候,我们需要创建整个应用程序上下文. 示例代码: import org.junit.Test; import org.junit.runner.RunWith; import o…
单元测试是程序员对代码的自测,一般公司都会严格要求单元测试,这是对自己代码的负责,也是对代码的敬畏. 一般单元测试都是测试Service层,下面我将演示从Controller层进行单元测试. 无参Controller单元测试示例: package com.pingan.bloan.genesis.controller.base; import org.junit.After; import org.junit.Before; import org.junit.runner.RunWith; im…
1.处理request的uri部分的参数:@PathVariable. 2.处理request header部分的参数:@RequestHeader,@CookieValue@RequestHeader 注解,可以把Request请求header部分的值绑定到方法的参数上.@CookieValue 可以把Request header中关于cookie的值绑定到方法的参数上. 3.@RequestParam注解用来接收地址中的参数,参数的格式是http://*****?uid=111111&una…