版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30353203/article/details/82226840
先安装插件
配置注解处理器
添加pom文件中依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.14</version>
</dependency>
/**使用注解@Data*/
@Data
public class User {
private String name;
private String age;
private String sex;
}
主要使用getter and setter ToString 这些都不用写,java bean的一个简写,在方法上面加一个注解,@Data
实现post接口
@RestController
@Api(value = "/",description = "这是我的全部post请求")
/**如果在类上的RequestMapping上加了路径,代表下面的所有路径前都要带上这个*/
@RequestMapping("/v1")
public class MyPostMethod {
/**这个变量是用来装我的cookie信息的*/
public static Cookie cookie;
/**用户登录获取到cookies,然后再访问其他接口获取到列表*/
@RequestMapping(value = "/login",method = RequestMethod.POST)
@ApiOperation(value = "登录接口,成功后获取cookie信息",httpMethod = "POST")
/**value里的值对应的是前端的名,可以跟后端的名字不一致,不一致
* 的话,就会起到安全作用,防止猜到数据库里的字段名
* required如果是true是代表必须传
*/
public String login(HttpServletResponse response,
@RequestParam(value = "userName",required = true) String userName,
@RequestParam(value = "password",required = true) String password){
if(userName.equals("xiaoqiang")&& password.equals("123456")){
Cookie cookie = new Cookie("login","true");
response.addCookie(cookie);
return "恭喜您登录成功!";
}
return "您的账号或密码错误";
}
@RequestMapping(value = "/getUserList",method = RequestMethod.POST)
@ApiOperation(value = "获取用户列表",httpMethod = "POST")
public String getUserList(HttpServletRequest request,
@RequestBody User u){
User user;
/**获取cookie*/
Cookie[] cookies = request.getCookies();
/**验证cookies是否合法*/
/**User里面没有写getter setter方法,用lombok插件,和注解@Data,就可以*/
for (Cookie c: cookies){
if(c.getName().equals("login")
&& c.getValue().equals("true")
&&u.getUserName().equals("xiaoqiang")
&&u.getPassword().equals("123456")
){
user = new User();
user.setName("小李");
user.setAge("12");
user.setSex("man");
return user.toString();
}
}
return "参数不合法";
}
}
jmeter,修改jmeter.properties,文件中改为true,CookieManager.save.cookies=true ,在debugsample里可以看到获取的cookie。也可用postman来验证接口。