목록전체 글 (181)
개발자의 오르막
# JPA 구조 JPA 를 이용하면 Java 로 작성된 클래스, 객체들과 데이터베이스 상에 테이블, 레코드들을 자동으로 관리합니다. 특정 데이터베이스의 쿼리를 작성할 필요 없이 Java 코드만으로 데이터를 꺼낼 수 있습니다. JPA는 각 데이터베이스의 쿼리를 Java 로 번역해주는 역할을 하며, 우리는 JPA 코드를 사용함으로써 데이터를 가공할 수 있습니다. # 엔티티(Entity), 엔티티 매니저(EntityManager) 엔티티 : 데이터베이스상에서 데이터로 관리하는 대상을 의미합니다. '상품', '회사', '직원' 과 같은 명사이면서 업무와 관련된 데이터를 엔티티로 규정합니다. 하나의 엔티티 타입을 생성한다라는 의미는 하나의 클래스를 작성한다는 의미입니다. 엔티티매니저 : 엔티티 객체들을 관리하는 ..
# LomBook 어노테이션 정리 @NonNull Null 값이 될 수 없다는 것을 명시합니다. NullPointerException에 대한 대비책이 될 수 있습니다. @Cleanup 자동으로 close() 메소드를 호출하는 역할을 합니다. @Getter/Setter 코드가 컴파일될 때 속성들에 대해서 Getter/Setter 메소드들을 생성합니다 @ToString toString() 메소드를 생성합니다. @EqualsAndHashCode 해당 객체의 equals()와 hashCode() 메소드를 생성합니다. @NoArgsConstructor 파라미터를 받지 않는 생성자를 만들어줌 @RequiredArgsConstructor 지정된 속성들에 대해서만 생성자를 만들어줌 @AllArgsConstructor ..
# 개발환경 - Spring Boot 2.0 , Gradle - SpringBoot Security - ngnix # 문제상황 - Web 시큐러티를 설정할 때 특정 화면은 인증을 요구하는 스프링부트 시큐리티 로직 사용 - 로컬서버, 개발서버에는 문제없이 작동 - 운영서버 (nginx) 에서는 권한 인증을 위한 로그인 페이지 이동할 시 인덱스 화면으로 자동 이동 # 시큐러티 로그인 부분 http.authorizeRequests() .antMatchers("/로그인이 필요한 URL/**").hasAnyRole("해당 롤") .antMatchers("/**").permitAll() .anyRequest().authenticated(); - 위의 '로그인이 필요한 URL' 로 이동 시 원래는 로그인 페이지로 이..
# 스프링이란 무엇인가? 1) 스프링 컨테이너 - 스프링 컨테이너는 스프링 컨테이너, 또는 애플리케이션 컨텍스트라고 불리는 스프링 런타임 엔진을 사용한다. - 스프링 컨테이너는 프로젝트의 설정정보를 참고하여 애플리케이션을 구동한다. 2) 공통 프로그래밍 모델 - IoC/DI, 서비스 추상화, AOP - IoC/DI 라고 불리는 오브젝트의 생명주기와 의존관계에 대한 프로그래밍 모델이다. IoC (Inversion of Control) : 제어의 역전 DI : - 서비스 추상화 : 환경이나 서버, 특정 기술에 종속되지 않고 이식성이 뛰어나게 하는기술 - AOP : 애플리케이션 코드에 산재하여 부가적인 기능을 독립적으로 모듈화하는 프로그래밍 모델 * 컨테이너 : 인스턴스의 생명주기를 관리, 생성된 인스턴스들에..
Spring Boot 에서 application.yml 은 쉽게 말해 애플리케이션을 동작시키기 위한 설정 파일이다. # datasource 설정 spring 의 datasource 를 등록하는 방법이다. 먼저 스프링 부트 build.gradle 의 dependencies 에 runtimeOnly 'mysql:mysql-connector-java' 를 추가해 준 후 application.yml 에 밑의 코드를 등록해준다. spring: datasource: url: jdbc:mysql://localhost:3306/lookbook?serverTimezone=UTC&characterEncoding=UTF-8 username: root password: 1234 driver-class-name: com.mys..
# 이벤트 목록 조회 REST API ( 로그인 안 한 상태 ) - 응답에 보여줘야 할 데이터 1) 이벤트 목록 2) 링크 self profile : 이벤트 목록 조회 API 문서로 링크 get-an-event : 이벤트 하나 조회하는 API 링크 next : 다음 페이지 ( optional ) prev : 이전 페이지 ( optional ) - 문서 스프링 REST Docs https://spring.io/projects/spring-restdocs Spring Level up your Java code and explore what Spring can do for you. spring.io # 이벤트 목록 조회 REST API ( 로그인 한 상태 ) - 응답에 보여줘야 할 데이터 1) 이벤트 목록 2..