[Spring Jpa] 3. 게시판 만들기 - H2 Database 연결하기 (InteliJ+Spring Data Jpa+QueryDsl+H2+타임리프+BootStrap5+Gradle)
2022. 8. 1. 17:56
스프링
이전글 보기 https://aamoos.tistory.com/669 [Spring Jpa] 2. 게시판 만들기 - bootstrap5 적용하기 이전글 보기 https://aamoos.tistory.com/668?category=856312 [Spring Jpa] 1. 게시판 만들기 - 프로젝트 설정 개발환경 - InteliJ - Java11 - Jpa - H2 Database - Thymeleaf - BootStrap5 프로젝트 설정 1. ht.. aamoos.tistory.com 목표 - 이번장에서는 H2 데이터베이스를 설치하고, 프로젝트에 설정하는것을 하려고 합니다. 또한 Test 테이블을 만들어 보겠습니다. 설치 https://www.h2database.com/html/main.html H2 Dat..
[Spring Jpa] 2. 게시판 만들기 - bootstrap5 적용하기 (InteliJ+Spring Data Jpa+QueryDsl+H2+타임리프+BootStrap5+Gradle)
2022. 8. 1. 16:11
스프링
이전글 보기 https://aamoos.tistory.com/668 [Spring Jpa] 1. 게시판 만들기 - 프로젝트 설정 개발환경 - InteliJ - Java11 - Jpa - H2 Database - Thymeleaf - BootStrap5 프로젝트 설정 1. https://start.spring.io/ 해당사이트에 접속합니다. 2. project 설정방법 - Project는 Gradle Project를 선택합니.. aamoos.tistory.com 목표 - 이번장에서는 부트스트랩을 적용해보고, 그에 따라 저번장에서 설정한 타임리프 레이아웃 파일들을 변경해보는것이 목표입니다. bootstrap css, js 다운 받기 https://getbootstrap.com/ Bootstrap The mo..
[Spring Jpa] 1. 게시판 만들기 - 프로젝트 설정 (InteliJ+Spring Data Jpa+QueryDsl+H2+타임리프+BootStrap5+Gradle)
2022. 8. 1. 15:39
스프링
목표 - 이번장에서는 프로젝트 설정, 타임리프 layout 설정, controller를 생성해보는것이 목표입니다. 개발환경 - InteliJ - Java11 - Spring Data Jpa - QueryDsl - H2 Database - Thymeleaf - BootStrap5 프로젝트 설정 1. https://start.spring.io/ 해당사이트에 접속합니다. 2. project 설정방법 - Project는 Gradle Project를 선택합니다. - Language는 Java를 선택합니다. - Spring Boot version은 SNAPSHOT과 M4가 안붙은 버전중에 가장 높은 버전을 선택합니다. (지금 기준은 2.7.2 버전이라 선택하였습니다.) - Group은 jpa, Artifact는 b..
[Spring] 서버 시작시 invalid source release: 11 오류 대처법
2022. 8. 1. 13:08
스프링
서버 시작시 invalid source release: 11 오류 대처법 서버 시작시 해당 오류가 나는 경우 컴퓨터에 jdk11이 설정이 안되있는경우입니다. File - Project Structure을 클릭합니다. corretto-11을 선택후 apply ok를 클릭합니다. File - Settings에 들어갑니다. Gradle Jvm을 corretto-11로 설정후 apply ok를 클릭합니다. invalid source release : 11 오류가 없어진것을 확인할수 있습니다.
[JPA] 변경감지 기능, merge
2022. 7. 20. 22:31
스프링
JPA 준영속 엔티티를 수정할때 방법 JPA에서는 업데이트를 진행할때 2가지 방법이 있습니다. 1. 변경감지 기능 2. merge 변경감지 기능이란? - id를 기반으로 실제 DB에 있는 영속 상태의 엔티티 findItem을 조회한후 변경하고자 하는 필드만 지정해서 set을 해주면, 따로 persist를 할필요 없이 jpa에서 변경사항을 찾아서 flush를 해줍니다. 따라서 알아서 db에 변경하고자 하는값이 업데이트가 됩니다. @Transactional public Item updateItem(Long itemId, Book param){ Item findItem = itemRepository.findOne(itemId); findItem.setPrice(param.getPrice()); findItem..
[Spring] InteliJ 주석 템플릿 설정
2022. 7. 20. 16:30
스프링
Live Templates 설정 1. File - Settings - Live Templates 2. 플러스 버튼 - Template Group 클릭 3. Templates의 group 이름을 지정합니다. 4. 이름을 지정하면 목록에 해당 화면처럼 뜨는데 (저는 미리 만들었습니다.) 5. remark를 누른상태에서 Live Template을 클릭합니다. 클래스주석 change 클릭시 Comment, Declaration 체크 Edit Variables 클래스 주석 Template Text /** * @package : $package$ * @name : $class$ * @date : $date$ $time$ * @author : $user$ * @Description: **/ 메소드 주석도 클래스 주석..
[Spring] Intelij Gradle 설정
2022. 7. 18. 09:51
스프링
- 최근 InteliJ 버전에서는 Gradle로 실행을 하는것이 기본설정으로 되어있는데 이 설정으로 하면 속도가 느립니다. 다음과 같이 설정하면 자바로 실행하게 되어서 실행속도가 더 빨라집니다. File - Settings - Gradle 검색후 Gradle -> InteliJ Idea로 변경
[JPA] 매핑 어노테이션 정리
2022. 6. 20. 23:47
스프링
종류 어노테이션 설명 @Column 컬럼 매핑 @Temporal 날짜 타입 매핑 @Enumerated enum 타입 매핑 @Lob BLOB, CLOB 매핑 @Transient DB랑 관련없이 메모리에서만 계산하고 싶을경우에 생성 @Column name - name : 필드와 매핑할 테이블의 컬럼 이름 insertable, updateable - insertable : 등록여부 - updateable : 변경여부 -> 기본값은 true, db에 insert update 강제적으로하면 실행이 되지만, false로 지정할경우 해당 컬럼은 어플리케이션에서 insert, update 실행 x nullable -> not null 지정과 동일 unique -> unique 제약조건 지정, 잘안씀, id가 랜덤으로 ..
[JPA] 데이터베이스 스키마 자동 생성 - 속성
2022. 6. 20. 23:16
스프링
옵션 종류 옵션 설명 create 기존 테이블 삭제 후 다시 생성 create-drop create와 같음, 종료 시점에 테이블 drop update 변경분만 반영(운영 db 사용 x) -> 추가만됨, 지우는건 x validate 엔티티와 테이블이 매핑 되었는지 확인 none 사용 x 데이터베이스 스키마 자동 생성 - 주의 - 운영 장비에는 절대 create, create-drop, update 사용 x - 개발 초기 단계는 create 또는 update - 테스트 서버는 update 또는 validate - 스테이징과 운영 서버는 validate 또는 none
[Spring] jsoup 라이브러리를 이용하여 크롤링, jxls 라이브러리를 이용하여 크롤링한 데이터를 엑셀 파일로 생성하기
2022. 2. 25. 17:20
스프링
해당 터미널 정보 안내 사이트에서 서울특별시 ~ 제주도 지역의 리스트를 크롤링해서 엑셀로 뽑는것을 해보겠습니다. 터미널 정보 > 터미널 안내 (bustago.or.kr) 터미널 정보 > 터미널 안내 www.bustago.or.kr 프로젝트 구조 MakeExcel.java package com.crawlling.common; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.Map; import javax.servlet.http.HttpServletRequ..