[spring/JPA] @CreatedDate @LastModifiedDate 상속시켜 BaseEntity만들기 이전에 배운 https://gofogo.tistory.com/187 [spring/JPA] @CreatedDate @LastModifiedDate 적용하기 [spring/JPA] @CreatedDate @LastModifiedDate 적용하기 @CreatedDate @LastModifiedDate을 사용하면 등록 업데이트 시간을 자동으로 처리해준다 #Entity @EntityListeners(AuditingEntityListener.cla.. gofogo.tistory.com 내용을 기반으로 상속시켜 편안하게 써보자 #BaseEntity를 만든다 @Getter @MappedSuperclass ..
[spring/JPA] @CreatedDate @LastModifiedDate 적용하기 @CreatedDate @LastModifiedDate을 사용하면 등록 업데이트 시간을 자동으로 처리해준다 #Entity @EntityListeners(AuditingEntityListener.class) -자동으로 처리되게 해주는 클래스 -@CreatedDate @LastModifiedDate -사용할 컬럼에 선택 -@Column -JPA에서 시간 관련 자동화 사용시 컬럼명을 정확히 명시해주는 것이 좋다 @Entity @Data @EntityListeners(AuditingEntityListener.class) public class HistoryContent { @Id @GeneratedValue private L..
[JPA/Spring] JPA 기본셋팅 # build.gradle 추가 //JPA, 스프링 데이터 JPA 추가 implementation 'org.springframework.boot:spring-boot-starter-data-jpa' #application.properties #JPA log logging.level.org.hibernate.SQL=DEBUG logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE #application.yml logging: level: se.engium.api: debug org.hibernate.sql: debug org: hibernate: type: descriptor: sql: org.hibern..
[spring/스프링부트] 드라이버가 ssl secure sockets layer 암호화를 사용하여 sql sever로 보안 연결을 설정할 수 없습니다. 오류: unexpected rethrowing . 발생 시 해결 방법 해결방법은 설정파라미터 jdbc-url 에서 SQL Server TLS 인증서의 유효성을 검사하지 않아도 되는 인증된 서버라는 값(encrypt=true;trustServerCertificate=true)을 설정해주면 된다. # encrypt 및 trustServerCertificate를 설정 # application.yml or application.properties url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=dbname;encrypt..
[SLF4J/LOGBack] 파일로 로그 저장하기 상대경로 log폴더에 로그가 쌓이는걸 볼 수 있다 #applition.yml logging: level: com: example: demo: debug pattern: file: "[%d{HH:mm:ss.SSS}][%-5level][%logger.%method:line%line] - %msg%n" level: file: name: logs/abc.log logback: max-history: 30 file-name-pattern: "logs/abc.%d{yyyy-MM-dd}.%i" #slf4j #logback #file #파일 #.log #spring #스프링
[SLF4J/LOGback] 로그 구조 및 사용방법(기본 셋팅) #println은 실무에서 사용하지 않음 System.out.println() #SLF4J(인터페이스) 로그 라이브러리(logback, log4j, log4j2등)는 다양하게 많이 있는데, SLF4J는 그것을 통합해서 공통적으로 사용가능하게 하는 라이브러리이다, 요즘은 대부분 logback을 쓴다 로그는 라이브서버에서 info 수준, 개발서버에서 debug 수준으로 로그를 진행한다 #로그선언 //기본선언 private Logger log = LoggerFactory.getLogger(getClass()); //Lombok 사용시 @Slf4j #Applition.yml - debug 수준 허용 logging: level: com: exampl..
[spring/스프링] @Bean과 @Configuration, @Component @Autowired에 관하여 -싱글톤을 통하여, 유일한 객체 유지 -클래스에 @Bean 정의하면 스프링 관리 풀에 등록할 수 이다 -클래스에 @Configuration을 정의하면 @Bean을 수동으로 등록하여주며, 싱글톤으로 객체를 유지시켜준다 @ComponentScan을 사용하면 자동으로 @Component등록된 모든 객체를 등록해준다 @Autowired는 자동등록을하게되면 의존성 주입 할 방법이 없기때문에 자동 의존성 주입을 사용하여야한다 @SpringBootApplication에는 @ComponentScan이 들어있기때문에 시작하는 프로젝트에 시작으로 많이 사용된다
[Spring/스프링] 기본 원리 정리(DI/IoC등 포함) 간단히 정리하면, 인터페이스를 통해 규칙을 만들고, 각각의 구현체 안에서 다른 객체 생성을 배제하여야한다, 대신 생성자등을 통하여, 객체생성(의존성)을 주입해줌으로써 두 구현체간에 의존성을 없앨 수 있다. DI(Dependency Injection)의존성 주입 A라는 클래스 내부에 has a 관계로 B클래스를 포함을 시키면 A클래스는 B에 의존적이다 라고 말을 하는데 이 말을 쉽게 풀어 쓰면 A라는 클래스가 작동하기 위해서는 B가 필요하다는 의미가 된다. 평소 Java개발을 하던 사람이라면 내부에서 new연산자를 사용해서 다른 클래스를 생성하는 경우를 많이 볼 수 있었을 것이다. 이때 new연산자를 사용해서 만들어진 객체에 의존한다 라는 표현을..
[spring/java] 스프링 Cors 허용 적용 #Configuration 추가하여 아래내용 적용 @Configuration public class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("*"); } } #spring #cors #allow #error #충돌