실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 - 인프런 | 강의 실무에 가까운 예제로, 스프링 부트와 JPA를 활용해서 웹 애플리케이션을 설계하고 개발합니다. 이 과정을 통해 스프링 부트와 JPA를 실무에서 어떻게 활용해야 하는지 이해할 수 있습니다., - 강 www.inflearn.com 회원 기능 회원 등록 회원 조회 회원 등록 @Getter @Setter public class MemberForm { @NotEmpty(message = "회원 이름은 필수입니다. ") private String name; private String city; private String street; private String zipcode; } //Controller @PostMappi..
등록, 수정, 삭제, 조회 화면 만들기 게시글 등록 화면 만들기 게시글 등록 화면을 만들기 위해 오픈소스 부트스트랩을 사용하겠다. 부트스트랩, 제이쿼리 등 프론트엔드 라이브러리를 사용할 수 있는 방법은 2가지가 있는데, 하나는 외부 CDN을 사용하는 것이고, 하나는 직접 라이브러리를 받아서 사용하는 것이다. 우리는 외부 CDN을 사용하여 프론트엔드를 구현하겠다. 실무에서는 외부 CDN 방식을 사용하지 않는다. 직접 구현해야지!! 레이아웃 방식을 사용하여 부트스트랩과 제이쿼리를 index.mustache에 추가해야한다. 레이아웃 방식 : 공통 영역을 별도의 파일로 분리하여 필요한 곳에서 가져다 쓰는 방식 해당 부트스트랩과 제이쿼리를 머스테치 화면 어디에서다 필요하므로 공통으로 사용되는 레이아웃 파일을 만들..
서버 템플릿 엔진과 머스테치 소개 이번에는 머스테치(Mustache)를 통해 화면 영역을 개발하는 방법을 배워보자. 템플릿 엔진이란 무엇인가? 웹 개발에 있어 템플릿 엔진이란, 지정된 템플릿 양식과 데이터가 합쳐져 HTML 문서를 출력하는 소프트웨어를 이야기한다. 예전 스프링이나 서블릿을 사용했다면, JSP, Freemaker 등이 떠오를테고 요즘은 리액트, 뷰 등이 떠오를 것이다. 이것들 모두 결과적으로는 지정된 템플릿과 데이터 를 이용하여 HTML을 생성하는 템플릿 엔진이다. 다만 약간의 다른 점이 있는데, 서버 템플릿 엔진 : JSP, Freemaker 클라이언트 템플릿 엔진 : 리액트, 뷰 만약 아래와 같은 코드가 주어진다면 결과는 어떻게 되는 지 생각해보자. $(document).ready(fu..
JPA Auditing으로 생성시간/수정시간 자동화하기 보통 Entity는 해당 데이터의 생성시간과 수정시간을 포함하고 있다. 이런 정보는 추후 유지보수에 있어 굉장히 중요한 정보이기 때문이다. 이렇다 보니 DB에 삽입 및 갱신할 때는 날짜 데이터를 등록/수정하는 코드가 항상 들어가게 된다. //Ex. 생성일 추가 public void savePosts() { ... posts.setCreateDate(new LocalDate()); postsRepository.save(posts); ... } 하지만 이런 코드가 모든 테이블과 서비스 메소드에 구현해야하 한다면 중복이 발생하고 코드가 지저분해진다는 점이 발생하게 된다. 이런 문제를 해결하고자 나타난 것이 JPA Auditing이다. LocalDate 사..
- Total
- Today
- Yesterday
- effectivejava
- 팩토리 메소드 패턴
- 연관관계
- ifPresent
- package-private
- 이펙티브자바
- mustache
- try with resources
- Spring
- 점층적 생성 패턴
- 스프링부트
- 생성자
- java
- JPA
- springboot
- 김영한
- flatMap
- try catch finally
- @Lazy
- 빈 순환 참조
- 정적팩터리메서드
- Effective Java
- 이펙티브 자바
- 인프런
- jdk버전
- 자바8
- java8
- junit
- 복사 팩토리
- 빌더 패턴
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |