新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 关于 XML 的一般性技术讨论,提供 XML入门资料 和 XML教程
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 XML基础 』 → 新人求助!!!XML内容不能和数据库同步! 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 4222 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 新人求助!!!XML内容不能和数据库同步! 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     skinback 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:0
      积分:52
      门派:XML.ORG.CN
      注册:2007/1/31

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给skinback发送一个短消息 把skinback加入好友 查看skinback的个人资料 搜索skinback在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看skinback的博客楼主
    发贴心情 新人求助!!!XML内容不能和数据库同步!

    各位大虾 情况是这样的 我的开发环境是JSP+ORACLR
    情况是这样的 1 JSP连接ORACLE成功 可以进行读写操作
                       2 从JSP页面调用的CLASS文件也可以把数据库的内容放到XML文件里去
                       3 定义了一个XSL文件,页面会按照XSL定义的样式XML的内容读取到页面里
    但是 问题发生了  1 如果我从数据库直接写DELETE语句删除数据后,XML里还是老的数据,这样的话在页面的里的数据就不能更新   2 直接删除存放数据的XML文件 刷新页面从新生成它 还是老的数据 3 新添加数据的话 没有问题 就是在删除的时候出现的问题
    请问各位高手 1 如何解决这样的问题
                       2 为什么没法更新XML文件和ORACLE同步
    我的代码如下:1XSL文件:  <?xml version="1.0" encoding="GB2312"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html" encoding="GB2312"/>
    <xsl:template match="/">
    <html>
    <head>
    <meta http-equiv="Content-Type"
    content="text/html; charset=utf-8" />
    <meta http-equiv="Content-Language" content="zh-cn" />
    <meta name="GENERATOR" content="Microsoft FrontPage 4.0" />
    <meta name="ProgId" content="FrontPage.Editor.Document" />
    <title>信息管理</title>
    <link rel="stylesheet" type="text/css" href="/css/style.css" />
    <script src="/javascript/manager.js" type="text/javascript">
    </script>
    <script src="/javascript/page.js" type="text/javascript">
    </script>
    </head>
    <body rightmargin="0" topmargin="5" leftmargin="0" vlink="#000000">
    <table border="0" align="center" width="90%" cellpadding="0"
    cellspacing="0">
    <tbody>
    <tr>
    <td rowspan="2" width="184"><img height="56"
    src="/images/manager/logo.gif" title="Ajiang Waiting" /></td>
    <td height="38" align="right" valign="top"><br />
    [<a target="_top" href="/index.html">首页</a>] [<a target="_top"
    href="/html/manager/admin.html">退出</a>]</td>
    </tr>
    <tr>
    <td height="15" class="backs">
    <div align="center"><font color="white">欢迎来到管理员页面</font></div>
    </td>
    </tr>
    </tbody>
    </table>

    <br />
    <table border="0" align="center" width="90%" cellpadding="0"
    cellspacing="0">
    <tbody>
    <tr>
    <td colspan="3"><img height="10" width="100%"
    src="/images/manager/photoup.gif" /></td>
    </tr>

    <tr height="30">
    <td width="1" class="backs"></td>
    <td class="backq"><img height="24" width="24" align="absMiddle"
    src="/images/manager/tb_title.gif" /> ∷∷∷
    <font color="#FF0000">
    <xsl:choose>
    <xsl:when test="ROWSET/tablename='admin_pp'">网上竞拍</xsl:when>
    </xsl:choose>
    </font>
    ∷∷∷</td>
    <td width="1" class="backs"></td>
    </tr>
    <tr>
    <td width="1" class="backs"></td>
    <td valign="top" class="backq">
    <table cellpadding="0" cellspacing="0" border="0" width="100%">
    <tr>
    <td>
    <div align="left">
    <xsl:element name="a">
    <xsl:attribute name="href">javascript:tj_xx('<xsl:value-of select="ROWSET/tablename"/>')</xsl:attribute>
    <img border="0"
    height="16" width="33" src="/images/manager/button15.gif" />
    </xsl:element></div>
    </td>
    </tr>
    </table>
    <table cellspacing="2" cellpadding="2" align="center" border="0"
    width="100%">
    <tr>
    <td width="8%" bgcolor="#339900">
    <div align="center"><font color="#FFFFFF">选中</font></div>
    </td>
    <td width="35%" bgcolor="#339900">
    <div align="center"><font color="#FFFFFF">标题
    </font></div>
    </td>
    <td bgcolor="#339900" width="10%">
    <div align="center"><font color="#FFFFFF">是否结束</font></div>
    </td>
    <td bgcolor="#339900" width="15%">
    <div align="center"><font color="#FFFFFF">发布日期</font></div>
    </td>
    <td bgcolor="#339900" width="25%">
    <div align="center"><font color="#FFFFFF">竞拍起价</font></div>
    </td>
    </tr>
    <form name="search_result">
    <xsl:for-each select="ROWSET/ADMIN_PP">

    <tr>
    <td align="center" bgcolor="#D2E68E" width="8%">
    <xsl:element name="input">
         <xsl:attribute name="type">checkbox</xsl:attribute>
         <xsl:attribute name="name">del<xsl:number format="1" value="position()" /></xsl:attribute>
         <xsl:attribute name="value">
         <xsl:value-of select="ID"/>
         </xsl:attribute>
         </xsl:element></td>
         <td bgcolor="#D2E68E" width="35%">
    <font face="webdings" color="#FF0000">4</font>
    <xsl:element name="a">
    <xsl:attribute name="href">javascript:xg_xx('<xsl:value-of select="../tablename"/>','<xsl:value-of select="ID"/>')</xsl:attribute>
    <font color="#0F5252"><xsl:value-of select="TITLE"/></font>
    </xsl:element>
    </td>
    <td bgcolor="#D2E68E" width="16%">
    <div align="center">[<xsl:value-of select="STATE"/>]</div>
    </td><td bgcolor="#D2E68E" width="15%">
    <div align="center"><xsl:value-of select="TIMER"/></div>
    </td><td bgcolor="#D2E68E" width="57%">
    <div align="center"><xsl:value-of select="ADMIN_PRICE"/></div>
    </td>
    </tr>
    </xsl:for-each></form>
    </table>
    <table cellpadding="0" cellspacing="0" border="0" width="100%">
    <tr>
    <td>

    </td>

    <td height="31" align="right">
    <form name="list" method="post">
             <table  border="0">
          <input type="hidden" name="pagenum" />                        
           <xsl:element  name="input">
                               <xsl:attribute name="type">hidden</xsl:attribute>
                            <xsl:attribute name="name">flag</xsl:attribute>
                            <xsl:attribute name="value"><xsl:value-of select="ROWSET/flag"/></xsl:attribute>
                            </xsl:element>
          <xsl:element  name="input">
                               <xsl:attribute name="type">hidden</xsl:attribute>
                            <xsl:attribute name="name">tablename</xsl:attribute>
                            <xsl:attribute name="value"><xsl:value-of select="ROWSET/tablename"/></xsl:attribute>
                            </xsl:element>    
          <tr  style="color: #3d3d1f; font-size: 12.6px">
           <td   height="1" colspan="3">
           <xsl:element name="a">
            <xsl:attribute name="href">javascript:gopage('1','com.manager.news_list')</xsl:attribute>第一页</xsl:element>
            
           <xsl:if test="ROWSET/PAGE/PRE/@flag=1">
            <xsl:element name="a">
             <xsl:attribute name="href">javascript:gopage('<xsl:value-of select="ROWSET/PAGE/PRE"/>','com.manager.news_list')</xsl:attribute>
             上一页</xsl:element>
           </xsl:if>
            
           <xsl:if test="ROWSET/PAGE/NEXT/@flag=1">
            <xsl:element name="a">
             <xsl:attribute name="href">javascript:gopage('<xsl:value-of select="ROWSET/PAGE/NEXT"/>','com.manager.news_list')</xsl:attribute>
             下一页</xsl:element>
           </xsl:if>
            
           <xsl:element name="a">
            <xsl:attribute name="href">javascript:gopage('<xsl:value-of select="ROWSET/PAGE/@all"/>','com.manager.news_list')</xsl:attribute>
            尾页
           </xsl:element>
           </td>
           <td  height="1" colspan="6">
            <p align="center">
             <font color="#000080">页次:</font>
             <font color="red"><xsl:value-of select="ROWSET/PAGE/@no"/></font>
             <font color="#000080">/<xsl:value-of select="ROWSET/PAGE/@all"/>页</font>
             <font color="#000080">   共<b><xsl:value-of select="ROWSET/PAGE/@num"/></b>条记录</font>
            </p>
           </td>
           <td  height="1" colspan="3">
            <p align="right">
             <font color="#000080">转到:</font>
             <input type="text" name="jumpnum" size="4" maxlength="4" class="smallInput" />
             <xsl:element name="input">
              <xsl:attribute name="style">font-size:9pt</xsl:attribute>
              <xsl:attribute name="type">button</xsl:attribute>
              <xsl:attribute name="onclick">javascript:check('<xsl:value-of select="ROWSET/PAGE/@all"/>','com.manager.news_list')</xsl:attribute>
              <xsl:attribute name="value">Goto</xsl:attribute>
             </xsl:element>
            </p>
           </td>
          </tr>
          </table>
          </form>
    </td>
    </tr>
    </table>

    <table cellpadding="0" cellspacing="0" border="0" width="100%">
    <tr>
    <td align="center" width="100%" height="18"><br />
    <xsl:element name="a">
       <xsl:attribute name="href">javascript:publish('<xsl:number  value="count(ROWSET/ADMIN_PP)" />','com.manager.publish','<xsl:value-of select="ROWSET/tablename"/>')</xsl:attribute>
       <img  border="0" src="/images/manager/button12.gif" style="cursor:hand" />
    </xsl:element>   


    <xsl:element name="a">
       <xsl:attribute name="href">javascript:deltg('<xsl:number  value="count(ROWSET/ADMIN_PP)" />','com.manager.news_Del','<xsl:value-of select="ROWSET/tablename"/>')</xsl:attribute>
       <img  border="0" src="/images/manager/button14.gif" style="cursor:hand" />
    </xsl:element>


    </td>
    </tr>
    </table>

    <br />
    </td>
    <td width="1" class="backs"></td>
    </tr>

    <tr>
    <td colspan="3"><img height="10" width="100%"
    src="/images/manager/photodown.gif" /></td>
    </tr>
    </tbody>
    </table>

    <br />
    </body>
    </html>

    </xsl:template>
    </xsl:stylesheet>
    2 JAVA代码:
    package com.manager;

    import java.io.*;
    import java.sql.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import org.w3c.dom.*;
    import com.DataBase.*;
    import com.basic.*;
    import oracle.xml.sql.query.*;
    /**
    *
    * @author  Administrator
    * @version
    */
    public class pp_list extends HttpServlet {

        /** Initializes the servlet.
         */

        /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
         * @param request servlet request
         * @param response servlet response
         */
        protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, java.io.IOException {
             response.setContentType("text/html;charset=gb2312");
             java.io.PrintWriter out = response.getWriter();
                 String   flag = request.getParameter("flag");
                 String   tablename = request.getParameter("tablename");
                 String   pagenum = request.getParameter("pagenum");
                 if (pagenum == null)
                     pagenum = "1";
                 String  pagesize = "20";
                 String  isfb="";
                 if (flag.equals("n"))
                    isfb="未发布";
                 else if (flag.equals("y"))
                     isfb="已发布";

                 String  xmlString="";
                 String  getxsl = ConfigRead.getProperty("xsl_dir");

                 XmlUtil  flowxml = new XmlUtil();
                 String  sqlStr="select *  from table order by  id  desc ";

                 int k = Integer.parseInt(pagenum)*Integer.parseInt(pagesize.trim())  - Integer.parseInt(pagesize.trim());

                 DBConnectionManager connMgr = DBConnectionManager.getInstance();
                 Connection con = connMgr.getConnection("oracle");
                 if (con == null)
                  {
                     out.println("不能获取数据库连接.");
                  }
                

                Document  document = GetDbString(sqlStr,"admin_pp","yyyy-MM-dd",k,Integer.parseInt(pagesize.trim()),con,out);
               // out.println(document);
                Login_Xml  logauth = new Login_Xml();
               try
                {
                     Element root = document.getDocumentElement();
                     Element pageE = document.createElement("PAGE");
                     String  strsql=" select count(*)  from table";
                     Get_Page  getpage = new Get_Page();
                     getpage.get_info(con,strsql,Integer.parseInt(pagenum),Integer.parseInt(pagesize.trim()),pageE,document);
                     root.appendChild(pageE);

                     Element infor = document.createElement("flag");
                     root.appendChild(infor);
                     Text text = document.createTextNode(flag);
                     infor.appendChild(text);

                     infor = document.createElement("tablename");
                     root.appendChild(infor);
                     text = document.createTextNode(tablename);
                     infor.appendChild(text);


                    con.close();
                 }
                 catch (Exception tce)
                  { }
                    logauth.transformDomToXml(document,getxsl+"ppp.xml");
                    logauth.printHtml(out,document,getxsl+"pp.xsl");

                 out.close();
        }

        public Document GetDbString(String  sqlStr,String tagname,String dateformat,int  skip,int  maxrow,Connection con ,PrintWriter out)
        {
            Document doc = null;
            Statement stmt = null;
            try
            {
                    stmt = con.createStatement();
                    ResultSet rset = stmt.executeQuery(sqlStr);
                    OracleXMLQuery qry =  new OracleXMLQuery(con,rset);
                    qry.useUpperCaseTagNames();
                    qry.setEncoding("GBK");
                    qry.setDateFormat(dateformat);
                    qry.setSkipRows(skip);
                    qry.setMaxRows(maxrow);
                    qry.useNullAttributeIndicator(true);
                    qry.setRowTag(tagname.toUpperCase());
                    doc = qry.getXMLDOM();
                    stmt.close();
            }
            catch (SQLException e)
            {
             //e.printStackTrace(out);
            }
          return  doc;
        }


        /** Handles the HTTP <code>GET</code> method.
         * @param request servlet request
         * @param response servlet response
         */
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, java.io.IOException {
            processRequest(request, response);
        }

        /** Handles the HTTP <code>POST</code> method.
         * @param request servlet request
         * @param response servlet response
         */
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, java.io.IOException {
            processRequest(request, response);
        }

        /** Returns a short description of the servlet.
         */
        public String getServletInfo() {
            return "Short description";
        }

    }


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/1/31 17:23:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML基础 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/10/5 5:22:19

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    87.891ms