반응형
이번에는 서블릿을 만들어서 MYSQL에서 읽어온 데이터를 브라우저에서 출력해보도록 하겠습니다.
위의 3번 예제의 코드를 서블릿으로 만들었습니다. 어노테이션(@WebServlet)을 통한 맵핑은 Servlet 3.0 이후부터 가능합니다.
출력할 내용에 한글이 포함되어 있다면, charset을 설정해주지 않으면 한글이 깨져서 나옵니다.
그외 전체 코드는 위의 3번 예제와 거의 동일합니다.
package kr.or.ddit.test;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import kr.or.ddit.utils.db.ConnectionFactory;
@WebServlet("/test01")
public class Test04Servlet extends HttpServlet{
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html; charset=utf-8");
try(
Connection conn = ConnectionFactory.getConnection();
){
String sql = "select * from alba";
Statement statement = conn.createStatement();
ResultSet result = statement.executeQuery(sql);
while(result.next()) {
String al_id = result.getString(1);
String al_name = result.getString(2);
int al_age = result.getInt(3);
String al_zip = result.getString(4);
String al_addr1 = result.getString("al_addr1");
String al_addr2 = result.getString("al_addr2");
String al_hp = result.getString("al_hp");
String gr_code = result.getString("gr_code");
String al_gen = result.getString("al_gen");
String al_mail =result.getString("al_mail");
String al_career = result.getString("al_career");
String al_spec = result.getString("al_spec");
String al_desc = result.getString("al_desc");
String al_img = result.getString("al_img");
PrintWriter out = resp.getWriter();
String resultString = String.format("%s %s %d %s %s %s %s %s %s %s %s %s %s %s",al_id,al_name,al_age,al_zip,al_addr1,al_addr2,al_hp,gr_code,al_gen,al_mail,al_career,al_spec,al_desc,al_img);
out.write(resultString);
out.write("<br>");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
이제 브라우저에서 서블릿으로 맵핑한 주소를 들어가보면 아래와 같이 DB의 데이터들을 잘 받아와 출력하는 것을 확인 할 수 있습니다.
반응형
'Programming > JPA ⁄ Spring' 카테고리의 다른 글
JDBC 와 MYSQL 연동하기 6) MVC 패턴 적용하기 (0) | 2021.04.17 |
---|---|
JDBC 와 MYSQL 연동하기 5) FrontController 패턴 적용하기 (0) | 2021.04.16 |
JDBC 와 MYSQL 연동하기 3) 커넥션 팩토리 패턴 적용하기 (0) | 2021.04.15 |
JDBC 와 MYSQL 연동하기 2) 간단한 쿼리문 실행해보기 (0) | 2021.04.15 |
JDBC 와 MYSQL 연동하기 1) 커넥션 생성 (0) | 2021.04.15 |