<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>华少少华</title>
    <description></description>
    <link>http://huashaozhawei.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
      <item>
        <title>oracle 数列，触发器（自动 ID 加1）</title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149472" style="color:red;">http://huashaozhawei.javaeye.com/blog/149472</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java">Create Sequence Sequence_Name //建序列
Increment By 1   //增加为1
Start With 1     //开始为1
Maxvalue 99999999 //最大
cache 20

Create Trigger Trigger_Name //创建触发器
Before Insert On Table_Name //条件
For Each Row                //
Begin
 select Sequence_Name.nextval into :new.ID from dual;  //ID加1
end;</pre>
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149472#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 16:43:26 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149472</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149472</guid>
      </item>
      <item>
        <title>分页 （利用 数据库 存储过程 rownum）</title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149470" style="color:red;">http://huashaozhawei.javaeye.com/blog/149470</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java">/***************************************************************************
     * 获取分页的全部信息
     */
    public List getAllI(int UserID, int nPageSize,int nPageNum)
    {
        ArrayList list = new ArrayList();
        String sql = "select ID,to_Char(AddDate,'yyyy-mm-dd') as sDate, rowNum as rn                            from  tData_Inquire " + "where  State = 0 ";           
        sSQL=sql;
        
        sql="select * from ("+sql+") temp where temp.rn>"+(nPageSize*(nPageNum-1))
                            +" and temp.rn&lt;="+(nPageSize*(nPageNum));
        try
        {            
            openDB();
            rs = st.executeQuery(sql);
            while (rs.next())
            {                    
                InquireAttr attr = new InquireAttr();
                attr.setNID(rs.getInt("ID"));              
                。。。。
                list.add(attr);
            }
        }
        catch (SQLException e)
        {
            。。。。
        }
        finally
        {
            closeDB();
        }
        return list;
    }
    

 /******************************
     * 分页 得到数据个数
     */
    public int getPageInfo(){
        sql="select count(*) from ("+sSQL+")";
        int nRecordCount = bean.changeInt(getOneValue(sql));

        return nRecordCount;
    }

                        
 &lt;%
                         int nRecordCount = inquireBean.getPageInfo();
                         int nPageCount = (nRecordCount+nPageSize-1)/nPageSize;
  %>
                              共 &lt;%=nRecordCount%> 条记录   
