Java Mysql DBConnection 입니다.
Java

Java Mysql DBConnection 입니다.

728x90

JAVA와 MySQL을 이용한 DB Connection 을 해보도록 하겠습니다. 


Java Project로 생성을 하고 src에 Package 를 임의로 생성하거나 그냥 java 파일을 생성해 주시면 됩니다. 


그리고 나서 이제 코드를 작성해보도록 하겠습니다.

모든 DB Connection은 항상 url, ID, PW 를 가지고 연결을 한다고 생각하시면 됩니다. 

Java로만 작성하는 코드는 간단하기 때문에 바로 작성하도록 하겠습니다. 


저같은 경우에는 TEST라는 이름의 package를 작성하였고 , Json 형식으로 데이터를 뽑기 위해 import에 JSONArray, JSONObject를 

사용하였습니다.


일반 String 형식도 주석으로 적어놨으니 사용하시면 됩니다. 

몇가지 라이브러리가 필요합니다. mysql-connector 라이브러리와 

simple.JSON을 사용하기 위해서는 라이브러리가 필요한데 

링크로 첨부해드리도록 하겠습니다. maven을 사용하면 소스코드 내에서 추가가 가능하지만 일단 

링크에서 다운받아서 사용해주시면 되겠습니다.


json-simple-1.1.jar = http://www.java2s.com/Code/Jar/j/Downloadjsonsimple11jar.htm

mysql-conector = https://mvnrepository.com/artifact/mysql/mysql-connector-java/8.0.13



라이브러리를 추가하는 방법은 프로젝트 우클릭  Properties 클릭



Java Build Path 클릭 



Libaries 에서 우측 메뉴에 있는 Add External Jars 클릭후 라이브러리를 추가해주시면 되겠습니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
package test;
 
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
 
public class test1 {
    public static void main(String[] args) throws UnsupportedEncodingException {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        
        
 
        try {
            // 1. 드라이버 로딩
            Class.forName("com.mysql.cj.jdbc.Driver");
 
            // 2. 연결하기
            String url = "jdbc:mysql://본인 ip:3306/스키마이름";
            conn = DriverManager.getConnection(url, "ID""PW");
 
            stmt = conn.createStatement();
 
            String sql = "QUERY문 작성";
 
            rs = stmt.executeQuery(sql);
            JSONArray arr = new JSONArray();
 
            while (rs.next()) {
 
//            String bloom_idx = rs.getString(1);
//            String devicekey = rs.getString(2);
//            String Authorization = rs.getString(3);
                String bloom_idx = URLEncoder.encode(rs.getString("bloom_idx"), "UTF-8");
                String devicekey = URLEncoder.encode(rs.getString("devicekey"), "UTF-8");
                String Authorization = URLEncoder.encode(rs.getString("Authorization"), "UTF-8");
 
                JSONObject obj = new JSONObject();
                obj.put("bloom_idx", bloom_idx);
                obj.put("devicekey", devicekey);
                obj.put("Authorization", Authorization);
                if (obj != null)
                    arr.add(obj);
 
                System.out.println(bloom_idx + " " + devicekey + " " + Authorization);
            }
            System.out.println(arr);
        } catch (ClassNotFoundException e) {
            System.out.println("드라이버 로딩 실패");
        } catch (SQLException e) {
            System.out.println("에러 " + e);
        } finally {
            try {
                if (conn != null && !conn.isClosed()) {
                    conn.close();
                }
                if (stmt != null && !stmt.isClosed()) {
                    stmt.close();
                }
                if (rs != null && !rs.isClosed()) {
                    rs.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}
 
cs


간단한 소스코드에 대해 설명을 드리겠습니다. 

  // 1. 드라이버 로딩
            Class.forName("com.mysql.cj.jdbc.Driver");


 String url = "jdbc:mysql://본인 ip:3306/스키마이름";
            conn = DriverManager.getConnection(url, "ID""PW");
 
            stmt = conn.createStatement();

Connection 객체를 생성

Statement 는 데이터를 추가, 수정, 삭제를 실행할 객체를 생성합니다.


 String sql = "QUERY문 작성";
 
            rs = stmt.executeQuery(sql);
            JSONArray arr = new JSONArray();

query문 작성후에 

쿼리를 실행하는 stmt.excuteQuery(sql)

JsonArray json 배열을 생성합니다. 



while (rs.next()) {

또한 데이터가 없을 때 까지 데이터를 가져오는 while(rs.next()).


최대한 쉽게 설명드리려고 했는데 잘 보셨는지 모르겠습니다. ㅎㅎ 다음에는 jsp를 이용한 dbconnection에 대해 알아보도록 하겠습니다. 



728x90