o/s : rocky 8~9
java : 23.0.1
mariadb : 11.4
java 23 버전에서 mariadb 11.4 버전을 사용하고 데이터베이스에 접근해서 데이터를 확인하는 방법
중요사항 oracle jdk는 개인 사용 목적이면 무료이지만 상업적으로 사용시에는 유료이니 참고
(무료를 사용하려면 openjdk를 사용)
해당 내용은 oracke jdk를 사용하는 방식으로 설명
1. mariadb 다운로드 및 데이터베이스 생성은 해당 페이지에서 확인
https://xinet.kr/?p=4336
2. java 23 download 및 설치
https://www.oracle.com/java/technologies/downloads/
3. 해당 파일은 서버에 다운로드 후 압축 및 해제 경로 변경
1 2 3 |
[root@rocky8-web5 ~]# tar xvfz jdk-23_linux-x64_bin.tar.gz [root@rocky8-web5 ~]# mv jdk-23.0.1 /usr/local/java |
4. java home 경로 설정 및 적용
1 2 3 4 5 6 7 |
[root@rocky8-web5 ~]# vi /etc/profile JAVA_HOME=/usr/local/java export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH="." [root@rocky8-web3 ~]# source /etc/profile |
5. java 버전 확인
1 2 3 4 5 6 7 |
[root@rocky8-web5 ~]# java -version java version "23.0.1" 2024-10-15 Java(TM) SE Runtime Environment (build 23.0.1+11-39) Java HotSpot(TM) 64-Bit Server VM (build 23.0.1+11-39, mixed mode, sharing) [root@rocky8-web5 ~]# javac -version javac 23.0.1 |
6.java에서 mariadb를 연결하려면 mariadb java client 파일을 다운로드 하여 lib 폴더에 복사
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
[root@rocky8-web5 ~]# wget https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/3.1.4/mariadb-java-client-3.1.4.jar [root@rocky8-web5 ~]# cp -a mariadb-java-client-3.1.4.jar /usr/local/lib/ [root@rocky8-web5 ~]# ldconfig ### 전역변수 설정 [root@rocky8-web5 ~]# vi /root/.bashrc export CLASSPATH=$CLASSPATH:/usr/local/lib/mariadb-java-client-3.1.4.jar ### 적용 [root@rocky8-web5 ~]# source /root/.bashrc |
7. java mariadb 연결 샘플 파일 생성
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 |
[root@rocky8-web5 ~]# vi MariadbConn1.java import java.sql.*; public class MariadbConn1 { static final String JDBC_DRIVER = "org.mariadb.jdbc.Driver"; static final String DB_URL = "jdbc:mariadb://127.0.0.1:3306/xinet"; static final String USERNAME = "xinet"; static final String PASSWORD = "Qac13@1"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try { Class.forName(JDBC_DRIVER); // MariaDB 드라이버 로드 conn = DriverManager.getConnection(DB_URL, USERNAME, PASSWORD); System.out.println("\n- MariaDB Connection"); stmt = conn.createStatement(); String sql; sql = "SELECT * FROM Users"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { String name = rs.getString("name"); String email = rs.getString("email"); String country = rs.getString("country"); System.out.print("\n** Name : " + name); System.out.print("\n** Email : " + email); System.out.print("\n -> Country: " + country); } rs.close(); stmt.close(); conn.close(); } catch (SQLException se1) { se1.printStackTrace(); } catch (Exception ex) { ex.printStackTrace(); } finally { try { if (stmt != null) stmt.close(); } catch (SQLException se2) { } try { if (conn != null) conn.close(); } catch (SQLException se) { se.printStackTrace(); } } System.out.println("\n\n- MariaDB Connection Close"); } } |
해당 소스 파일을 다운로드 하고 싶다면 https://xinet.kr/data/source/java/MariadbConn1.java.tar.gz
8. javac 실행
1 |
[root@rocky8-web5 ~]# javac MariadbConn1.java |
9. java 확인 정상적으로 실행이 되어 테이블의 내용을 불러온다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
[root@rocky8-web5 ~]# java MariadbConn1 - MariaDB Connection ** Name : Pankaj ** Email : pankaj@apple.com -> Country: India ** Name : David ** Email : david@gmail.com -> Country: USA ** Name : Raman ** Email : raman@google.com -> Country: UK - MariaDB Connection Close |