&lt;%                            if(nRecordCount>0){ %>
                             &lt;%=nPageNum%>/&lt;%=nPageCount%>
                            &lt;a href="Inquire.jsp?pageNum=1">首页&lt;/a>
&lt;%                            if(nPageNum>1){%>
                            &lt;a href="Inquire.jsp?pageNum=&lt;%=nPageNum-1%>">上一页&lt;/a>
&lt;%    
                            } 
%>
&lt;%                            if(nPageNum&lt;nPageCount){%>
                            &lt;a href="Inquire.jsp?pageNum=&lt;%=nPageNum+1%>">下一页&lt;/a>
&lt;%    
                            }
 %></pre>
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149470#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 16:40:40 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149470</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149470</guid>
      </item>
      <item>
        <title>下拉菜单（ 全国省份 ）</title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149468" style="color:red;">http://huashaozhawei.javaeye.com/blog/149468</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java">&lt;script language="javascript">
 var arrPro=new Array("北京","上海","天津"); 
 function setPro(sValue){
  var obj=document.getElementById("selProvince");
  if(arrPro.length>0){
   var nID=0;
   for(var i=0;i&lt;arrPro.length;i++){
    var oOption=document.createElement("OPTION");
    oOption.value=arrPro[i];
    oOption.text=arrPro[i];
    if(sValue==arrPro[i]){
     nID=i;
    }
    obj.options.add(oOption);
   }
   obj.selectedIndex=nID+1;
  } 
 }
&lt;/script></pre>  <br />  &lt;body onload="<span style="color: darkred">setPro('上海')"  </span>><br />    This is my HTML page. &lt;br><br />    &lt;table><br />    &lt;tr><br />     &lt;td><br />     &lt;select name="selProvince" id="selProvince"><br />        &lt;option value="" >--请选择--&lt;/option><br />         &lt;/select><br />     &lt;/td>                      <br />    &lt;/tr>  <br />   &lt;/table><br />  &lt;/body>
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149468#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 16:37:41 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149468</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149468</guid>
      </item>
      <item>
        <title>全选（checkbox）</title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149467" style="color:red;">http://huashaozhawei.javaeye.com/blog/149467</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java">function checkAll(){
        var objCheck=document.getElementsByName("chk");
        var obj=document.getElementById("chkAll");
        for(var i=0;i&lt;objCheck.length;i++){
            if(obj.checked){
                objCheck[i].checked=true;
            }else{
                objCheck[i].checked=false;
            }
        }
    }</pre><br /><br />//chk 是多个checkbox，chkAll一个checkbox。点中chkAll就调用checkAll（）
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149467#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 16:35:48 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149467</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149467</guid>
      </item>
      <item>
        <title>MD5加密 </title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149466" style="color:red;">http://huashaozhawei.javaeye.com/blog/149466</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <a href="http://h50237.www5.hp.com/iPortal/Template/Publication/Common/OneColumnWithLogo.aspx?PublicationID=71314e53-cc92-4c44-ac50-a7534a2d7ed6" target="_blank">http://h50237.www5.hp.com/iPortal/Template/Publication/Common/OneColumnWithLogo.aspx?PublicationID=71314e53-cc92-4c44-ac50-a7534a2d7ed6</a><br /><br /><br /><pre name="code" class="java">MD5 md5=new MD5();
md5.getMD5ofStr(。。);</pre>
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149466#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 16:32:30 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149466</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149466</guid>
      </item>
      <item>
        <title>SmartUpload组件 上传文件 </title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149455" style="color:red;">http://huashaozhawei.javaeye.com/blog/149455</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java">SmartUpload upLoad = new SmartUpload();   //SmartUpload组件
  try
  {  
   upLoad.initialize(getServlet().getServletConfig(),request,response);
   upLoad.upload();  or upLoad.upload(“。。。”);  
  }
  catch (Exception e1)
  {
   // TODO Auto-generated catch block
   e1.printStackTrace();
  } 
  Request upLoadRequest = upLoad.getRequest();

String ext = upLoad.getFiles().getFile(0).getFileExt() ;  //得到后缀
String s = 地址+文件名；
upLoad.getFiles().getFile(0).saveAs(s) ; </pre><br />乱码问题：<br />String  value  =  new  String(m_binArray,  m_startData,  (m_endData  -  m_startData)  +  1);  <br />这是smartupload  处理其他数据的时候使用的方法。  <br />string  如果没有encode  的情况下使用的是系统默认的。  <br />可能需要你重新编译这部分  <br />String  value  =  new  String(m_binArray,  m_startData,  (m_endData  -  m_startData)  +  1<span style="color: red">,"UTF-8"</span>);
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149455#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 16:21:01 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149455</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149455</guid>
      </item>
      <item>
        <title>窗口的弹出 window.open showModalDialog</title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149453" style="color:red;">http://huashaozhawei.javaeye.com/blog/149453</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          父页面：<br /><pre name="code" class="java">function setChannel(){ 
  var sID=document.getElementById("txtSID").value;
  

  if(navigator.appName=="Netscape"){
   window.open("vip_w.jsp?sID="+sID,"","top=50,left=300,modal=yes,width=500,height=600,resizable=no,scrollbars=yes");
  }
    else{
   var sReturnValue=showModalDialog("vip_w.jsp?sID="+sID,"","dialogTop:50px;dialogLeft:300px;dialogWidth:500px;dialogHeight:600px");
   
   }
  }
 </pre><br /><br /><br /><br /><br />跳出的页面<br /><br />   <pre name="code" class="java">  var sOldUrl="";
     if(navigator.appName=="Netscape"){
	sOldUrl=window.opener.location;
      }


function setValue(){
     if(navigator.appName=="Netscape"){       
            var slocation=window.opener.location;
			if(slocation==sOldUrl){
                window.opener.document.getElementById("txtSID").value=sChannleValue;
            }
            top.close();
        }else{
            window.returnValue=sChannleValue;
            window.close();
        }
    }
}
    function closeWindow(){
        if(navigator.appName=="Netscape"){
            top.close();
        }else{
            window.close();
        }
    }</pre>
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149453#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 16:17:43 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149453</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149453</guid>
      </item>
      <item>
        <title>正则表达式（添如的 必须是 数字） </title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/149444" style="color:red;">http://huashaozhawei.javaeye.com/blog/149444</a>&nbsp;
          发表时间: 2007年12月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java">public boolean isNumeric(String s)
    {
        Pattern pattern = Pattern.compile("[0-9]*");
        Matcher matcher = pattern.matcher(s);
        return matcher.matches();
    } 


