[JSP강의노트] 10월 1일 우편번호 출력하기
2009. 10. 1. 17:07
package net.jeongsam; public class ZipData { private Integer seq; private String zipCode; private String sido; private String gugun; private String dong; private String bunji; public Integer getSeq() { return seq; } public void setSeq(Integer seq) { this.seq = seq; } public String getZipCode() { return zipCode; } public void setZipCode(String zipCode) { this.zipCode = zipCode; } public String getSido() { return sido; } public void setSido(String sido) { this.sido = sido; } public String getGugun() { return gugun; } public void setGugun(String gugun) { this.gugun = gugun; } public String getDong() { return dong; } public void setDong(String dong) { this.dong = dong; } public String getBunji() { return bunji; } public void setBunji(String bunji) { this.bunji = bunji; } }
package net.jeongsam; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.Properties; public class ZipManager { private final int DEFAULT_ROWS = 10; private Connection getConnection() throws ClassNotFoundException, SQLException, IOException { BufferedReader reader = new BufferedReader(new FileReader("C:\\secret.txt")); Properties prop = new Properties(); prop.load(reader); String url = "jdbc:mysql://127.0.0.1/example"; Class.forName("com.mysql.jdbc.Driver"); return DriverManager.getConnection(url, prop); } public ArrayList<ZipData> getZipList(int page, int rows) throws ClassNotFoundException, SQLException, IOException { Connection conn = null; Statement stmt = null; ResultSet rs = null; ArrayList<ZipData> zipTable = new ArrayList<ZipData>(); int offset = (page - 1) * rows; String sql = "SELECT seq, zipcode, sido, gugun, dong, bunji "; sql += "FROM ziptable "; sql += "LIMIT " + offset + "," + rows; try { conn = getConnection(); stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while (rs.next()) { ZipData zipData = new ZipData(); zipData.setSeq(rs.getInt(1)); zipData.setZipCode(rs.getString(2)); zipData.setSido(rs.getString(3)); zipData.setGugun(rs.getString(4)); zipData.setDong(rs.getString(5)); zipData.setBunji(rs.getString(6)); zipTable.add(zipData); } } finally { if (rs != null) { rs.close(); rs = null; } if (stmt != null) { stmt.close(); stmt = null; } if (conn != null) { conn.close(); conn = null; } } return zipTable; } public ArrayList<ZipData> getZipList(int page) throws ClassNotFoundException, SQLException, IOException { return getZipList(page, DEFAULT_ROWS); } public static void main(String[] args) { ZipManager zipMgr = new ZipManager(); try { java.util.Iterator<ZipData> iZipTable = zipMgr.getZipList(1).iterator(); while (iZipTable.hasNext()) { ZipData zipData = iZipTable.next(); System.out.println(zipData.getSido() + " " + zipData.getGugun() + " " + zipData.getDong() + " " + zipData.getBunji()); } } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <%@page import="net.jeongsam.ZipManager, net.jeongsam.ZipData"%> <%@page import="java.util.List, java.util.Iterator"%> <% ZipManager zipMgr = new ZipManager(); List<ZipData> zipTable = zipMgr.getZipList(1); Iterator<ZipData> iZipTable = zipTable.iterator(); %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"> <title>우편번호 표시</title> </head> <body> <table> <thead> <tr> <th>일련번호</th><th>우편번호</th><th>주소</th> </tr> </thead> <tbody> <% while (iZipTable.hasNext()) { ZipData zipData = iZipTable.next(); %> <tr> <td><%= zipData.getSeq() %></td><td><%= zipData.getZipCode() %></td> <td><%= zipData.getSido() %> <%= zipData.getGugun() %> <%= zipData.getDong() %> <%= zipData.getBunji() %> </td> </tr> <% } %> </tbody> </table> </body> </html>