전송하려는파일.transferTo(쓰여질파일)
//multipartfile.transferTo(file)
uuid를 사용하는 이유는 (식별자의) 고유성을 보장하기 위함
컴파일 시 흔하게 작성하는 기능들을 완성해주는 라이브러리
onMethod : setter 메서드 생성시 메서드에 추가할 어노테이션을 지정할 수 있음 //@Setter(onMethod_=@Autowired)
onParam: setter 메서드의 파라미터에 어노테이션을 지정하고싶을 때 사용
@ToString, @EqualsAndHashCode, @Getter/Setter/ @RequiredArgsConstructor 를 결합한 형태
@NonNull이나 FINAL이 붙은 변수들의 생성자만 만든다.
자바에서 DB 프로그래밍을 하기 위해 사용되는 API. DB종류 상관 없음
관계 :: 자바 - JDBC - DB. //커넥터,,?
flow :: JDBC 드라이버 load - DB 연결 - DB에 데이터 읽기/쓰기.. - DB 연결 종료
JDBC 드라이버 : DBMS와 통신을 담당하는 자바 클래스, DBMS 별로 알맞은 드라이버가 필요하다. /*DBMS: Database Management System*/
- mysql: com.mysql.cj.jdbc.Driver
- oracle: oracle.jdbc.driver.OracleDriver
- MSSQL: com.microsoft.sqlserver.jdbc.SQLServerDriver
JDBC url : DBMS와 연결을 위한 식별값
구성 : jdbc:[DBMS]:[데이터베이스식별자]
- mysql: jdbc:mysql://호스트:포트/디비이름?파라미터
- Oracle: jdbc:oracle:thin:@호스트:포트:SID
- mssql: jdbc:sqlserver://호스트:포트;databaseName=디비이름
WAS(웹 컨테이너)가 실행되면서 DB와 미리 연결해놓은 객체들을 pool에 저장해두었다가 클라이언트 요청이 오면 connection을 빌려주고 처리가 끝나면 반납받아서 pool에 다시 저장하는 방식.
여러 명의 사용자를 동싱 처리해야하는 웹 애플리케이션에서 DB연결을 이용할 때 사용
DataSource 라는 인터페이스를 통해 커넥션 풀을 사용할 수 있음
Database Connection Pool: DB와 커넥션을 맺고 있는 객체들을 관리
//스프링부트에서는 히카리cp를 기본으로 제공
SQL 매핑 프레임워크
JDBC 프로그램보다 편리..
Long 대신 long을 쓰는 편이 비용을 줄일 수 있다.
박싱된 기본 타입 대신 기본 타입을 사용하라 - 이펙티브 자바