﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-罗比特-文章分类-Oracle</title><link>http://www.blogjava.net/qazwindy/category/33013.html</link><description>学习笔记</description><language>zh-cn</language><lastBuildDate>Mon, 14 Jul 2008 15:34:25 GMT</lastBuildDate><pubDate>Mon, 14 Jul 2008 15:34:25 GMT</pubDate><ttl>60</ttl><item><title>Common DbUtils</title><link>http://www.blogjava.net/qazwindy/articles/214825.html</link><dc:creator>罗比特</dc:creator><author>罗比特</author><pubDate>Mon, 14 Jul 2008 13:39:00 GMT</pubDate><guid>http://www.blogjava.net/qazwindy/articles/214825.html</guid><wfw:comment>http://www.blogjava.net/qazwindy/comments/214825.html</wfw:comment><comments>http://www.blogjava.net/qazwindy/articles/214825.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qazwindy/comments/commentRss/214825.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qazwindy/services/trackbacks/214825.html</trackback:ping><description><![CDATA[<p>　这是Apache公司出的一个工具集，用于方便Ｗｅｂ开发中关于数据库的操作。最大的好处就是，在SQL查询的时候，可以返回一个MapList 或者BeanList对象。<br />
　首先到官网下载相关包　<a href="http://commons.apache.org/downloads/download_dbutils.cgi">http://commons.apache.org/downloads/download_dbutils.cgi</a>&nbsp;　下载后，引用commons-dbutils.jar 包到项目中<br />
<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">String&nbsp;url</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">jdbc:oracle:thin:@192.168.1.101:1521:ora9</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />String&nbsp;sql</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">select&nbsp;id,name,phone,email&nbsp;from&nbsp;guestbook&nbsp;order&nbsp;by&nbsp;id&nbsp;desc</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />DbUtils.loadDriver(</span><span style="color: #000000">"</span><span style="color: #000000">oracle.jdbc.driver.OracleDriver</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">try</span><span style="color: #000000"><br />
<img id="Codehighlighter1_189_377_Open_Image" style="display: inline" onclick="this.style.display='none'; Codehighlighter1_189_377_Open_Text.style.display='none'; Codehighlighter1_189_377_Closed_Image.style.display='inline'; Codehighlighter1_189_377_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_189_377_Closed_Image" style="display: none; width: 11px; height: 16px" onclick="this.style.display='none'; Codehighlighter1_189_377_Closed_Text.style.display='none'; Codehighlighter1_189_377_Open_Image.style.display='inline'; Codehighlighter1_189_377_Open_Text.style.display='inline';" height="16" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" width="11" align="top"  alt="" />&nbsp;</span><span id="Codehighlighter1_189_377_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_189_377_Open_Text" style="display: inline"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Connection&nbsp;conn</span><span style="color: #000000">=</span><span style="color: #000000">DriverManager.getConnection(url,</span><span style="color: #000000">"</span><span style="color: #000000">scott</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">tiger</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; QueryRunner&nbsp;qr&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;QueryRunner();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; List&nbsp;result</span><span style="color: #000000">=</span><span style="color: #000000">(List)qr.query(conn,sql,</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;MapListHandler());<br />
<img style="width: 11px; height: 17px" height="17" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" width="11" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DbUtils.close(conn);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />&nbsp;}</span></span></div>
&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp; 在qr.query()这个函数中，还可以选择一个BeanList 对象　<br />
　
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">List&nbsp;results</span><span style="color: #000000">=</span><span style="color: #000000">(List)qr.query(conn,sql,</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;BeanListHandler(Guestbook.</span><span style="color: #0000ff">class</span><span style="color: #000000">));</span></div>
<br />
&nbsp;&nbsp;&nbsp; 这样的好处是可以直接得到javaBean 的对象，把它直接保存在request 对象中，方便显示层的jsp 页面调用<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">request.setAttribute(</span><span style="color: #000000">"</span><span style="color: #000000">BeanName</span><span style="color: #000000">"</span><span style="color: #000000">,BeanList)</span></div>
<br />
&nbsp;&nbsp;&nbsp; 同时，这里也可以用数据连结池实现数据库的连接<br />
&nbsp;
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">String&nbsp;sql</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">insert&nbsp;into&nbsp;guestbook(id,name,email)&nbsp;values&nbsp;(gb_seq.nextval,?,?)</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img id="Codehighlighter1_96_116_Open_Image" onclick="this.style.display='none'; Codehighlighter1_96_116_Open_Text.style.display='none'; Codehighlighter1_96_116_Closed_Image.style.display='inline'; Codehighlighter1_96_116_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_96_116_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_96_116_Closed_Text.style.display='none'; Codehighlighter1_96_116_Open_Image.style.display='inline'; Codehighlighter1_96_116_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" />String[]&nbsp;param&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_96_116_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_96_116_Open_Text"><span style="color: #000000">{</span><span style="color: #000000">"</span><span style="color: #000000">abc</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">abc@163.com</span><span style="color: #000000">"</span><span style="color: #000000">}</span></span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />Context&nbsp;context&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;InitialContext();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />DataSource&nbsp;ds&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;context.lookup(</span><span style="color: #000000">"</span><span style="color: #000000">java:/comp/env/jdbc/oracleds</span><span style="color: #000000">"</span><span style="color: #000000">);&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />QueryRunner&nbsp;qr</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;QueryRunner(ds);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />qr.update(sql,param);</span></div>
&nbsp;&nbsp; 
 <img src ="http://www.blogjava.net/qazwindy/aggbug/214825.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qazwindy/" target="_blank">罗比特</a> 2008-07-14 21:39 <a href="http://www.blogjava.net/qazwindy/articles/214825.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>