※ 스프링 - DB연결
1. JDBC 드라이버 이용해서 연결하기
1) 드라이버 다운로드하기
-> 검색창에 Maven Repository 검색 후 해당 사이트 가기 -> mysql이라고 검색해서 -> MySQL Connector/J 눌러서 8.2.0 누르기
-> 아래 코드 복사해서 -> poom.xml 가서 dependencies 밑에 붙여놓기.
-> poom.xml Maven > 업데이트하기 또는 인텔리제이에서는 오른쪽 상단에 나타나는 파란색 아이콘 누르면 알아서 업데이트 호환이 됩니다.
※ DB 불러오기
public class Ex02_DBConnectionTest {
public static void main(String[] args) throws SQLException {
// 스키마의 이름에 맞춰서 DB 경로 설정 (공용)
String DB_URL ="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC"; // 외우고 이건 기본 호스트가 3306이다.
String DB_USER="bitstudy";
String DB_PASSWORD="tiger";
Connection conn = DriverManager.getConnection(DB_URL,DB_USER,DB_PASSWORD); //DB 들어갈 열쇠 conn
Statement stmt = conn.createStatement(); //할일을 적은 빈 종이 생성
String sql ="select now()"; //할일
ResultSet rs = stmt.executeQuery(sql); //sql 쿼리에 넣고 실행시켜라.
while(rs.next()) {
String currDate = rs.getString(1);
System.out.println(currDate); //서버 시간 갖고온거
}
}
}
1) 스키마의 이름에 맞춰서 DB경로 설정하기 - 보통 외우다기보다는 이 소스코드 저장해 놨다가 사용할 때 불러와서 쓴느게 좋다.
String DB_URL = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC";
-> 3306 : db 설치할 때 사용한 포트번호.
-> test : db 만들었던 스키마 이름
-> useUnicode=true&characterEncoding=utf8 : 인코딩 타입
-> serverTimezone=UTC : 서버 시간은 세계 공용 시간
2) DB 유저이름
String DB_USER = "bitstudy";
3) DB 비밀번호
String DB_PASSWORD = "tiger";
4) DB 들어갈 열쇠 conn
Connection conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
5) 열쇠를 가지고 할 일을 적을 빈 종이 생성
Statement stmt = conn.createStatement();
6) 할 일
String sql ="select now()";
7) 할 일 넣기 - SQL 문 실행시키라는 뜻
ResultSet rs = stmt.executeQuery(sql);
8) 결괏값 리턴하기
int i = 0;
while(rs.next()){
String currDate = rs.getString(i+=1);
System.out.println(currDate);
}
※ 인텔리제이(IntelliJ에 DB 연결하기)
1. 우측에 Database 아이콘 누른다.
2. 왼쪽 상단에 +버튼 누르고 -> 데이터 소스 누르기 -> MySQL 찾아서 누르기
3. mysql에서 만들어놓은 사용자네임(bitstudy), 비밀번호(tiger), 데이터베이스(test) 입력 후
왼쪽 아래에 'Test Connection '누른 후 성공했다는 메시지가 뜨면' ok'누르고 마무리한다.
@성공 메세지
4. 이렇게 mysql과 연결에 성공하면 db정보를 볼 수 있을 것이다.
'국비교육' 카테고리의 다른 글
국비지원 71일차 (스프링-TDD, DAO, DAO 메서드 예외처리) (1) | 2023.11.03 |
---|---|
국비지원 70일차(스프링 - executeQuery, executeUpdate) (0) | 2023.11.02 |
국비지원 68일차(스프링 - cookie,session ) (1) | 2023.10.30 |
국비지원 67일차(스프링 - (GET,POST),(mapping),(forward,redirect) ) (1) | 2023.10.29 |
국비지원 66일차 (스프링 - Servlet ,JSP(MVC관련), DAO,DTO) (0) | 2023.10.26 |