function isNumeric(value){
    	var returnValue = true;
		var re =  new RegExp("^([0-9]+)$");
		if(value.search(re) == -1)
		{
	   	returnValue=false;
		}
		return returnValue;
	}</pre>
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/149444#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Dec 2007 15:45:00 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/149444</link>
        <guid>http://huashaozhawei.javaeye.com/blog/149444</guid>
      </item>
      <item>
        <title>存储过程 分页</title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/147774" style="color:red;">http://huashaozhawei.javaeye.com/blog/147774</a>&nbsp;
          发表时间: 2007年12月12日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <pre name="code" class="java">CREATE OR REPLACE PACKAGE CURSPKG AS
 TYPE refCursorType IS REF CURSOR;
  procedure sp_Page(p_PageSize       int, --每页记录数
                    p_PageNo         int, --当前页码,从 1 开始
                    p_SqlSelect      varchar2, --查询语句,含排序部分
                    p_SqlCount       varchar2, --获取记录总数的查询语句
                    p_OutRecordCount out int, --返回总记录数
                    p_OutCursor      out refCursorType);
END;</pre><br /><br /><pre name="code" class="java">create or replace package body CURSPKG is

  procedure sp_Page(p_PageSize       int, --每页记录数
                    p_PageNo         int, --当前页码,从 1 开始
                    p_SqlSelect      varchar2, --查询语句,含排序部分
                    p_SqlCount       varchar2, --获取记录总数的查询语句
                    p_OutRecordCount out int, --返回总记录数
                    p_OutCursor      out refCursorType) is
    v_sql       varchar2(3000);
    v_count     int;
    v_heiRownum int;
    v_lowRownum int;
  begin
  
    ----取记录总数
    execute immediate  p_SqlCount
      into v_count;
    p_OutRecordCount := v_count;
    ----执行分页查询
    v_heiRownum := p_PageNo * p_PageSize;
    v_lowRownum := v_heiRownum - p_PageSize + 1;
  
    v_sql := 'SELECT * FROM (SELECT A.*, rownum rn 
    FROM (' ||p_SqlSelect || ') A
    WHERE rownum &lt;= ' || to_char(v_heiRownum) || ') B
    WHERE rn >= ' || to_char(v_lowRownum);
    --注意对rownum别名的使用,第一次直接用rownum,第二次一定要用别名rn
  
    OPEN p_OutCursor FOR v_sql; 
  end sp_Page;

end;</pre><br /><br /><br /><pre name="code" class="java">sqlstr = "select ID,From_UserID,To_UserID,to_char(AddDate,'YYYY-MM-DD HH24:MM:SS') as AddDate,Content,IsRead,State,From_UserName,To_UserName,Title from VW_tData_Inquire";
sqlstrcount = "select count(*) from VW_tData_Inquire";
openDB();
			String sql = "{ call CURSPKG.sp_Page(?,?,?,?,?,?)}";
	        CallableStatement proc = conn.prepareCall(sql);
	        proc.setInt(1, p_PageSize);        		//每页数量
	        proc.setInt(2, p_PageNo);          		//页码
	        proc.setString(3, sqlstr);      		//取数据的sql
	        proc.setString(4, sqlstrcount);        	//取数据个数的sql
	        proc.registerOutParameter(5, oracle.jdbc.OracleTypes.INTEGER);      //输出数据行数
	        proc.registerOutParameter(6, oracle.jdbc.OracleTypes.CURSOR);      //输出游标记录集
	        proc.execute();
	        RowsCount = ( (OracleCallableStatement) proc).getInt(5);	//总行数
	        rs = (ResultSet)proc.getObject(6);	//结果集
