[KH 정보교육원 당산] 77일 ( Spring Boot - IntelliJ IDEA / MariaDB)
오늘부터 Spring Boot 하는데 eclipse가 아닌 IntelliJ
포트 충돌이 일어날 경우
resource 폴더 내의 application.properties 파일에 포트 번호를 바꿔주면 된다.
server.port=9090
** 커맨드를 이용하여 포트 번호 확인 및 종료
netstat -ano
=> 현재 사용중인 포트 번호를 볼수 있는 커맨드 명령어
taskkill /f /pid [pid번호]
=> 현재 사용중인 port 강제 종료
ex) taskkil /f /pid 10580
데이터베이스(DataSource) 설정
또한 DB연동의 경우도 application.properties 에 정보를 넣어주면된다.
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.datasource.url=jdbc:mariadb://localhost:3333/bootex
spring.datasource.username=ID
spring.datasource.password=PW
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.show-sql=true
spring.datasource.driver-class-name=접속데이터베이스 드라이버 이름
spring.datasource.url=데이터베이스 접속 주소
MySQL, MaridDB 일 경우 : 데이터베이스 접속 주소/데이터베이스명
오라클일 경우 : 데이터베이스 접속 주소
spring.datasource.username=사용자(접속)계정
spring.datasource.password=계정 접속 비밀번호
Spring Data JPA를 위한 설정
spring.jpa.hibernate.ddl-auto=프로젝트 실행시 자동으로 DDL 을 생성 할 것인지 결정
create : 매번 테이블을 새롭게 생성
update : 변경이 필요한 경우에만 alter 되고, 테이블이 없을 경우에는 create
create-drop : 매번 테이블을 생성하고, 작업 종료 직전 생성된 테이블을 삭제
validate : 테이블에 대한 유효성 검사
spring.jpa.show-sql=true 또는 false
실제 JPA 구현체인 Hibernate가 처리 시에 발생하는 SQL을 보여줄 것인지 여부
spring.jpa.properties.hibernate.format-sql=true 또는 false
실제 JPA 구현체인 Hibernate가 동작하면서 발생하는 SQL을 포맷팅(들여쓰기등..)하여 출력
실행되는 SQL에 대한 가독성을 높일 경우에 설정....
스프링 프로젝트를 생성할때 spring regacy project로 생성했다면
스프링 부트는 spring starter project를 사용하여 프로젝트를 생성해준다.
또한 기존의 스프링은 maven기반으로 라이브러리를 관리했다면 (pom.xml)
이번 스프링 부트에서는 gradle 기반으로 라이브러리를 관리한다. (build.gradle)
MaiaDB를 사용하기 위한 라이브러리 추가
build.gradle의 dependencies에 해당 라이브러리 추가
// https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client 메이븐 레파지토리 사이트 이용
implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.7.0'
'Learn > KH정보교육원' 카테고리의 다른 글
[KH정보교육원 당산] 79일 (Spring Boot - Thymeleaf, BootStrap) (0) | 2021.07.09 |
---|---|
[KH정보교육원 당산] 78일 (Spring Boot - ORM과 JPA) (0) | 2021.07.07 |
[KH정보교육원 당산] 76일( JPA ) (0) | 2021.07.05 |
[KH정보교육원 당산] 75일(AJAX - To-Do-List ) (0) | 2021.07.02 |
[KH정보교육원 당산] 연습문제9 (인터페이스 구현) (0) | 2021.07.01 |