1. MySQL 에서 데이터베이스 생성
create database 데이터베이스명 character set utf8 default collate utf8_general_ci;
2. 데이터베이스 사용
use 데이터베이스명;
3. 향상된 for문
- 일반 for문
for(초기값; 조건식; 증감식) {
반복할 코드;
}
for(int i=0; i<10; i++) {
System.out.println(i);
}
- 향상된 for문 1
for(타입 변수명 : 배열명) {
반복할 코드;
}
for(StaffEntity e : list) {
list_dto.add(new ModelMapper().map(e, StaffDTO.class));
}
- 향상된 for문 2 (forEach)
배열명.forEach(변수명 -> 반복할 코드);
list.forEach(e -> list_dto.add(new ModelMapper().map(e, StaffDTO.class)));
4. properties와 yml
- 개요
SpringBoot 를 이용해서 어플리케이션을 만들다 보면 외부에서 특정 값들을 주입받아야 하는 경우가 있다.
예를 들면 AWS의 특정 컴포넌트를 사용하기 위한 secret key가 될 수도 있고 외부 API를 사용하기 위한 API key가 될 수도 있다. 이러한 값들을 소스 코드에 하드 코딩하는 경우 보안에 취약하다.
따라서 이렇게 중요한 값들을 application.properties 또는 application.yml 과 같은 외부 설정값을 관리하는 파일에 적어두고 사용한다.
- 차이
<application.properties>
server.port=9001
server.servlet.context-path=/
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.enabled=true
server.servlet.encoding.force=true
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/item?serverTimezone=Asia/Seoul
spring.datasource.username=tj705
spring.datasource.password=tj705
spring.jpa.hibernate.ddl-auto=update
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
spring.jpa.show-sql=true
<application.yml>
server:
port: 9002
servlet:
context-path: /
encoding:
charset: UTF-8
enabled: true
force: true
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/staff?serverTimezone=Asia/Seoul
username: tj705
password: tj705
jpa:
hibernate:
ddl-auto: update
naming:
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
show-sql: true