Springboot 外掛lombok安裝使用及帶cookie的post介面開發
阿新 • • 發佈:2019-01-09
先安裝外掛
配置註解處理器
新增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來驗證介面。