Maven project를 사용하면 보다 쉽게 프로젝트 구조를 만들고, 자바 라이브러리 파일을 다운로드 후 프로젝트를 작성 할 수 있다.
아래의 실습방법은 모두 이클립스 기반으로 작성함.
실습1) Java Application 작성
* Application 작성을 위한 Maven project 환경 작성 순서
1) 이클립스의 메뉴 중 File – New – Maven Project를 선택한다.
2) New Maven project 창에서 ‘Create a simple project’ 항목을 선택한다.
3) Artifact Id 는 프로젝트의 이름이 되므로, 원하는 프로젝트명을 주면 된다.
4) maven project 환경이 만들어지면 pom.xml에 원하는 라이브러리 파일 목록을 적어 다운로드 하면 된다.
5) db 연결을 위한 Driver 파일을 다운로드 받기 위해 https://mvnrepository.com/ 사이트를 이용한다. 예를 들어 mariadb client 등의 검색 문자열을 입력해 원하는 라이브러리 파일을 검색한다. 검색결과의 우측에서 ‘show all versions…’를 클릭하면 여러 버전의 mariadb-java-client 파일을 볼 수 있다.
6) 원하는 버전을 선택해 코드를 복사한 후 pom.xml에 붙여넣기 하고 저장하면, maven이 자동으로 파일을 다운로드 한다.
7) 이제 java + MariaDB 연동 Application 프로그래밍을 하면 된다.
package pack;
import java.sql.*;
public class DbTest {
PreparedStatement pstmt; // SQL문 실행, 선처리 방식. 동일한 sql문 반복될 경우 한번 만 작성 후 재활용.
ResultSet rs; // select의 결과에 접근
Connection conn;
public DbTest() {
try {
// Driver 로딩 ----------------------------
// ex1 : MariaDB용 Driver 파일을 이용
Class.forName("org.mariadb.jdbc.Driver");
// ex2 : MySQL용 Driver 파일을 이용
// Class.forName("com.mysql.jdbc.Driver");
// ex3 : Oracle용 Driver 파일을 이용
// Class.forName("oracle.jdbc.driver.OracleDriver");
connect();
} catch (Exception e) {
System.out.println("드라이버 로딩 실패:" + e);
return;
}
}
private void connect() {
try {
// DB 연결
// ex1 : MariaDB
conn = DriverManager.getConnection("jdbc:mariadb://localhost:3306/test", "root", "123");
//conn = DriverManager.getConnection("jdbc:mariadb://127.0.0.1:3306/test", "root", "123"); //localhost와 동일
// ex2 : MySQL
// conn = DriverManager.getConnection("jdbc:mysql://@127.0.0.1:3306/test", "root", "123");
// ex3 : oracle
// conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl", "scott", "tiger");
} catch (Exception e) {
System.out.println("DB 연결 실패:" + e);
return;
}
}
public void processDb() {
try {
pstmt = conn.prepareStatement("select * from sangdata");
rs = pstmt.executeQuery();
while (rs.next()) {
String code = rs.getString("code");
String sang = rs.getString("sang");
String su = rs.getString("su");
String dan = rs.getString("dan");
System.out.println(code + " " + sang + " " + su + " " + dan);
}
} catch (Exception e) {
System.out.println("sql오류:" + e);
} finally {
try {
if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
} catch (Exception e2) {
}
}
}
public static void main(String[] args) {
new DbTest().processDb();
}
}
실습2) Web Project 프로젝트 작성
* Web project 작성을 위한 Maven project 환경 작성 순서
1) 이클립스의 메뉴 중 File – New – Dynamic Web Project를 선택한다.
2) Project name을 준다. 예) web_maven
3) Dynamic Web Project 가 만들어지면, 해당 프로젝트명에서 오른쪽 버튼 – Configure – ‘Convert Maven Project’를 선택한다.
4) Maven web project 환경이 만들어지면 pom.xml에 Servlet, JSP, JSTL 등의 라이브러리를 추가해 주면 자동으로 다운로드 된다.
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.3</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
5) 이제 jsp 파일 등을 만들어 실행하면 된다. 예를 들어 abc.jsp 파일로 구구단 3단을 출력하기로 하자.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<h3>구구단 3단</h3>
<table border="1">
<tr>
<th width="100">수식</th>
<th>결과</th>
</tr>
<c:forEach var="i" begin="1" end="9">
<tr>
<td>3 x ${i}</td>
<td>${3 * i}</td>
</tr>
</c:forEach>
</table>
</body>
</html>