</pre>[url]
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/147774#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 12 Dec 2007 13:02:17 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/147774</link>
        <guid>http://huashaozhawei.javaeye.com/blog/147774</guid>
      </item>
      <item>
        <title>jdbc class.forName作用 ( 向DriverManager注册自己) </title>
        <author>华少少华</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://huashaozhawei.javaeye.com">华少少华</a>&nbsp;
          链接：<a href="http://huashaozhawei.javaeye.com/blog/146872" style="color:red;">http://huashaozhawei.javaeye.com/blog/146872</a>&nbsp;
          发表时间: 2007年12月08日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          转载<br /> <br /> <br /> Class aClass = Class.forName(xxx.xx.xx);<br />　　Object anInstance = aClass.newInstance();<br />　　Class.forName("").newInstance()返回的是object<br />　　but there is some limit for this method to create instance<br />　　that is your class constructor should no contain parameters, and you should cast the instance manually.<br />　　Class Driver{<br />　　protected static Driver current;<br />　　public static Driver getDriver(){<br />　　return current;<br />　　}<br />　　}<br />　　Class MyDriver extends Driver{<br />　　static{<br />　　Driver.current=new MyDriver();<br />　　}<br />　　MyDriver(){}<br />　　}<br />　　用时:<br />　　Class.forName("MyDriver");<br />　　Driver d=Driver.getDriver();<br />　　有的jdbc连接数据库的写法里是Class.forName(xxx.xx.xx);而有一些：Class.forName(xxx.xx.xx).newInstance()，为什么会有这两种写法呢？<br />　　Class.forName(xxx.xx.xx) 返回的是一个类,<br />　　.newInstance() 后才创建一个对象<br />　　Class.forName(xxx.xx.xx);的作用是要求JVM查找并加载指定的类，也就是说JVM会执行该类的静态代码段<br />　　在JDBC规范中明确要求这个Driver类必须向DriverManager注册自己，即任何一个JDBC Driver的Driver类的代码都必须类似如下：<br />　　public class MyJDBCDriver implements Driver {<br />　　static {<br />　　DriverManager.registerDriver(new MyJDBCDriver());<br />　　}<br />　　}<br />　　所以我们在使用JDBC时只需要Class.forName(XXX.XXX);就可以了<br />　　we just want to load the driver to jvm only, but not need to user the instance of driver, so call Class.forName(xxx.xx.xx) is enough, if you call Class.forName(xxx.xx.xx).newInstance(), the result will same as calling Class.forName(xxx.xx.xx), because Class.forName(xxx.xx.xx).newInstance() will load driver first, and then create instance, but the instacne you will never use in usual, so you need not to create it.<br />　　<span style="color: red">在JDBC驱动中，有一块静态代码，也叫静态初始化块，它执行的时间是当class调入到内存中就执行（你可以想像成，当类调用到内存后就执行一个方法）。所以很多人把jdbc driver调入到内存中，再实例化对象是没有意义的。</span>　<br /><br />Class aClass = Class.forName(xxx.xx.xx);<br />　　Object anInstance = aClass.newInstance();<br />　　Class.forName("").newInstance()返回的是object<br />　　but there is some limit for this method to create instance<br />　　that is your class constructor should no contain parameters, and you should cast the instance manually.<br />　　Class Driver{<br />　　protected static Driver current;<br />　　public static Driver getDriver(){<br />　　return current;<br />　　}<br />　　}<br />　　Class MyDriver extends Driver{<br />　　static{<br />　　Driver.current=new MyDriver();<br />　　}<br />　　MyDriver(){}<br />　　}<br />　　用时:<br />　　Class.forName("MyDriver");<br />　　Driver d=Driver.getDriver();<br />　　有的jdbc连接数据库的写法里是Class.forName(xxx.xx.xx);而有一些：Class.forName(xxx.xx.xx).newInstance()，为什么会有这两种写法呢？<br />　　Class.forName(xxx.xx.xx) 返回的是一个类,<br />　　.newInstance() 后才创建一个对象<br />　　Class.forName(xxx.xx.xx);的作用是要求JVM查找并加载指定的类，也就是说JVM会执行该类的静态代码段<br />　　在JDBC规范中明确要求这个Driver类必须向DriverManager注册自己，即任何一个JDBC Driver的Driver类的代码都必须类似如下：<br />　　public class MyJDBCDriver implements Driver {<br />　<span style="color: red">　static {<br />　　DriverManager.registerDriver(new MyJDBCDriver());<br />　　}</span>　　}<br />　　所以我们在使用JDBC时只需要Class.forName(XXX.XXX);就可以了<br />　　we just want to load the driver to jvm only, but not need to user the instance of driver, so call Class.forName(xxx.xx.xx) is enough, if you call Class.forName(xxx.xx.xx).newInstance(), the result will same as calling Class.forName(xxx.xx.xx), because Class.forName(xxx.xx.xx).newInstance() will load driver first, and then create instance, but the instacne you will never use in usual, so you need not to create it.<br />　　在JDBC驱动中，有一块静态代码，也叫静态初始化块，它执行的时间是当class调入到内存中就执行（你可以想像成，当类调用到内存后就执行一个方法）。所以很多人把jdbc driver调入到内存中，再实例化对象是没有意义的。<br /><br />.<span style="color: red">在JDBC规范中明确要求这个Driver类必须向DriverManager注册自己</span>[code][color=orange][/color]
          <br/>
          <span style="color:red;">
            <a href="http://huashaozhawei.javaeye.com/blog/146872#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/97' target='_blank'><span style="color:blue;font-weight:bold;">Oracle专区上线，有Oracle最新文章，重要下载及知识库等精彩内容，欢迎访问。</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 08 Dec 2007 14:02:14 +0800</pubDate>
        <link>http://huashaozhawei.javaeye.com/blog/146872</link>
        <guid>http://huashaozhawei.javaeye.com/blog/146872</guid>
      </item>
  </channel>
</rss>