零碎的java知識點記錄(一)
阿新 • • 發佈:2018-11-07
小知識點
- Map有getOrDefault("1","0");取不到取預設值
- 兩個不同物件,屬性相同進行賦值轉換,使用modelMapper
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
<version>1.1.0</version>
</dependency>
- controller請求中BindingResult bindingResult通過bindingResult.hasErrors()判斷是否報錯,下列模板程式碼可以學習
/** * 新增房源介面 * @param houseForm * @param bindingResult * @return */ @PostMapping("admin/add/house") @ResponseBody public ApiResponse addHouse(@Valid @ModelAttribute("form-house-add") HouseForm houseForm, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return new ApiResponse(HttpStatus.BAD_REQUEST.value(), bindingResult.getAllErrors().get(0).getDefaultMessage(), null); } if (houseForm.getPhotos() == null || houseForm.getCover() == null) { return ApiResponse.ofMessage(HttpStatus.BAD_REQUEST.value(), "必須上傳圖片"); } Map<SupportAddress.Level, SupportAddressDTO> addressMap = addressService.findCityAndRegion(houseForm.getCityEnName(), houseForm.getRegionEnName()); if (addressMap.keySet().size() != 2) { return ApiResponse.ofStatus(ApiResponse.Status.NOT_VALID_PARAM); } ServiceResult<HouseDTO> result = houseService.save(houseForm); if (result.isSuccess()) { return ApiResponse.ofSuccess(result.getResult()); } return ApiResponse.ofSuccess(ApiResponse.Status.NOT_VALID_PARAM); }
@NotNull(message = "大標題不允許為空!") @Size(min = 1, max = 30, message = "標題長度必須在1~30之間") private String title; @NotNull(message = "必須填寫臥室數量") @Min(value = 1, message = "非法的臥室數量") private Integer room; @NotNull(message = "必須選中一個租賃方式") @Min(value = 0) @Max(value = 1) private Integer rentWay; @Size(max = 255) private String description;
- redis管理session配置
@Configuration
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 86400)
public class RedisSessionConfig {
@Bean
public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {
return new StringRedisTemplate(factory);
}
}
<!-- redis session依賴 -->
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
# session會話儲存型別
spring.session.store-type=redis