스프링 3.2.0이 나왔다.
AntPathRequestMatcher h2관련 버그가 해결됨
@Configuration
public class SecurityConfig {
@Bean
SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
return http
.csrf(
csrf -> csrf
.ignoringRequestMatchers("/h2-console/**")
)
.headers(
headers -> headers
.addHeaderWriter(
new XFrameOptionsHeaderWriter(XFrameOptionsHeaderWriter.XFrameOptionsMode.SAMEORIGIN)
)
)
스프링 시큐리티 적용된 상태에서 h2 적용하려면 csrf토큰 관련 코드가 필요하다.
server:
port: 8020
spring:
thymeleaf:
cache: false
h2:
console:
path: /h2-console
datasource:
url: jdbc:h2:mem:sb_dev;MODE=MySQL
driverClassName: org.h2.Driver
username: sa
password:
mvc:
hiddenmethod:
filter:
enabled: true
현재 application.yml
C
S
R
DB
이렇게 계층을 쌓아왔다.
현재 리포지터리만 잘 갈아끼우면 C S 는 건들 필요 없다.
domain
attr환경변수
컴터가 꺼져도
멤버는 멤버테이블
게시물은 게시물테이블
그 외에 짜잘한건 attr에 넣겠다.
ddl-auto:create
엔티티붙은 클래스를 테이블화시켜준다
프로젝트가 껏다 켜지면 디비날리고 다시만들어줌
근데 메모리모드로 h2설정했으면 어차피 그단계에서 디비날라감
dml
@Builder
빌더를 하려면 @AllArgsConsturcotor
엔티티 만들면 무조건 인터페이스 레포지터리 만들고 jpa상속 받아야함
디비와 관련된 서비스는 무조건 트랜잭셔널 어노테이션 붙여야된다.