//////
Search
🗒️

환경변수와 JDBC

날짜
2022/10/17
작성자
황민우
카테고리
회고

DB

보안

DB 호스트 주소와 DB 유저이름, 패스워드 등을 외부에 노출하면 해킹당할 수 있으니 주의하자.

환경변수 사용방법

DB 호스트 주소, DB 유저, 패스워드를 직접 작성한 코드는 깃, 깃허브에 올릴 수 없다.
이때, 코드에 DB 정보를 직접 작성하지 않고 깃에 올릴 수 있는 방법이 있다.
System.env()
Edit Configurations…
Environment variables
환경변수 추가
환경변수 사용
Map<String, String> env = System.env(); String dbHost = env.get("DB_HOST"); String dbUser = env.get("DB_USER"); String dbPW = env.get("DB_PASSWORD");
Java
복사

JDBC

JDBC : Java Database Connectivity
자바와 데이터베이스를 연결해주는 인터페이스이다.

사용방법

DB 드라이버 dependency 추가
build.gradle 파일에 연결할 DB에 맞는 드라이버 dependency를 추가한다.
DB와 연결
Connection conn = DriverManager.getConnection(dbHost, dbUser, dbPW);
Java
복사
DB와 연결에 실패하면 SQLException 을 던져준다.
SQL 실행
PreparedStatement ps = conn.prepareStatement("INSERT INTO seoul(id, address, name) VALUES (?, ?, ?)"); ps.setString(1, id); ps.setString(2, address); ps.setString(3, name); ps.executeUpdate();
Java
복사
sql문 문자열을 전달해준다.
sql문에 변수를 입력하고자 할때 sql문에 ?를 넣고 setType(인덱스, 값) 으로 설정해주면 된다.
추가로 살펴볼 내용
executeUpdate()
executeQuery()
연결 종료
ps.close(); conn.close();
Java
복사
쿼리 실행 후 연결을 종료해야한다.
연결 종료를 하지 않으면 연결이 계속 남아있게 된다.
(JVM이 종료될때 연결이 종료되기는 한다.)