Oracle DB에서 Java app에 XMLType 파일을로드했습니다. Java XMLType 파일 수정
public class XMLDoc {
private OraclePreparedStatement stmt;
private ResultSet rset;
private OracleResultSet orset;
private Document xml_column;
private XMLType poxml;
public XMLDoc(Connection con, String Query) throws Exception {
setStmt((OraclePreparedStatement)
con.prepareStatement(Query));
setRset(getStmt().executeQuery());
setOrset((OracleResultSet) rset);
}}
그리고 메인 프로그램에서 내가 xml_column에 데이터베이스 읽기 XML 파일에 연결
: 이제Connection con = DriverManager.getConnection(host, username, password);
tables[5] = (new XMLDoc(con, "SELECT p.PENALITESXML FROM PENALITES p WHERE id_order='"+data.getIdOrder()+"'"));
while(tables[5].getOrset().next()) {
tables[5].setPoxml(XMLType.createXML(tables[5].getOrset().getOPAQUE("PENALITESXML")));
tables[5].setXml_column((Document)tables[5].getPoxml().getDocument());
Element element = tables[5].getXml_column().getDocumentElement();}
, 내가 좋겠 I는 다음과 같습니다 XML 파일에 대한 작업을 처리하는 클래스를 준비 로드 된 XML 문서를 수정하려고하므로 다음을 수행합니다.
tables[5].getXml_column().getElementsByTagName("ISPAID").item(0).getChildNodes().item(0).setNodeValue("Y");
그러나 문서는 업데이트되지 않습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
이 XML 파일의 모습입니다 같은 :
<PENALITES ID_ORDER="50000">
<PENALTY_AMOUNT>100</PENALTY_AMOUNT>
<ISPAID>N</ISPAID>
</PENALITIES>
XML을 변경하고이 변경으로 데이터베이스를 업데이트하겠습니까? 그렇다면 Java를 전혀 사용하지 않는 이유는 데이터베이스의 XML 만 수정하면됩니다. – MT0
XPath 또는 XQuery와 같은 다른 방법이 있지만 DOM을 사용하여 응용 프로그램 내에서 수정해야한다는 것을 알고 있습니다. – monterinio