원본글 링크 : http://gadise.egloos.com/1869919
임시로 테이블 만든 것으로 맞게 수정하여 작성
XML 파일은 Element, Attribute 생성 테스트로 함
XML 생성에 포커스를 맞춰 원본 링크 글의 소스를 최대한 간략 수정하여 테스트 해 봄
-- dom4j.jar 파일이 필요, 검색은 하면 바로 나오므로 생략
-- 자바 beans 파일 작성은 본인 테이블에 맞춰 작성
-- XML 기본출력 잘 됨
package xml;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import bean.xmlBean;
public class CreateXMLDemo {
private xmlBean vo = new xmlBean();
private static String jdbcDriver = "oracle.jdbc.driver.OracleDriver";
private static String jdbcUrl = "jdbc:oracle:thin:@localhost:1521:ORCL";
private static String userName = "아이디";
private static String userPwd = "패스워드";
private static Document createDocument() throws Exception {
Document document = DocumentHelper.createDocument();
Element root = document.addElement("system");
ArrayList<xmlBean> list = getResultList();
for(int i = 0; i < list.size(); i++)
{
Element superNod = root.addElement("ResultSet");
superNod.addAttribute("lang", "kor");
xmlBean vo = list.get(i);
Element element = superNod.addElement("id");
element.addAttribute("contry-ZIP", "USA");
element.addText(vo.getPersonal_id());
element = superNod.addElement("password");
element.addText(vo.getPersonal_pw());
element = superNod.addElement("name");
element.addText(vo.getPersonal_name());
element = superNod.addElement("job");
element.addText(vo.getPersonal_job());
}
return document;
}
public static ArrayList<xmlBean> getResultList()
{
ArrayList<xmlBean> list = new ArrayList<xmlBean>();
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
String sql = "SELECT personal_id, personal_pw, personal_name, personal_job FROM t_table";
try {
Driver driver = (Driver)Class.forName(jdbcDriver).newInstance();
conn = DriverManager.getConnection(jdbcUrl, userName, userPwd);
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
while(rs.next())
{
xmlBean vo = new xmlBean();
vo.setPersonal_id(rs.getString("personal_id"));
vo.setPersonal_pw(rs.getString("personal_pw"));
vo.setPersonal_name(rs.getString("personal_name"));
vo.setPersonal_job(rs.getString("personal_job"));
list.add(vo);
}
} catch (Exception sqle) {
sqle.printStackTrace();
}
return list;
}
public static void main(String[] args) {
Document document;
try {
document = createDocument();
OutputFormat format = new OutputFormat("\t", true);
FileWriter out = new FileWriter("d://sample.xml"); // 저장 원하는 위치
XMLWriter writer = new XMLWriter(out, format);
writer.write(document);
out.close();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
'# STUDY > JAVA' 카테고리의 다른 글
[ JAVA ] FileReader Example (0) | 2012.02.28 |
---|---|
[ JAVA ] ArrayList Example (0) | 2012.02.28 |
[ JAVA ] HashMap Example (0) | 2012.02.28 |
DB Connection (JDBC) (0) | 2012.02.24 |
JAVA/JSP 환경설정 (0) | 2011.02.08 |