
Thymeleaf 템플릿을 사용하게 되면 날짜 검색필터 같은 곳에 날짜값을 셋팅 해줘야 할때가 있다. temporals를 사용하여 날짜를 셋팅 해본다. #temporals.format(temporal, pattern) temporal 에 날짜 개체를 기입하고 pattern 을 정해주면 된다. 이렇게 하면 오늘의 년월일 만 기입된다. HH:mm:ss 추가해주면 시간 값까지 표기해줄 수 있다. 날짜검색필터 처럼 범위를 미리 셋팅해주고 싶으면 함수들을 이용해주면 된다. ~ 더 많은 옵션은 아래 공식문서를 참고하시길 바랍니다. Tutorial: Using Thymeleaf 1 Introducing Thymeleaf 1.1 What is Thymeleaf? Thymeleaf is a modern server-si..

이벤트 실행시점 설명 @PrePersist 엔티티가 생성될 때 엔티티가 생성될 때마다 실행되어야 하는 로직을 구현하는 데 사용됩니다. 예를 들어, 엔티티가 생성될 때마다 현재 날짜를 값으로 설정하는 로직을 구현할 수 있습니다. @PreUpdate 엔티티가 업데이트 될 때 엔티티가 업데이트될 때마다 실행되어야 하는 로직을 구현하는 데 사용됩니다. 예를 들어, 엔티티가 업데이트될 때마다 변경된 값을 기록하는 로직을 구현할 수 있습니다. 특정값을 변경했을 때 변경일을 등록하는 부분을 작성할일 있었는데 나는 @PrePersist 가 Insert, Update 시에 동일하게 작동한다고 생각하고 코드를 작성했는데 Update 테스트를 아무리해도 적용이 되질 않아... 혹시 엔티티가 생성될 때만 되나하고 Insert..

사내에 querydsl 설정을 아주 잘 하는 동료가 있다면 문제가 없겠지만,저와 같이 홀로 분투하시는 분들을 위해 저도 지금까지 이 방법 저 방법 해오다가깔끔하게 해결된 상태를 공유하고자 합니다. 저도 Q클래스 생성하는 법을 여러 설정법으로 올렸었고,마주하던 여러 오류상황들을 조치했던 글을 서너개 포스팅 했는데...지속적으로 불편한 상황들이 계속 발생 되었고, 주변 동료들에게도 빈번하게 발생하여이 상황을 문제없게 해결하고자 QueryDSL 설정을 다시 건드려보게 되었습니다. 초반에는 설정에 대한 이해가 부족한 상태였던 것 같고 지속적으로 이 부분을 마주하다 보니 깨달음이 온 것 같네요. 이번 포스트는 인텔리제이에서의 방법입니다. 이클립스나 STS 를 사용하시는 분들은 아래 포스트로 진행하..

springboot JPA 프로젝트를 진행중인데, 그 중 일부 쿼리는 mybatis 를 써야해서 적용한 상태. 근데 특이점으로는 xml 파일이 java 소스 폴더(src/main/java)에 포함되어있는 구조. 이와 같은 구조인데, 이 구조가 이클립스 환경에서는 특이점 없이 잘 구동 되나, 인텔리제이 환경에서는 mybatis 쿼리 id를 찾지 못하는 에러에 빠지게 된다. error : ... mapped statements collection does not contain value for {namespace.id} ... 원인은 gradle 빌드한 후 빌드 폴더를 열어보면 어디에도 mybatis 맵퍼 xml 이 존재하지 않는다. 원래 xml 파일은 정적 리소스 파일이라 src/main/resources..

사이트에서 비밀번호 찾기나 특정 정보를 개인에게 알리기 위해 메일을 전송해야 할 때가 있다. 간단하게 메일 발송하는 메소드를 만들어 보자. implementation 'org.springframework.boot:spring-boot-starter-mail' 스프링에 메일관련 라이브러리를 추가해준다. 그리고 메일서버의 정보를 기입해준다. spring: mail: host: mail.sample.co.kr port: 25 username: ENC(***) password: ENC(***) 자체 메일서버가 있으면 그대로 써주면 되고 구글이나 다른 메일서버를 이용하면 된다. 나는 계정정보를 노출안하기 위해 jasypt 로 암호화 시켜 사용한다. 서비스단에 메일 전송 메소드를 작성해서 사용한다. @Service..

querydsl로 테스트 할께 있어서 q클래스를 가져다가 사용하는데 import 가 안되는 현상 발생... 잘 됐던 repository 에서도 인식이 안되고 기존 import 된 라인들이 다 인식 안되길래 프로젝트 트리를 보니 generated 폴더가 일반 폴더처럼 잡혀있는 것을 확인 Project Structure > Project Settings > Modules 에 가서 프로젝트명.main 을 선택하고 generated 폴더를 source 로 잡아준다. generated 폴더가 바뀌었다. 그리고 repository 가서 보니 Q클래스들이 정상적으로 인식되는 것을 확인했다. 이게 보니까 빌드툴을 IntelliJ IDEA 로 쓰면 알아서 잘 잡고 있는데 Gradle 로 쓸때 뭔가 어떤 상황에 의해 풀리..