반응형

spring boot 6

[springBoot] 유효성 검증(feat. @Valid, Validated)

목차 SpringBoot 유효성 검증 😄 클라이언트에서 넘어온 값들에 대한 유효성 검증이 필요한데 if(id != null || id != ""...) 이렇게 if문으로 유효성 체크를 하기 싫어서 자바나 스프링에서 지원하는 좋은게 어디 없나 보다가 구글링을 하고 @Valid와 @Validated를 알게되어서 적용을 해봤고 이를 기록한다. 난 "", " ", null 이렇게 3개만 체크하면 되는 부분이었다. 결론은 스프링부트에선 @Valid와 @Validated 2개를 사용해서 간단한 유효성 체크를 할 수 있음 @Valid 🥰 @Valid는 JSR-303 Bean Validator를 이용해서 유효성을 체크하는 어노테이션임(자바 표준 스펙) 사용법 스프링부트 버전에 따른 의존성 추가 사용하는 스프링 부트 버..

IT/development 2022.11.22

[mybatis] mybatis parameter 여러개 전달

목차예를 들어 String타입의 "status"와 Long타입의 no, 2개의 parameter값을 받아서 테이블 업데이트 하려는 로직이 있을 시 VO째로 넘기기엔 뭔가 비효율적이고 다른사람이 코드를 봤을 때도 직관적이지 않아 보였다.물론 추후에 넘기는 parameter값이 추가될 경우엔 VO째로 넘기는게 확장성이 있겠지만 이 기능은 그런게 아니었다.그래서 구글링 하다가 역시나 방법을 찾아서 미래의 내가 보기위해 기록한다.1. HashMap 이용 😄Controller에서 HashMap에 담아서 넘기는 방법ControllerHashMap에 parameter값 담아서 전달HashMap param = new HashMap();param.put("no", no);param.put("status", status..

IT/development 2022.11.22

[Spring data JPA] 초간단 CRUD

목차 Spring Boot와 JPA 초간단 CRUD REST API 예시(내가 보기 위해 기록) 라이브코딩(시간 상 많이 복붙 함) 😶 h2 database ver: H2 2.1.214 (2022-06-13) build.gradle 😍 plugins { id 'org.springframework.boot' version '2.6.11' id 'io.spring.dependency-management' version '1.0.13.RELEASE' id 'java' } group = 'com.devlsy' version = '0.0.1-SNAPSHOT' sourceCompatibility = '1.8' configurations { compileOnly { extendsFrom annotationProces..

IT/development 2022.11.21

[mybatis] mybatis 배열 저장(feat. foreach)

목차 위와 같이 insert를 1개 이상 하는 로직을 만들게 되었고 미래의 내가 보기 위해 기록한다. 😄 클라이언트에서 배열로 값을 받아서 DB에 저장하는 기능이 필요했다. 참고로 mysql과 Oracle은 문법이 다르다. Oracle은 아직 안해봐서 그건 나중에 알아보겠다. Controller @RequestParam(value = "변수명[]") String[] avengers 이런식으로 받음 @PostMapping("") public ResponseEntity createArray( @RequestParam(value = "avengers[]") String[] avengers ) throws Exception{ Service.insertAvengers(avengers); 생략... Service ..

IT/development 2022.11.21

[spring boot/mybatis] 쿼리 로그 정렬 및 기타(feat. log4jdbc)

목차 mybatis log4j 쿼리 로그 정렬 및 기타 😄 mybatis와 log4j를 처음 사용할 때는 아래처럼 쿼리가 일렬로 나오고 parameter값이 "?"로 표시된다. 짧은 쿼리면 상관 없지만 긴 쿼리의 경우에는 Parameters로 나온 값을 ?에 복붙을 해서 쿼리를 실행해 봐야 된다. 시간도 시간이고 가독성도 안좋아서 개발시에는 여간 불편한게 아니다. 그래서 log4jdbc를 이용해서 쿼리를 보기 좋게 정렬/정리하는 방법을 기록한다. log4jdbc 의존성 추가 🤗 maven 기준 pom.xml에 의존성 추가 org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4.1 1.16 gradle 기준 build.gradle에 의존성 추가 // 여기에 추가 dependen..

IT/development 2022.11.19
반응형