﻿<?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>C++博客-★Snowhill ★-文章分类-java</title><link>http://www.cppblog.com/snowhill/category/18713.html</link><description>&lt;font color=#5555aa &gt;&lt;b&gt; 颠沛必于是，造次必于是！&lt;/b&gt;&lt;/font&gt;</description><language>zh-cn</language><lastBuildDate>Mon, 13 Apr 2015 06:15:58 GMT</lastBuildDate><pubDate>Mon, 13 Apr 2015 06:15:58 GMT</pubDate><ttl>60</ttl><item><title>eclipse快捷键</title><link>http://www.cppblog.com/snowhill/articles/210322.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Sun, 12 Apr 2015 14:03:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/210322.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/210322.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/210322.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/210322.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/210322.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Ctrl+1 快速修复(最经典的快捷键,就不用多说了)&nbsp;Ctrl+D: 删除当前行&nbsp;&nbsp;Ctrl+Alt+&#8595; 复制当前行到下一行(复制增加)&nbsp;Ctrl+Alt+&#8593; 复制当前行到上一行(复制增加)&nbsp;Alt+&#8595; 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)&nbsp;Alt+&#8593; 当前行和上...&nbsp;&nbsp;<a href='http://www.cppblog.com/snowhill/articles/210322.html'>阅读全文</a><img src ="http://www.cppblog.com/snowhill/aggbug/210322.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2015-04-12 22:03 <a href="http://www.cppblog.com/snowhill/articles/210322.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux jdk 安装报nocloassdeffounderror报错</title><link>http://www.cppblog.com/snowhill/articles/210164.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Wed, 25 Mar 2015 12:54:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/210164.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/210164.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/210164.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/210164.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/210164.html</trackback:ping><description><![CDATA[<div style="padding-left: 15px; font-weight: bolder; font-size: medium; margin-top: 6px; margin-bottom: 0px; font-family: Verdana, Arial, Geneva, Helvetica, sans-serif; line-height: normal; background-image: url(http://www.cnblogs.com/skins/BlackSun/images/Topic.gif); background-color: #ffffff; background-repeat: no-repeat;"><a id="cb_post_title_url" href="http://www.cnblogs.com/chenguangyu/archive/2009/11/06/1597706.html" style="color: #000000; text-decoration: none;">linux安装jdk出现java/lang/NoClassDefFoundError: java/lang/Object错误的解决方案</a></div><div style="padding: 2px 10px 2px 15px; font-stretch: normal; font-size: 13px; font-family: verdana, sans-serif; line-height: 1.5; margin-top: 0px; background-color: #ffffff;"><div id="cnblogs_post_body" style="margin-bottom: 20px;"><p style="margin-top: 10px; margin-bottom: 10px;">近日在redhat上安装jdk出现了一个莫名的错误</p><p style="margin-top: 10px; margin-bottom: 10px;">Error occurred during initialization of VM<br />java/lang/NoClassDefFoundError: java/lang/Object</p><p style="margin-top: 10px; margin-bottom: 10px;">辛苦google了一个小时，终于找到了解决方案</p><p style="margin-top: 10px; margin-bottom: 10px;">首先要确认的是环境变量的设置是否正确</p><p style="margin-top: 10px; margin-bottom: 10px;">相信大家都是很细心的，这方面如果有错误也会很容易发现</p><p style="margin-top: 10px; margin-bottom: 10px;">然而还有一个隐蔽的地方也会产生上述的错误</p><p style="margin-top: 10px; margin-bottom: 10px;">就是lib和jre/lib文件夹中的rt和tools是否是打包后的形式</p><p style="margin-top: 10px; margin-bottom: 10px;">如果发现rt.pack 和 tools.pack 那么多半问题就出在这里&nbsp;</p><p style="margin-top: 10px; margin-bottom: 10px;">解决方法也很简单，只要将相应文件解压成rt.jar 和 tools.jar<br /></p><p style="margin-top: 10px; margin-bottom: 10px;">可以使用bin里面的unpack200工具</p><p style="margin-top: 10px; margin-bottom: 10px;">如：unpack200 rt.pack rt.jar</p><p style="margin-top: 10px; margin-bottom: 10px;">解压后java -version应该就没有问题了~~&nbsp;</p></div></div><img src ="http://www.cppblog.com/snowhill/aggbug/210164.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2015-03-25 20:54 <a href="http://www.cppblog.com/snowhill/articles/210164.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>android开发三--一个最简单的登陆界面</title><link>http://www.cppblog.com/snowhill/articles/206485.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Sun, 06 Apr 2014 07:15:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/206485.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/206485.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/206485.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/206485.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/206485.html</trackback:ping><description><![CDATA[<div>&nbsp;一 新建一个项目，不建 Activity<br />&nbsp;二 res下创建一个布局文件layout<br />&nbsp;&nbsp;&nbsp; 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">&lt;?</span><span style="color: #ff00ff">xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"</span><span style="color: #0000ff">?&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">LinearLayout&nbsp;</span><span style="color: #ff0000">xmlns:android</span><span style="color: #0000ff">="http://schemas.android.com/apk/res/android"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="match_parent"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="match_parent"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:orientation</span><span style="color: #0000ff">="vertical"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">EditText<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:id</span><span style="color: #0000ff">="@+id/login_username"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="300dp"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:hint</span><span style="color: #0000ff">="@string/hint"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:text</span><span style="color: #0000ff">=""</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">EditText</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">EditText<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:id</span><span style="color: #0000ff">="@+id/login_password"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="300dp"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:hint</span><span style="color: #0000ff">="@string/password"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:inputType</span><span style="color: #0000ff">="textPassword"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:text</span><span style="color: #0000ff">=""</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">EditText</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">Button&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:id</span><span style="color: #0000ff">="@+id/login_submit"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:text</span><span style="color: #0000ff">="@string/loginname"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">TextView&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:id</span><span style="color: #0000ff">="@+id/login_result"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="match_parent"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:hint</span><span style="color: #0000ff">="@string/result"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">LinearLayout</span><span style="color: #0000ff">&gt;</span></div><br />三 创建 src&nbsp; loginActivity.java文件<br /><br /><br /><br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;com.example.basiclogin;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.os.Bundle;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.app.Activity;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.view.View;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.view.View.OnClickListener;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.widget.Button;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.widget.EditText;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.widget.TextView;<br /><img id="Codehighlighter1_294_1456_Open_Image" onclick="this.style.display='none'; Codehighlighter1_294_1456_Open_Text.style.display='none'; Codehighlighter1_294_1456_Closed_Image.style.display='inline'; Codehighlighter1_294_1456_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_294_1456_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_294_1456_Closed_Text.style.display='none'; Codehighlighter1_294_1456_Open_Image.style.display='inline'; Codehighlighter1_294_1456_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;loginActivity&nbsp;</span><span style="color: #0000ff">extends</span><span style="color: #000000">&nbsp;Activity&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_294_1456_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_294_1456_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_304_339_Open_Image" onclick="this.style.display='none'; Codehighlighter1_304_339_Open_Text.style.display='none'; Codehighlighter1_304_339_Closed_Image.style.display='inline'; Codehighlighter1_304_339_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_304_339_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_304_339_Closed_Text.style.display='none'; Codehighlighter1_304_339_Open_Image.style.display='inline'; Codehighlighter1_304_339_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_304_339_Closed_Text">/**&nbsp;*/</span><span id="Codehighlighter1_304_339_Open_Text"><span style="color: #008000">/**</span><span style="color: #008000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;必须重载父类的onCreate<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Override<br /><img id="Codehighlighter1_412_1454_Open_Image" onclick="this.style.display='none'; Codehighlighter1_412_1454_Open_Text.style.display='none'; Codehighlighter1_412_1454_Closed_Image.style.display='inline'; Codehighlighter1_412_1454_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_412_1454_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_412_1454_Closed_Text.style.display='none'; Codehighlighter1_412_1454_Open_Image.style.display='inline'; Codehighlighter1_412_1454_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">protected</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;onCreate(Bundle&nbsp;savedInstanceState)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_412_1454_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_412_1454_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">super</span><span style="color: #000000">.onCreate(savedInstanceState);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">.setContentView(R.layout.login);</span><span style="color: #008000">//</span><span style="color: #008000">将布局文件与代码关联起来<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">获取布局文件中的UI元素对象</span><span style="color: #008000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;EditText&nbsp;mUserName&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;(EditText)&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">.findViewById(R.id.login_username);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;EditText&nbsp;mPassword&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;(EditText)&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">.findViewById(R.id.login_password);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Button&nbsp;mSubmit&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;&nbsp;(Button)</span><span style="color: #0000ff">this</span><span style="color: #000000">.findViewById(R.id.login_submit);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;TextView&nbsp;mResult&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;(TextView)</span><span style="color: #0000ff">this</span><span style="color: #000000">.findViewById(R.id.login_result);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">设置按钮点击之后的事件处理</span><span style="color: #008000"><br /><img id="Codehighlighter1_977_1444_Open_Image" onclick="this.style.display='none'; Codehighlighter1_977_1444_Open_Text.style.display='none'; Codehighlighter1_977_1444_Closed_Image.style.display='inline'; Codehighlighter1_977_1444_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_977_1444_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_977_1444_Closed_Text.style.display='none'; Codehighlighter1_977_1444_Open_Image.style.display='inline'; Codehighlighter1_977_1444_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mSubmit.setOnClickListener(&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;OnClickListener()&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_977_1444_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_977_1444_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Override<br /><img id="Codehighlighter1_1057_1440_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1057_1440_Open_Text.style.display='none'; Codehighlighter1_1057_1440_Closed_Image.style.display='inline'; Codehighlighter1_1057_1440_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1057_1440_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1057_1440_Closed_Text.style.display='none'; Codehighlighter1_1057_1440_Open_Image.style.display='inline'; Codehighlighter1_1057_1440_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;onClick(View&nbsp;v)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1057_1440_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1057_1440_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;userName&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;mUserName.getText().toString();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;password&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;mPassword.getText().toString();<br /><img id="Codehighlighter1_1264_1334_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1264_1334_Open_Text.style.display='none'; Codehighlighter1_1264_1334_Closed_Image.style.display='inline'; Codehighlighter1_1264_1334_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1264_1334_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1264_1334_Closed_Text.style.display='none'; Codehighlighter1_1264_1334_Open_Image.style.display='inline'; Codehighlighter1_1264_1334_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(</span><span style="color: #000000">"</span><span style="color: #000000">admin</span><span style="color: #000000">"</span><span style="color: #000000">.equals(userName)&nbsp;</span><span style="color: #000000">&amp;&amp;</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">123</span><span style="color: #000000">"</span><span style="color: #000000">.equals(password))</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1264_1334_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1264_1334_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mResult.setText(</span><span style="color: #000000">"</span><span style="color: #000000">恭喜您，登录成功！</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img id="Codehighlighter1_1339_1415_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1339_1415_Open_Text.style.display='none'; Codehighlighter1_1339_1415_Closed_Image.style.display='inline'; Codehighlighter1_1339_1415_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1339_1415_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1339_1415_Closed_Text.style.display='none'; Codehighlighter1_1339_1415_Open_Image.style.display='inline'; Codehighlighter1_1339_1415_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #0000ff">else</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1339_1415_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1339_1415_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mResult.setText(</span><span style="color: #000000">"</span><span style="color: #000000">登录失败，用户名或密码不正确！</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span></div>四 在<font style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" size="2">AndroidManifest.xml声明activity</font>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><font style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" size="2">所有的Activity定义好了之后，只有在AndroidManifest.xml中声明过，才会有效。</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">application<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:allowBackup</span><span style="color: #0000ff">="true"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:icon</span><span style="color: #0000ff">="@drawable/ic_launcher"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:label</span><span style="color: #0000ff">="@string/app_name"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:theme</span><span style="color: #0000ff">="@style/AppTheme"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">activity&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="loginActivity"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">intent-filter</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">action&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="android.intent.action.MAIN"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">category&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="android.intent.category.LAUNCHER"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">intent-filter</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">activity</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">application</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><br /><br /></font></p><br /></div><img src ="http://www.cppblog.com/snowhill/aggbug/206485.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2014-04-06 15:15 <a href="http://www.cppblog.com/snowhill/articles/206485.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>android开发二</title><link>http://www.cppblog.com/snowhill/articles/206466.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Fri, 04 Apr 2014 03:57:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/206466.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/206466.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/206466.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/206466.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/206466.html</trackback:ping><description><![CDATA[当用模板生成一个hello,world apk后，该分析其结构了<br />工程下，以myfirst_1为例：<br />&nbsp;&nbsp;&nbsp;myfirst_1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|-------src--MainActivity.java<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |-------res--layout--activity_main.xml<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; --values--strings.xml<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |AnroidManifest.xml<br />
<p>一 查看androidmanifest.xml</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">activity<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="com.example.myfirst_1.MainActivity"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:label</span><span style="color: #0000ff">="@string/app_name"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">intent-filter</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">action&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="android.intent.action.MAIN"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">category&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="android.intent.category.LAUNCHER"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">intent-filter</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">activity</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span></div>
<p>这里可以看一个activity的定义，那啥是activity:<span style="text-align: left; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; display: inline !important; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; float: none; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Activity是一个容器组件，是一个承载界面，可以和用户进行交换的组件，有点类似PC上的window，但是不一样的是，通常一个Activity通常就占据了整个屏幕，而且当前只能有一个Activity与用户交互。<br /><span style="text-align: left; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; display: inline !important; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; float: none; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">我们在代码src下添加了一个Activity后，必须同时在AndroidManifest.xml中声明整个activity，才是有效的。如果希望程序启动时，就打开你指定的Activity，则需要在那个activity节点当中加入</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">intent-filter</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">action&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="android.intent.action.MAIN"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">category&nbsp;</span><span style="color: #ff0000">android:name</span><span style="color: #0000ff">="android.intent.category.LAUNCHER"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">intent-filter</span><span style="color: #0000ff">&gt;</span></div>
<p>查看src下的mainactivity源码：</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;com.example.myfirst_1;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.os.Bundle;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.app.Activity;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.view.Menu;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img id="Codehighlighter1_157_511_Open_Image" onclick="this.style.display='none'; Codehighlighter1_157_511_Open_Text.style.display='none'; Codehighlighter1_157_511_Closed_Image.style.display='inline'; Codehighlighter1_157_511_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_157_511_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_157_511_Closed_Text.style.display='none'; Codehighlighter1_157_511_Open_Image.style.display='inline'; Codehighlighter1_157_511_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;MainActivity&nbsp;</span><span style="color: #0000ff">extends</span><span style="color: #000000">&nbsp;Activity&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_157_511_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_157_511_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;@Override<br /><img id="Codehighlighter1_223_306_Open_Image" onclick="this.style.display='none'; Codehighlighter1_223_306_Open_Text.style.display='none'; Codehighlighter1_223_306_Closed_Image.style.display='inline'; Codehighlighter1_223_306_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_223_306_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_223_306_Closed_Text.style.display='none'; Codehighlighter1_223_306_Open_Image.style.display='inline'; Codehighlighter1_223_306_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">protected</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;onCreate(Bundle&nbsp;savedInstanceState)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_223_306_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_223_306_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">super</span><span style="color: #000000">.onCreate(savedInstanceState);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setContentView(R.layout.activity_main);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;@Override<br /><img id="Codehighlighter1_367_508_Open_Image" onclick="this.style.display='none'; Codehighlighter1_367_508_Open_Text.style.display='none'; Codehighlighter1_367_508_Closed_Image.style.display='inline'; Codehighlighter1_367_508_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_367_508_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_367_508_Closed_Text.style.display='none'; Codehighlighter1_367_508_Open_Image.style.display='inline'; Codehighlighter1_367_508_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">boolean</span><span style="color: #000000">&nbsp;onCreateOptionsMenu(Menu&nbsp;menu)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_367_508_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_367_508_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;Inflate&nbsp;the&nbsp;menu;&nbsp;this&nbsp;adds&nbsp;items&nbsp;to&nbsp;the&nbsp;action&nbsp;bar&nbsp;if&nbsp;it&nbsp;is&nbsp;present.</span><span style="color: #008000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getMenuInflater().inflate(R.menu.main,&nbsp;menu);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">true</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span></div>
<p>可以看出继承自Activity类，重载onCreate方法，onCreateOptionsMenu用于菜单创建，非必须。<br />查看activitymain.xml</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">RelativeLayout&nbsp;</span><span style="color: #ff0000">xmlns:android</span><span style="color: #0000ff">="http://schemas.android.com/apk/res/android"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;xmlns:tools</span><span style="color: #0000ff">="http://schemas.android.com/tools"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="match_parent"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="match_parent"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:paddingBottom</span><span style="color: #0000ff">="@dimen/activity_vertical_margin"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:paddingLeft</span><span style="color: #0000ff">="@dimen/activity_horizontal_margin"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:paddingRight</span><span style="color: #0000ff">="@dimen/activity_horizontal_margin"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;android:paddingTop</span><span style="color: #0000ff">="@dimen/activity_vertical_margin"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;tools:context</span><span style="color: #0000ff">=".MainActivity"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">TextView<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:id</span><span style="color: #0000ff">="@+id/textView1"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:text</span><span style="color: #0000ff">="@string/hello_world"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">Button<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff0000">android:id</span><span style="color: #0000ff">="@+id/button1"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_width</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_height</span><span style="color: #0000ff">="wrap_content"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_alignLeft</span><span style="color: #0000ff">="@+id/textView1"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:layout_below</span><span style="color: #0000ff">="@+id/textView1"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;android:text</span><span style="color: #0000ff">="@string/next"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">RelativeLayout</span><span style="color: #0000ff">&gt;</span></div>
<p><br /><br />&nbsp;</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">android:id：控件的id，用于唯一确定控件。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">android:layout_width，android:layout_height： 控件的宽高</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">id的写法一般是@+id/xxxxxx, 宽高的值可以为三种之一：wrap_content, fill_parent, match_parent.</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">wrap_content是指，在画控件时，根据控件的实际内容来动态确定大小。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">fill_parent, match_parent实际上是一个意思，占满父容器的空间，区别只是match_parent是在Android2.2之后引进的。</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">android:text 是控件的文本内容，值可以直接填写，也可以引用values/strings.xml下的定义。例如</p>
<p style="text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; font: 13px/19px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><span style="padding-bottom: 0px; line-height: 1.5; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(255,0,0); padding-top: 0px">android:text</span><span style="padding-bottom: 0px; line-height: 1.5; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(0,0,255); padding-top: 0px">="@string/next"</span><span style="padding-bottom: 0px; line-height: 1.5; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(255,0,0); padding-top: 0px"><span class="Apple-converted-space">&nbsp;</span></span>就是引用了res/values/strings.xml下的：</p>
<p>&nbsp;</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">resources</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">string&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="app_name"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">myfirst_1</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">string</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">string&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="action_settings"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">Settings</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">string</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">string&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="hello_world"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">Hello&nbsp;world!</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">string</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">string&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="next"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">下一步</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">string</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">resources</span><span style="color: #0000ff">&gt;</span></div>
<p>如果这里不用这种引用，编译会出现一个警告should use @string resource <br /><br /><br /></span></span></p> <img src ="http://www.cppblog.com/snowhill/aggbug/206466.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2014-04-04 11:57 <a href="http://www.cppblog.com/snowhill/articles/206466.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>andorid开发环境准备</title><link>http://www.cppblog.com/snowhill/articles/206456.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Thu, 03 Apr 2014 08:01:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/206456.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/206456.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/206456.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/206456.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/206456.html</trackback:ping><description><![CDATA[<p>一　安装jdk,android sdk<br />&#160;安装说明：<a href="http://developer.android.com/sdk/index.html">http://developer.android.com/sdk/index.html</a><br />&#160;下载<a href="http://dl.google.com/android/android-sdk_r22-windows.zip">http://dl.google.com/android/android-sdk_r22-windows.zip</a><br />&#160;设置Android SDK的Path环境变量，方便一些工具命令的调用，设置步骤同JDK。添加sdk路径下的两个文件夹tools和&#160;　platform-tools到Path环境变量（例如G:\software\java\android-sdk-windows\tools;<br />&#160;G:\software\java\android-sdk-windows\platform-tools）。 <br>  检查环境变量是否成功 : cmd  下运行 android -h 
<br />&#160;再运行SDK Manager.exe</p>
<p>二　运行eclipse，安装ADT插件<br />&#160;安装说明：<a href="http://developer.android.com/sdk/installing/installing-adt.html">http://developer.android.com/sdk/installing/installing-adt.html</a><br />&#160;a.启动Eclipse,然后选择Help（帮助）>InstallNewSoftware（安装更新软件）...<br />&#160;输入：<br />&#160;ADTplugin<br />&#160;<a href="https://dl-ssl.google.com/android/eclipse/">https://dl-ssl.google.com/android/eclipse/</a><br />&#160;b 本地安装<br />&#160;下载<a href="http://dl.google.com/android/ADT-22.6.2.zip">http://dl.google.com/android/ADT-22.6.2.zip</a><br />&#160;和a一个地方输入：<br />&#160;jar:file:/f:/software/java/ADT-15.0.0.zip.zip<br />&#160;安装完成成后需要重启eclipse<br />&#160;配置ADT：<br />&#160;a.选择Window（窗口）>Preferences（首选项）...打开Preferences（首选项）<br />&#160;b.选择左边面板里的Android。你可能会看到一个对话框询问你是否想要发送使用信息给Google。做出你的选择，然后点Proceed。<br />&#160;c.SDKLocation在主面板中出现，点击Browse（浏览）...，然后找到你下载的SDK路径，点击确定。<br />&#160;d.点击Apply（应用），Done（完成）！然后就OK。</p>
<p>三 配置模拟器</p> <img src ="http://www.cppblog.com/snowhill/aggbug/206456.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2014-04-03 16:01 <a href="http://www.cppblog.com/snowhill/articles/206456.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java gui设计</title><link>http://www.cppblog.com/snowhill/articles/203666.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Fri, 11 Oct 2013 14:24:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/203666.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/203666.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/203666.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/203666.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/203666.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: java 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->import&nbsp;javax.swing.*&nbsp;;import&nbsp;java.awt.*;import&nbsp;java.awt.event.*;import&nb...&nbsp;&nbsp;<a href='http://www.cppblog.com/snowhill/articles/203666.html'>阅读全文</a><img src ="http://www.cppblog.com/snowhill/aggbug/203666.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2013-10-11 22:24 <a href="http://www.cppblog.com/snowhill/articles/203666.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java blob写出</title><link>http://www.cppblog.com/snowhill/articles/203511.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Mon, 30 Sep 2013 15:34:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/203511.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/203511.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/203511.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/203511.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/203511.html</trackback:ping><description><![CDATA[<p>import java.sql.*;<br />import java.io.*;<br />import java.util.*;<br />/**<br />&nbsp;* @author semovy 测试向oracle 读,写文件Blob 读,写大文本Clob<br />&nbsp;*/<br />public class OracleBlobTest {</p>
<p>&nbsp;public static void main(String[] args) {<br />&nbsp;&nbsp;&nbsp; if (args.length&lt;2)<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("usage: java OracleBlobTest [tablename][columname]");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.exit(1);<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp; String table_name=args[0];<br />&nbsp; String column_name=args[1];<br />&nbsp; OracleBlobTest obt = new OracleBlobTest();<br />&nbsp;// obt.writeBlob("blob_content","id");<br />&nbsp;//写出数据库内容<br />&nbsp;&nbsp; obt.readBlob(table_name,column_name);<br />&nbsp;&nbsp; //写入数据库内容<br />&nbsp;//obt.writeBlob("E:\\img\\2011\\DSC01333.JPG");<br />&nbsp; //obt.readClob();<br />&nbsp;}<br />&nbsp;/**<br />&nbsp; *&nbsp;&nbsp; * 从数据库里读取blob字段写出到文件<br />&nbsp; */<br />&nbsp;private void readBlob(String tablename,String columname) {<br />&nbsp; Connection conn = null;<br />&nbsp; try {<br />&nbsp;&nbsp; conn = getConnection();<br />&nbsp;&nbsp; String sql = "select * from&nbsp; "+tablename+" where "+columname+"=?";&nbsp;&nbsp; <br />&nbsp;&nbsp; PreparedStatement stmt =&nbsp; conn.prepareStatement(sql);<br />&nbsp;&nbsp; stmt.setString(1,"1"); <br />&nbsp;&nbsp; ResultSet rs = stmt.executeQuery();<br />&nbsp;&nbsp; int tempLen = 0;<br />&nbsp;&nbsp; int amount = 0;<br />&nbsp;&nbsp; if (rs.next()) {<br />&nbsp;&nbsp; String colVal=rs.getString("file_name");<br />&nbsp;&nbsp; colVal=colVal.replaceAll("<a>\\\\","\\\\\\\\</a>");<br />&nbsp;&nbsp; colVal=colVal.replaceAll(" ","");<br />&nbsp;&nbsp; System.out.println(colVal);<br />&nbsp;&nbsp; File file=new File(colVal);<br />&nbsp;&nbsp; byte[] buffer = new byte[1024];<br />&nbsp;&nbsp; OutputStream out = new FileOutputStream(file);<br />&nbsp;&nbsp; Blob blob = rs.getBlob("blob_column");<br />&nbsp;&nbsp; InputStream in = blob.getBinaryStream();<br />&nbsp;&nbsp; while ((tempLen = in.read(buffer)) != -1) {<br />&nbsp;&nbsp; out.write(buffer, 0, tempLen);<br />&nbsp;&nbsp; amount += tempLen;<br />&nbsp;&nbsp; System.out.println("已经读出并写:" + amount + " 字节");<br />&nbsp;&nbsp; }<br />&nbsp;&nbsp; System.out.println("已经读出并写:完成");<br />&nbsp;&nbsp; out.flush();<br />&nbsp;&nbsp; out.close();<br />&nbsp;&nbsp; in.close();<br />&nbsp;&nbsp; rs.close();<br />&nbsp;&nbsp; stmt.close();<br />&nbsp;&nbsp; }<br />&nbsp; } catch (ClassNotFoundException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (IOException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } finally {<br />&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp; if (conn != null)<br />&nbsp;&nbsp;&nbsp;&nbsp; conn.close();<br />&nbsp;&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp;&nbsp; }<br />&nbsp; }<br />&nbsp;}</p>
<p>&nbsp;/**<br />&nbsp; * 从二进制文件写到数据库<br />&nbsp; */<br />&nbsp;private void writeBlob(String filename) {<br />&nbsp; Connection conn = null;<br />&nbsp; try {<br />&nbsp;&nbsp; conn = getConnection();<br />&nbsp;&nbsp; conn.setAutoCommit(false);<br />&nbsp;&nbsp; String sql = "insert into blob_content values(?,?,?)";&nbsp;&nbsp; <br />&nbsp;&nbsp; PreparedStatement stmt =&nbsp; conn.prepareStatement(sql);<br />&nbsp;&nbsp; System.out.println(filename);<br />&nbsp;&nbsp; stmt.setString(1,filename);<br />&nbsp;&nbsp; File file=new File(filename);<br />&nbsp;&nbsp; FileInputStream fis=new FileInputStream(file);<br />&nbsp;&nbsp; stmt.setBinaryStream(2,fis,fis.available());<br />&nbsp;&nbsp; stmt.setString(3,"11");<br />&nbsp;&nbsp; stmt.executeUpdate();<br />&nbsp;&nbsp; conn.commit();<br />&nbsp;&nbsp; /*<br />&nbsp;&nbsp; if (rs.next()) {<br />&nbsp;&nbsp;&nbsp; OutputStream out = ((oracle.sql.BLOB) blob).setBinaryStream(0);// 从0开始,否则写出的文件有差错<br />&nbsp;&nbsp;&nbsp; int bufferSize = ((oracle.sql.BLOB) blob).getBufferSize();<br />&nbsp;&nbsp;&nbsp; System.out.println("bufferSize :" + bufferSize);<br />&nbsp;&nbsp;&nbsp; BufferedInputStream in = new BufferedInputStream(new FileInputStream(colVal), bufferSize);<br />&nbsp;&nbsp;&nbsp; byte[] b = new byte[bufferSize];<br />&nbsp;&nbsp;&nbsp; int count = in.read(b, 0, bufferSize);<br />&nbsp;&nbsp;&nbsp; int amount = 0;<br />&nbsp;&nbsp;&nbsp; while (count != -1) {<br />&nbsp;&nbsp;&nbsp;&nbsp; out.write(b, 0, count);<br />&nbsp;&nbsp;&nbsp;&nbsp; amount += count;<br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("处理了 " + amount + " 字节");<br />&nbsp;&nbsp;&nbsp;&nbsp; count = in.read(b, 0, bufferSize);<br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("处理了 " + amount + " 字节,成功");<br />&nbsp;}<br />&nbsp;<br />&nbsp;&nbsp;&nbsp; out.close();<br />&nbsp;&nbsp;&nbsp; out = null;<br />&nbsp;&nbsp;&nbsp; in.close();<br />&nbsp;&nbsp;&nbsp; conn.commit();<br />&nbsp; }<br />&nbsp;*/<br />&nbsp; stmt.close();</p>
<p>&nbsp; } catch (ClassNotFoundException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp; conn.rollback();<br />&nbsp;&nbsp; } catch (SQLException e1) {<br />&nbsp;&nbsp;&nbsp; System.out.println(e1.getLocalizedMessage());<br />&nbsp;&nbsp; }<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (IOException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } finally {<br />&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp; if (conn != null)<br />&nbsp;&nbsp;&nbsp;&nbsp; conn.close();<br />&nbsp;&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp;&nbsp; }<br />&nbsp; }<br />&nbsp;}</p>
<p>&nbsp;/**<br />&nbsp; * 读大文本<br />&nbsp; * <br />&nbsp; */<br />&nbsp;private void readClob() {<br />&nbsp; Connection conn = null;<br />&nbsp; try {<br />&nbsp;&nbsp; conn = getConnection();<br />&nbsp;&nbsp; Statement stmt = conn.createStatement();<br />&nbsp;&nbsp; ResultSet rs = stmt.executeQuery("select * from test where id=2");<br />&nbsp;&nbsp; String tempStr = null;<br />&nbsp;&nbsp; if (rs.next()) {<br />&nbsp;&nbsp;&nbsp; Clob clob = rs.getClob("CLOBCONTENT");<br />&nbsp;&nbsp;&nbsp; if (clob != null) {<br />&nbsp;&nbsp;&nbsp;&nbsp; Reader in = clob.getCharacterStream();<br />&nbsp;&nbsp;&nbsp;&nbsp; BufferedReader br = new BufferedReader(in);<br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("开始读....");<br />&nbsp;&nbsp;&nbsp;&nbsp; while ((tempStr = br.readLine()) != null) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(tempStr);<br />&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("读完成....");<br />&nbsp;&nbsp;&nbsp;&nbsp; in.close();<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; rs.close();<br />&nbsp;&nbsp;&nbsp; stmt.close();<br />&nbsp;&nbsp; }<br />&nbsp; } catch (ClassNotFoundException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (IOException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } finally {<br />&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp; if (conn != null)<br />&nbsp;&nbsp;&nbsp;&nbsp; conn.close();<br />&nbsp;&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp;&nbsp; }<br />&nbsp; }<br />&nbsp;}</p>
<p>&nbsp;/**<br />&nbsp; * 写大文本<br />&nbsp; * <br />&nbsp; */<br />&nbsp;private void writeClob() {<br />&nbsp; Connection conn = null;<br />&nbsp; try {<br />&nbsp;&nbsp; conn = getConnection();<br />&nbsp;&nbsp; conn.setAutoCommit(false);<br />&nbsp;&nbsp; String sql = null;<br />&nbsp;&nbsp; Statement stmt = conn.createStatement();<br />&nbsp;&nbsp; sql = "delete from clob_content ";<br />&nbsp;&nbsp; stmt.executeUpdate(sql);<br />&nbsp;&nbsp; sql = "insert into clob_content values('test',empty_clob())";<br />&nbsp;&nbsp; stmt.executeUpdate(sql);<br />&nbsp;&nbsp; ResultSet rs = stmt.executeQuery("select * from clob_content");<br />&nbsp;&nbsp; if (rs.next()) {<br />&nbsp;&nbsp;&nbsp; Clob clob = rs.getClob("CLOB_COLUMN");<br />&nbsp;&nbsp;&nbsp; PrintWriter out = new PrintWriter(new BufferedWriter(<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((oracle.sql.CLOB) clob).setCharacterStream(0)));<br />&nbsp;&nbsp;&nbsp; BufferedReader in = new BufferedReader(new InputStreamReader(<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; new FileInputStream(<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "d:\\javasource\\db\\textcontent.txt")));<br />&nbsp;&nbsp;&nbsp; String str = null;<br />&nbsp;&nbsp;&nbsp; System.out.println("开始写...");<br />&nbsp;&nbsp;&nbsp; while ((str = in.readLine()) != null) {<br />&nbsp;&nbsp;&nbsp;&nbsp; out.println(str);<br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(str);<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; in.close();<br />&nbsp;&nbsp;&nbsp; out.close();<br />&nbsp;&nbsp;&nbsp; rs.close();<br />&nbsp;&nbsp;&nbsp; conn.commit();<br />&nbsp;&nbsp; }</p>
<p>&nbsp; } catch (ClassNotFoundException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp; conn.rollback();<br />&nbsp;&nbsp; } catch (SQLException e1) {<br />&nbsp;&nbsp;&nbsp; System.out.println(e1.getLocalizedMessage());<br />&nbsp;&nbsp; }<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } catch (IOException e) {<br />&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp; } finally {<br />&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp; if (conn != null)<br />&nbsp;&nbsp;&nbsp;&nbsp; conn.close();<br />&nbsp;&nbsp; } catch (SQLException e) {<br />&nbsp;&nbsp;&nbsp; System.out.println(e.getLocalizedMessage());<br />&nbsp;&nbsp; }<br />&nbsp; }<br />&nbsp;}</p>
<p>&nbsp;public Connection getConnection() throws ClassNotFoundException,IOException,<br />&nbsp;&nbsp;&nbsp;&nbsp; SQLException {<br />&nbsp; Properties ps=new Properties();<br />&nbsp; FileInputStream fis= new FileInputStream("mydb.properties");<br />&nbsp; ps.load(fis);<br />&nbsp; fis.close();<br />&nbsp; String url=ps.getProperty("db_url");<br />&nbsp; String user=ps.getProperty("username");<br />&nbsp; String pwd=ps.getProperty("password");<br />&nbsp;&nbsp;&nbsp;&nbsp; String driver = "oracle.jdbc.driver.OracleDriver";<br />&nbsp; Class.forName(driver);<br />&nbsp;&nbsp;&nbsp;&nbsp; return DriverManager.getConnection(url, user, pwd);<br />&nbsp;}</p>
<p>&nbsp;/**<br />&nbsp; * @param rs<br />&nbsp; * @throws SQLException<br />&nbsp; */<br />&nbsp;private void displayResultSet(ResultSet rs) throws SQLException {<br />&nbsp; ResultSetMetaData rsmd = rs.getMetaData();<br />&nbsp; int colnum = rsmd.getColumnCount();<br />&nbsp; while (rs.next()) {<br />&nbsp;&nbsp; for (int i = 0; i &lt; colnum; i++) {<br />&nbsp;&nbsp;&nbsp; if (i == colnum - 1)<br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.print(rsmd.getColumnLabel(i + 1) + ": "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; + rs.getObject(i + 1));<br />&nbsp;&nbsp;&nbsp; else<br />&nbsp;&nbsp;&nbsp;&nbsp; System.out.print(rsmd.getColumnLabel(i + 1) + ": "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; + rs.getObject(i + 1) + " , ");<br />&nbsp;&nbsp; }<br />&nbsp;&nbsp; System.out.println();<br />&nbsp; }<br />&nbsp;}<br />}<br />mydb.properties文件<br />db_url=jdbc:oracle:thin:@127.0.0.1:1521:ccxe<br />username=scott<br />password=test</p><img src ="http://www.cppblog.com/snowhill/aggbug/203511.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2013-09-30 23:34 <a href="http://www.cppblog.com/snowhill/articles/203511.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 从oracle取数据生成xml文件</title><link>http://www.cppblog.com/snowhill/articles/203418.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Tue, 24 Sep 2013 14:43:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/203418.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/203418.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/203418.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/203418.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/203418.html</trackback:ping><description><![CDATA[<p>import java.sql.*;<br />import java.util.Scanner;<br />import java.io.File;<br />import java.io.FileWriter;&nbsp; <br />import java.io.IOException;&nbsp; <br />import java.io.OutputStreamWriter;<br />import java.io.FileOutputStream;<br />class testdb1<br />{<br />&nbsp;&nbsp;&nbsp; public static void main(String args[]) {<br />&nbsp;&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Class.forName("oracle.jdbc.driver.OracleDriver");<br />&nbsp;&nbsp;&nbsp; } catch (Exception e) {<br />&nbsp;&nbsp;&nbsp; System.out.println("异常"+e.getMessage());<br />&nbsp;&nbsp;&nbsp; System.exit(1);<br />&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; if (args.length&lt;7)<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("usage: java testdb1 [ip][sid][username][passwd][tablename][columname][djbh]");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.exit(1);<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; //定义数据库对象<br />&nbsp;&nbsp;&nbsp; Connection conn = null;<br />&nbsp;&nbsp;&nbsp; PreparedStatement stmt = null;<br />&nbsp;&nbsp;&nbsp; ResultSet rset = null;<br />&nbsp;&nbsp;&nbsp; ResultSet rs = null;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Scanner s=new Scanner(System.in);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp; System.out.println("请输入用户名:");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String username=args[2];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // System.out.println("请输入密码:");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String passwd=args[3];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // System.out.println("请输入要生成的表名:");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //String tablename=s.nextLine();&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String tablename=args[4];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String columname=args[5];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String file_name=args[6];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // System.out.println("请输入字段名:");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp; String columname=s.nextLine();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // System.out.println("请输入你要生成的xml文件的单据编号:");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // String file_name=s.nextLine(); <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String xmlFile =file_name+".xml";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //String sql=args[3];</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; conn = DriverManager.getConnection("jdbc:oracle:thin:@"+args[0]+":1521:"+args[1], username,passwd);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //get database metadata<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DatabaseMetaData dbmd = conn.getMetaData();<br />&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //文本创建<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!xmlFile.isFile())<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlFile.createNewFile();&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; //以下生成的gb2312<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FileWriter fw = new FileWriter(xmlFile);&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("&lt;?xml version=\"1.0\" encoding=\"gb2312\"?&gt;"+"\n");&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("&lt;Document&gt;"+"\n"); <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\t"+"&lt;Events&gt;"+"\n");<br />&nbsp;&nbsp; fw.write("\t"+"\t"+"&lt;Event Name=\"PurchaseWareHouseIn\" MainAction=\"WareHouseIn\"&gt;"+"\n");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\t"+"\t"+"&lt;DataField&gt;"+"\n");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //生成UTF-8文件<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(path),"UTF-8");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OutputStreamWriter fw = new OutputStreamWriter(new FileOutputStream(xmlFile),"UTF-8");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;"+"\n");&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("&lt;Document&gt;"+"\n"); <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\t"+"&lt;Events&gt;"+"\n");<br />&nbsp;&nbsp; fw.write("\t"+"\t"+"&lt;Event Name=\"PurchaseWareHouseIn\" MainAction=\"WareHouseIn\"&gt;"+"\n");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\t"+"\t"+"&lt;DataField&gt;"+"\n");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; stmt = conn.prepareStatement("select * from&nbsp; "+tablename+" where "+columname+"=?") ;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //corporderid<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Execute the query to populate the ResultSet<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; stmt.setString(1,file_name);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rs = stmt.executeQuery();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //stmt = conn.createStatement();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // rs=stmt.executeQuery("select * from&nbsp; "+tablename);<br />&nbsp;&nbsp;&nbsp; //get resultset metadata&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ResultSetMetaData rsData = rs.getMetaData();&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int columncount=rsData.getColumnCount();<br />&nbsp;&nbsp;&nbsp; while (rs.next())<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\t"+"&lt;data ");<br />&nbsp;&nbsp; for (int i=1; i&lt;columncount ;i++ )<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String colName=rsData.getColumnName(i);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String colVal=rs.getString(i);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //System.out.println("&lt;"+colName+"&gt;");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write(colName+"=\"");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (colVal != null &amp;&amp; !colVal.equals("")) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write(colVal);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; };<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\" ");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("&gt;&lt;/data&gt;"+"\n");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\n"+"\t"+"\t"+"&lt;/DataField&gt;"+"\n");<br />&nbsp;&nbsp; &nbsp;&nbsp; fw.write("\t"+"\t"+"&lt;/Event&gt;"+"\n");&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("\t"+"&lt;/Events&gt;"+"\n");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fw.write("&lt;/Document&gt;"+"\n"); <br />&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; fw.flush();&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp; fw.close(); <br />&nbsp;&nbsp;&nbsp;&nbsp; rs.close();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception e) {&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.printStackTrace();&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp; <br />&nbsp;&nbsp;&nbsp; }<br />catch (SQLException e) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Darn! A SQL error: " + e.getMessage());<br />&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; }<br />}</p><img src ="http://www.cppblog.com/snowhill/aggbug/203418.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2013-09-24 22:43 <a href="http://www.cppblog.com/snowhill/articles/203418.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 对xml文件的操作二--使用Marshaller</title><link>http://www.cppblog.com/snowhill/articles/203390.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Mon, 23 Sep 2013 14:43:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/203390.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/203390.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/203390.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/203390.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/203390.html</trackback:ping><description><![CDATA[<p>//package com.helloweenvsfei.xml;</p>
<p>import java.io.File;<br />import javax.xml.bind.JAXBContext;<br />import javax.xml.bind.JAXBException;<br />import javax.xml.bind.Unmarshaller;<br />import javax.xml.bind.Marshaller;<br />import javax.xml.bind.annotation.XmlRootElement;<br />public class JAXBDemo {<br />&nbsp;public static void main(String[] args) {<br />&nbsp;&nbsp;// 创建xml文档对象，其保存在d盘<br />&nbsp;&nbsp;File xmlFile = new File("d:\\javasource\\xml\\test.xml");<br />&nbsp;&nbsp;//声明JAXBContext上下文对象<br />&nbsp;&nbsp;JAXBContext context;<br />&nbsp;&nbsp;try {<br />&nbsp;&nbsp;&nbsp;//通过指定映射的类创建上下文<br />&nbsp;&nbsp;&nbsp;context = JAXBContext.newInstance(Article.class);<br />&nbsp;&nbsp;//通过上下文创建java转化xml的对象Marshaller<br />&nbsp;&nbsp;Marshaller m = context.createMarshaller();<br />&nbsp;&nbsp;//创建xml中的数据<br />&nbsp;&nbsp;Article article = new Article();<br />&nbsp;&nbsp;article.setAuthor("Janet");<br />&nbsp;&nbsp;article.setDate("20080801");<br />&nbsp;&nbsp;article.setEmail("<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#106;&#97;&#110;&#101;&#116;&#118;&#115;&#102;&#101;&#105;&#64;&#121;&#97;&#104;&#111;&#111;&#46;&#99;&#111;&#109;&#46;&#99;&#110;">janetvsfei@yahoo.com.cn</a>");<br />&nbsp;&nbsp;article.setTitle("XML");<br />&nbsp;&nbsp;//将java对象转化到xml<br />&nbsp;&nbsp;m.marshal(article, xmlFile);<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;//通过上下文创建xml转化java的对象Unmarshaller<br />//&nbsp;&nbsp;&nbsp;Unmarshaller u = context.createUnmarshaller();<br />//&nbsp;&nbsp;&nbsp;Article article = (Article)u.unmarshal(xmlFile);<br />//&nbsp;&nbsp;&nbsp;System.out.println(article.getAuthor());<br />//&nbsp;&nbsp;&nbsp;System.out.println(article.getDate());<br />//&nbsp;&nbsp;&nbsp;System.out.println(article.getEmail());<br />//&nbsp;&nbsp;&nbsp;System.out.println(article.getTitle());<br />&nbsp;&nbsp;} catch (JAXBException e) {<br />&nbsp;&nbsp;&nbsp;e.printStackTrace();<br />&nbsp;&nbsp;}</p>
<p>&nbsp;}</p>
<p>}</p>
<p><br />@XmlRootElement<br />&nbsp;class Article {</p>
<p>&nbsp;private String title;</p>
<p>&nbsp;private String author;</p>
<p>&nbsp;private String email;</p>
<p>&nbsp;private String date;</p>
<p>&nbsp;public String getTitle() {<br />&nbsp;&nbsp;return title;<br />&nbsp;}</p>
<p>&nbsp;public void setTitle(String title) {<br />&nbsp;&nbsp;this.title = title;<br />&nbsp;}</p>
<p>&nbsp;public String getAuthor() {<br />&nbsp;&nbsp;return author;<br />&nbsp;}</p>
<p>&nbsp;public void setAuthor(String author) {<br />&nbsp;&nbsp;this.author = author;<br />&nbsp;}</p>
<p>&nbsp;public String getEmail() {<br />&nbsp;&nbsp;return email;<br />&nbsp;}</p>
<p>&nbsp;public void setEmail(String email) {<br />&nbsp;&nbsp;this.email = email;<br />&nbsp;}</p>
<p>&nbsp;public String getDate() {<br />&nbsp;&nbsp;return date;<br />&nbsp;}</p>
<p>&nbsp;public void setDate(String date) {<br />&nbsp;&nbsp;this.date = date;<br />&nbsp;}</p>
<p>}<br /></p><img src ="http://www.cppblog.com/snowhill/aggbug/203390.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2013-09-23 22:43 <a href="http://www.cppblog.com/snowhill/articles/203390.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 对xml的操作--jdk 1.6之前</title><link>http://www.cppblog.com/snowhill/articles/203004.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Wed, 04 Sep 2013 09:59:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/203004.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/203004.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/203004.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/203004.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/203004.html</trackback:ping><description><![CDATA[<p>package xml; <br />import java.io.FileOutputStream;<br />import java.io.OutputStreamWriter;<br />import java.io.Writer;<br />import java.util.Iterator;<br />import java.util.Vector;<br />import javax.xml.parsers.DocumentBuilder;<br />import javax.xml.parsers.DocumentBuilderFactory;<br />import javax.xml.transform.OutputKeys;<br />import javax.xml.transform.Result;<br />import javax.xml.transform.Source;<br />import javax.xml.transform.Transformer;<br />import javax.xml.transform.TransformerConfigurationException;<br />import javax.xml.transform.TransformerException;<br />import javax.xml.transform.TransformerFactory;<br />import javax.xml.transform.dom.DOMSource;<br />import javax.xml.transform.stream.StreamResult;<br />import org.w3c.dom.Document;<br />import org.w3c.dom.Element;<br />import org.w3c.dom.Node;<br />import org.w3c.dom.NodeList;<br />import org.w3c.dom.Text;<br />public class DomTest {<br />&nbsp;Vector students_Vector;<br />&nbsp;private Vector readXMLFile(String file) throws Exception {<br />&nbsp;if(file == null){<br />&nbsp; System.out.println("没找到文件!");<br />&nbsp; System.exit(1);<br />&nbsp; }<br />&nbsp; DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();<br />&nbsp; DocumentBuilder builder = dbf.newDocumentBuilder();<br />&nbsp; Document doc = builder.parse(file); // 获取到xml文件<br />&nbsp; Element root = doc.getDocumentElement(); // 获取根元素<br />&nbsp; NodeList students = root.getElementsByTagName("学生");<br />&nbsp; students_Vector = new Vector();<br />&nbsp; for (int i = 0; i &lt; students.getLength(); i++) {<br />&nbsp;&nbsp; // 一次取得每一个学生元素<br />&nbsp;&nbsp; Element ss = (Element) students.item(i);<br />&nbsp;&nbsp; // 创建一个学生的实例<br />&nbsp;&nbsp; student stu = new student();<br />&nbsp;&nbsp; stu.setSex(ss.getAttribute("性别"));<br />&nbsp;&nbsp; NodeList names = ss.getElementsByTagName("姓名");<br />&nbsp;&nbsp; Element e = (Element) names.item(0);<br />&nbsp;&nbsp; Node t = e.getFirstChild();<br />&nbsp;&nbsp; stu.setName(t.getNodeValue());<br />&nbsp;&nbsp; NodeList ages = ss.getElementsByTagName("年龄");<br />&nbsp;&nbsp; e = (Element) ages.item(0);<br />&nbsp;&nbsp; t = e.getFirstChild();<br />&nbsp;&nbsp; stu.setAge(Integer.parseInt(t.getNodeValue()));<br />&nbsp;&nbsp; students_Vector.add(stu);<br />&nbsp; }<br />&nbsp; return students_Vector;<br />&nbsp; }&nbsp; <br />&nbsp;// 写入ｘｍｌ文件<br />&nbsp;public static void callWriteXmlFile(Document doc, Writer w, String encoding) {<br />&nbsp; try {<br />&nbsp;&nbsp; Source source = new DOMSource(doc);<br />&nbsp;&nbsp; Result result = new StreamResult(w);<br />&nbsp;&nbsp; Transformer xformer = TransformerFactory.newInstance()<br />&nbsp;&nbsp;&nbsp;&nbsp; .newTransformer();<br />&nbsp;&nbsp; xformer.setOutputProperty(OutputKeys.ENCODING, encoding);<br />&nbsp;&nbsp; xformer.transform(source, result);<br />&nbsp; } catch (TransformerConfigurationException e) {<br />&nbsp;&nbsp; e.printStackTrace();<br />&nbsp; } catch (TransformerException e) {<br />&nbsp;&nbsp; e.printStackTrace();<br />&nbsp; }<br />&nbsp;}<br />&nbsp;private void writeXMLFile(String outfile) {<br />&nbsp; DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();<br />&nbsp; DocumentBuilder builder = null;<br />&nbsp; try {<br />&nbsp;&nbsp; builder = dbf.newDocumentBuilder();<br />&nbsp; } catch (Exception e) {<br />&nbsp; }<br />&nbsp; Document doc = builder.newDocument();<br />&nbsp; Element root = doc.createElement("学生花名册");<br />&nbsp; doc.appendChild(root); // 将根元素添加到文档上<br />&nbsp; // 获取学生信息<br />&nbsp; for (int i = 0; i &lt; students_Vector.size(); i++) {<br />&nbsp;&nbsp; student s = (student) students_Vector.get(i);<br />&nbsp;&nbsp; // 创建一个学生<br />&nbsp;&nbsp; Element stu = doc.createElement("学生");<br />&nbsp;&nbsp; stu.setAttribute("性别", s.getSex());<br />&nbsp;&nbsp; root.appendChild(stu);// 添加属性&nbsp;&nbsp; <br />&nbsp;&nbsp; // 创建文本姓名节点<br />&nbsp;&nbsp; Element name = doc.createElement("姓名");<br />&nbsp;&nbsp; stu.appendChild(name);<br />&nbsp;&nbsp; Text tname = doc.createTextNode(s.getName());<br />&nbsp;&nbsp; name.appendChild(tname);<br />&nbsp;&nbsp; <br />&nbsp;&nbsp; //创建文本年龄节点<br />&nbsp;&nbsp; Element age = doc.createElement("年龄");<br />&nbsp;&nbsp; stu.appendChild(age); // 将age添加到学生节点上<br />&nbsp;&nbsp; Text tage = doc.createTextNode(String.valueOf(s.getAge()));<br />&nbsp;&nbsp; age.appendChild(tage); // 将文本节点放在age节点上<br />&nbsp; }<br />&nbsp; try {<br />&nbsp;&nbsp; FileOutputStream fos = new FileOutputStream(outfile);<br />&nbsp;&nbsp; OutputStreamWriter outwriter = new OutputStreamWriter(fos);<br />&nbsp;&nbsp; // ((XmlDocument)doc).write(outwriter); //出错！<br />&nbsp;&nbsp; callWriteXmlFile(doc, outwriter, "gb2312");<br />&nbsp;&nbsp; outwriter.close();<br />&nbsp;&nbsp; fos.close();<br />&nbsp; } catch (Exception e) {<br />&nbsp;&nbsp; e.printStackTrace();<br />&nbsp; }<br />&nbsp;}<br />&nbsp;public static void main(String args[]) {<br />&nbsp; String str = "c:\\java\\test.xml";<br />&nbsp; DomTest t = new DomTest();<br />&nbsp; try {<br />&nbsp;&nbsp; Vector v = t.readXMLFile(str);<br />&nbsp;&nbsp; Iterator it = v.iterator();<br />&nbsp;&nbsp; while (it.hasNext()) {<br />&nbsp;&nbsp;&nbsp; student s = (student) it.next();<br />&nbsp;&nbsp;&nbsp; System.out.println(s.getName() + "\t" + s.getAge() + "\t"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; + s.getSex());<br />&nbsp;&nbsp; }<br />&nbsp; } catch (Exception e) {<br />&nbsp;&nbsp; e.printStackTrace();<br />&nbsp; }<br />&nbsp; String outfile = "stucopy.xml";<br />&nbsp; t.writeXMLFile(outfile);<br />&nbsp;}<br />}</p>
<p>class student{ <br />private String sex; <br />private String name; <br />private int age; </p>
<p>public int getAge() { <br />&nbsp; return age; <br />} <br />public void setAge(int age) { <br />&nbsp; this.age = age; <br />} <br />public void setSex(String s){sex=s;} <br />public String getSex(){return sex;} </p>
<p>public void setName(String n){name=n;} <br />public String getName(){return name;} <br />} <br />编译：javac -d . DomTest.java<br />调用：java xml.DomTest</p><img src ="http://www.cppblog.com/snowhill/aggbug/203004.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2013-09-04 17:59 <a href="http://www.cppblog.com/snowhill/articles/203004.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 中oracle 更新批处理</title><link>http://www.cppblog.com/snowhill/articles/170969.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Wed, 11 Apr 2012 14:48:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/170969.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/170969.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/170969.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/170969.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/170969.html</trackback:ping><description><![CDATA[与常规的jdbc更新处理只多了一个设置批值的步聚，相关代码如下： 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;oracle.jdbc.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img id="Codehighlighter1_65_1823_Open_Image" onclick="this.style.display='none'; Codehighlighter1_65_1823_Open_Text.style.display='none'; Codehighlighter1_65_1823_Closed_Image.style.display='inline'; Codehighlighter1_65_1823_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_65_1823_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_65_1823_Closed_Text.style.display='none'; Codehighlighter1_65_1823_Open_Image.style.display='inline'; Codehighlighter1_65_1823_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;javabatch&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_65_1823_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_65_1823_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;TOTAL_NUM_ROWS</span><span style="color: #000000">=</span><span style="color: #000000">2000</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;BATCH_SIZE</span><span style="color: #000000">=</span><span style="color: #000000">10</span><span style="color: #000000">;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main&nbsp;(String&nbsp;[]&nbsp;args)&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;SQLException<br /><img id="Codehighlighter1_219_833_Open_Image" onclick="this.style.display='none'; Codehighlighter1_219_833_Open_Text.style.display='none'; Codehighlighter1_219_833_Closed_Image.style.display='inline'; Codehighlighter1_219_833_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_219_833_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_219_833_Closed_Text.style.display='none'; Codehighlighter1_219_833_Open_Image.style.display='inline'; Codehighlighter1_219_833_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_219_833_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_219_833_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DriverManager.registerDriver(</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;OracleDriver());<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Connection&nbsp;myconnection&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">DriverManager.getConnection(</span><span style="color: #000000">"</span><span style="color: #000000">jdbc:oracle:thin:@127.0.0.1:1521:progather</span><span style="color: #000000">"</span><span style="color: #000000">,<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">username</span><span style="color: #000000">"</span><span style="color: #000000">,<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"passord</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myconnection.setAutoCommit(</span><span style="color: #0000ff">false</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Statement&nbsp;mystatement</span><span style="color: #000000">=</span><span style="color: #000000">myconnection.createStatement();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mystatement.execute(</span><span style="color: #000000">"</span><span style="color: #000000">truncate&nbsp;table&nbsp;tmp_cxf_1</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">Insert&nbsp;into&nbsp;table&nbsp;tmp_cxf_1&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">TOTAL_NUM_ROWS</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;without&nbsp;batching</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;insertrows(myconnection,</span><span style="color: #0000ff">false</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">Insert&nbsp;into&nbsp;tmp_cxf_1&nbsp;with&nbsp;update&nbsp;batching</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;insertrows(myconnection,</span><span style="color: #0000ff">true</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mystatement.close();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myconnection.close();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #008000">//</span><span style="color: #008000">end&nbsp;of&nbsp;main</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;insertrows(Connection&nbsp;myconnection,</span><span style="color: #0000ff">boolean</span><span style="color: #000000">&nbsp;batching)&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;SQLException<br /><img id="Codehighlighter1_944_1809_Open_Image" onclick="this.style.display='none'; Codehighlighter1_944_1809_Open_Text.style.display='none'; Codehighlighter1_944_1809_Closed_Image.style.display='inline'; Codehighlighter1_944_1809_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_944_1809_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_944_1809_Closed_Text.style.display='none'; Codehighlighter1_944_1809_Open_Image.style.display='inline'; Codehighlighter1_944_1809_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_944_1809_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_944_1809_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OraclePreparedStatement&nbsp;myoracleprepastatment&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">(OraclePreparedStatement)myconnection.prepareStatement(</span><span style="color: #000000">"</span><span style="color: #000000">insert&nbsp;into&nbsp;tmp_cxf_1&nbsp;(ind_code,sec_code)&nbsp;values&nbsp;(?,?)</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(batching)<br /><img id="Codehighlighter1_1127_1250_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1127_1250_Open_Text.style.display='none'; Codehighlighter1_1127_1250_Closed_Image.style.display='inline'; Codehighlighter1_1127_1250_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1127_1250_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1127_1250_Closed_Text.style.display='none'; Codehighlighter1_1127_1250_Open_Image.style.display='inline'; Codehighlighter1_1127_1250_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1127_1250_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1127_1250_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">setting&nbsp;the&nbsp;batch&nbsp;value&nbsp;to&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">BATCH_SIZE);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myoracleprepastatment.setExecuteBatch(BATCH_SIZE);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">batch&nbsp;value=</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">myoracleprepastatment.getExecuteBatch());<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">long</span><span style="color: #000000">&nbsp;start_time</span><span style="color: #000000">=</span><span style="color: #000000">System.currentTimeMillis();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;count</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;count</span><span style="color: #000000">&lt;</span><span style="color: #000000">TOTAL_NUM_ROWS;count</span><span style="color: #000000">++</span><span style="color: #000000">)<br /><img id="Codehighlighter1_1427_1580_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1427_1580_Open_Text.style.display='none'; Codehighlighter1_1427_1580_Closed_Image.style.display='inline'; Codehighlighter1_1427_1580_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1427_1580_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1427_1580_Closed_Text.style.display='none'; Codehighlighter1_1427_1580_Open_Image.style.display='inline'; Codehighlighter1_1427_1580_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1427_1580_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_1427_1580_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myoracleprepastatment.setInt(</span><span style="color: #000000">1</span><span style="color: #000000">,&nbsp;count);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myoracleprepastatment.setInt(</span><span style="color: #000000">2</span><span style="color: #000000">,&nbsp;count</span><span style="color: #000000">+</span><span style="color: #000000">100</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;rowsInserted</span><span style="color: #000000">=</span><span style="color: #000000">myoracleprepastatment.executeUpdate();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">long</span><span style="color: #000000">&nbsp;end_time</span><span style="color: #000000">=</span><span style="color: #000000">System.currentTimeMillis();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">Total&nbsp;time&nbsp;for&nbsp;inserting&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">TOTAL_NUM_ROWS</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">rows&nbsp;was&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">(end_time</span><span style="color: #000000">-</span><span style="color: #000000">start_time)</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;millsceconds</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myconnection.rollback();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myoracleprepastatment.close();<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #008000">//</span><span style="color: #008000">insertrows</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" /></span><span style="color: #000000">}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span></div><br /><img src ="http://www.cppblog.com/snowhill/aggbug/170969.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2012-04-11 22:48 <a href="http://www.cppblog.com/snowhill/articles/170969.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jdbc连接池的使用</title><link>http://www.cppblog.com/snowhill/articles/170207.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Thu, 05 Apr 2012 14:23:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/170207.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/170207.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/170207.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/170207.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/170207.html</trackback:ping><description><![CDATA[<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px">
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;javax.sql.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;oracle.jdbc.pool.OracleConnectionPoolDataSource;<br /><img id="Codehighlighter1_115_2201_Open_Image" onclick="this.style.display='none'; Codehighlighter1_115_2201_Open_Text.style.display='none'; Codehighlighter1_115_2201_Closed_Image.style.display='inline'; Codehighlighter1_115_2201_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_115_2201_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_115_2201_Closed_Text.style.display='none'; Codehighlighter1_115_2201_Open_Image.style.display='inline'; Codehighlighter1_115_2201_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;jdbc&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_115_2201_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_115_2201_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_158_1423_Open_Image" onclick="this.style.display='none'; Codehighlighter1_158_1423_Open_Text.style.display='none'; Codehighlighter1_158_1423_Closed_Image.style.display='inline'; Codehighlighter1_158_1423_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_158_1423_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_158_1423_Closed_Text.style.display='none'; Codehighlighter1_158_1423_Open_Image.style.display='inline'; Codehighlighter1_158_1423_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String&nbsp;args[])&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_158_1423_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_158_1423_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_167_224_Open_Image" onclick="this.style.display='none'; Codehighlighter1_167_224_Open_Text.style.display='none'; Codehighlighter1_167_224_Closed_Image.style.display='inline'; Codehighlighter1_167_224_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_167_224_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_167_224_Closed_Text.style.display='none'; Codehighlighter1_167_224_Open_Image.style.display='inline'; Codehighlighter1_167_224_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_167_224_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_167_224_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Class.forName(</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 id="Codehighlighter1_246_315_Open_Image" onclick="this.style.display='none'; Codehighlighter1_246_315_Open_Text.style.display='none'; Codehighlighter1_246_315_Closed_Image.style.display='inline'; Codehighlighter1_246_315_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_246_315_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_246_315_Closed_Text.style.display='none'; Codehighlighter1_246_315_Open_Image.style.display='inline'; Codehighlighter1_246_315_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(Exception&nbsp;e)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_246_315_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_246_315_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">异常</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;e.getMessage());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.exit(</span><span style="color: #000000">1</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_324_1327_Open_Image" onclick="this.style.display='none'; Codehighlighter1_324_1327_Open_Text.style.display='none'; Codehighlighter1_324_1327_Closed_Image.style.display='inline'; Codehighlighter1_324_1327_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_324_1327_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_324_1327_Closed_Text.style.display='none'; Codehighlighter1_324_1327_Open_Image.style.display='inline'; Codehighlighter1_324_1327_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_324_1327_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_324_1327_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">create&nbsp;connection&nbsp;pool&nbsp;data&nbsp;source&nbsp;object</span><span style="color: #008000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleConnectionPoolDataSource&nbsp;myOCPDS</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;OracleConnectionPoolDataSource();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myOCPDS.setServerName(</span><span style="color: #000000">"</span><span style="color: #000000">192.168.12.20</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myOCPDS.setDatabaseName(</span><span style="color: #000000">"</span><span style="color: #000000">progather</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myOCPDS.setPortNumber(</span><span style="color: #000000">1521</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myOCPDS.setDriverType(</span><span style="color: #000000">"</span><span style="color: #000000">thin</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myOCPDS.setUser(</span><span style="color: #000000">"</span><span style="color: #000000">username</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myOCPDS.setPassword(</span><span style="color: #000000">"</span><span style="color: #000000">password</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">create&nbsp;a&nbsp;pool&nbsp;connection</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PooledConnection&nbsp;myPooledConnection</span><span style="color: #000000">=</span><span style="color: #000000">myOCPDS.getPooledConnection();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">request&nbsp;a&nbsp;connection&nbsp;instance</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Connection&nbsp;myconnection</span><span style="color: #000000">=</span><span style="color: #000000">myPooledConnection.getConnection();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Displaycustomer(myconnection,</span><span style="color: #000000">401203410</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myconnection.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">close&nbsp;the&nbsp;connection&nbsp;instance</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">request&nbsp;another&nbsp;connection</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myconnection</span><span style="color: #000000">=</span><span style="color: #000000">myPooledConnection.getConnection();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Displaycustomer(myconnection,</span><span style="color: #000000">401203411</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myconnection.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">close&nbsp;another&nbsp;connection&nbsp;instance</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myPooledConnection.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_1352_1419_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1352_1419_Open_Text.style.display='none'; Codehighlighter1_1352_1419_Closed_Image.style.display='inline'; Codehighlighter1_1352_1419_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1352_1419_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1352_1419_Closed_Text.style.display='none'; Codehighlighter1_1352_1419_Open_Image.style.display='inline'; Codehighlighter1_1352_1419_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;e)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1352_1419_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1352_1419_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">Darn!&nbsp;A&nbsp;SQL&nbsp;error:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;e.getMessage());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;Displaycustomer(Connection&nbsp;myconnection,</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;id)&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;SQLException<br /><img id="Codehighlighter1_1516_2199_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1516_2199_Open_Text.style.display='none'; Codehighlighter1_1516_2199_Closed_Image.style.display='inline'; Codehighlighter1_1516_2199_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1516_2199_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1516_2199_Closed_Text.style.display='none'; Codehighlighter1_1516_2199_Open_Image.style.display='inline'; Codehighlighter1_1516_2199_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1516_2199_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1516_2199_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Statement&nbsp;mystatement</span><span style="color: #000000">=</span><span style="color: #000000">myconnection.createStatement();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;sql;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;org_uni_code;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;chi_short_name;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;org_chi_name;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">select&nbsp;org_uni_code,chi_short_name,org_chi_name&nbsp;from&nbsp;ccxe2.pub_org_info&nbsp;where&nbsp;area_uni_code=</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">id;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;myresultset</span><span style="color: #000000">=</span><span style="color: #000000">mystatement.executeQuery(sql);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(myresultset.next())<br /><img id="Codehighlighter1_1846_2150_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1846_2150_Open_Text.style.display='none'; Codehighlighter1_1846_2150_Closed_Image.style.display='inline'; Codehighlighter1_1846_2150_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1846_2150_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1846_2150_Closed_Text.style.display='none'; Codehighlighter1_1846_2150_Open_Image.style.display='inline'; Codehighlighter1_1846_2150_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1846_2150_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1846_2150_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org_uni_code</span><span style="color: #000000">=</span><span style="color: #000000">myresultset.getInt(</span><span style="color: #000000">"</span><span style="color: #000000">org_uni_code</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;chi_short_name</span><span style="color: #000000">=</span><span style="color: #000000">myresultset.getString(</span><span style="color: #000000">"</span><span style="color: #000000">chi_short_name</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org_chi_name</span><span style="color: #000000">=</span><span style="color: #000000">myresultset.getString(</span><span style="color: #000000">"</span><span style="color: #000000">org_chi_name</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">org_unit_code&nbsp;is&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">org_uni_code</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;chi_short_name:</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;chi_short_name</span><span style="color: #000000">+</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;org_chi_name:</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;org_chi_name);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myresultset.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mystatement.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span></div></div><img src ="http://www.cppblog.com/snowhill/aggbug/170207.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2012-04-05 22:23 <a href="http://www.cppblog.com/snowhill/articles/170207.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>myeclipse 中svn插件加载</title><link>http://www.cppblog.com/snowhill/articles/169500.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Fri, 30 Mar 2012 03:19:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/169500.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/169500.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/169500.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/169500.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/169500.html</trackback:ping><description><![CDATA[1、从官网下载site-1.6.9.zip文件,网址是:subclipse.tigris.org,<br />
2、从中解压出features与plugins文件夹，复制到E:\MyEclipse\myPlugin\svn里面，其它的*.xml文件不要。<br />
3、在E:\MyEclipse\MyEclipse8\dropins下新建文件svn.link,内容是:path=E:\\MyEclipse\\myPlugin\\svn保存。<br />
4、删除E:\MyEclipse\MyEclipse8.5\configuration\org.eclipse.update文件夹<br />
5、重启myeclipse就一切正常了。
<img src ="http://www.cppblog.com/snowhill/aggbug/169500.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2012-03-30 11:19 <a href="http://www.cppblog.com/snowhill/articles/169500.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java blob/clob</title><link>http://www.cppblog.com/snowhill/articles/168349.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Mon, 19 Mar 2012 16:12:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/168349.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/168349.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/168349.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/168349.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/168349.html</trackback:ping><description><![CDATA[<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #808080">//</span><span style="color: #800000; font-weight: bold">2012</span><span style="color: #808080">-</span><span style="color: #800000; font-weight: bold">03</span><span style="color: #808080">-</span><span style="color: #800000; font-weight: bold">18</span><span style="color: #000000">　针对oracle&nbsp;数据库中大对象的读写&nbsp;getBinaryOutPutStream()<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />import&nbsp;java.sql.</span><span style="color: #808080">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />import&nbsp;java.io.</span><span style="color: #808080">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #808080">//</span><span style="color: #000000">声明clob</span><span style="color: #808080">/</span><span style="color: #000000">blob必须要导入oracle.sql.</span><span style="color: #808080">*</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />import&nbsp;oracle.sql.</span><span style="color: #808080">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;class&nbsp;jdbc_blob&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;static&nbsp;void&nbsp;main&nbsp;(String&nbsp;args</span><span style="color: #ff0000">[]</span><span style="color: #000000">)&nbsp;throws&nbsp;SQLException,IOException&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;try&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Class.forName("oracle.jdbc.driver.OracleDriver");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;catch&nbsp;(Exception&nbsp;e)&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("异常"</span><span style="color: #808080">+</span><span style="color: #000000">e.getMessage());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.</span><span style="color: #0000ff">exit</span><span style="color: #000000">(</span><span style="color: #800000; font-weight: bold">1</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;Connection&nbsp;conn&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;Statement&nbsp;stmt&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;rset&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;rs&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">定义文件存放<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;sourceDirectory</span><span style="color: #808080">=</span><span style="color: #000000">"d:\\javasource\\db\\";<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">String&nbsp;filename</span><span style="color: #808080">=</span><span style="color: #000000">sourceDirectory</span><span style="color: #808080">+</span><span style="color: #000000">"textecontent.txt";<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;try&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;DriverManager.getConnection(<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"jdbc:oracle:thin:</span><span style="color: #008000">@192</span><span style="color: #000000">.</span><span style="color: #800000; font-weight: bold">168.1</span><span style="color: #000000">.</span><span style="color: #800000; font-weight: bold">102</span><span style="color: #000000">:</span><span style="color: #800000; font-weight: bold">1521</span><span style="color: #000000">:ccxe",&nbsp;"scott",&nbsp;"test");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">diable&nbsp;auto&nbsp;</span><span style="color: #0000ff">commit</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn.setAutoCommit(false);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">建立statement&nbsp;对象<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stmt</span><span style="color: #808080">=</span><span style="color: #000000">conn.createStatement();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writeCLOB(stmt,sourceDirectory</span><span style="color: #808080">+</span><span style="color: #000000">"textcontent.txt");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writeBLOB(stmt,sourceDirectory</span><span style="color: #808080">+</span><span style="color: #000000">"Java_jdbc数据库连接池总结.doc");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">addBFILE(stmt,"SAMPLE_FILE_DIR","textcontent.txt");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">addBFILE(stmt,"SAMPLE_FILE_DIR","Java_jdbc数据库连接池总结.doc");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stmt.</span><span style="color: #0000ff">close</span><span style="color: #000000">();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn.</span><span style="color: #0000ff">close</span><span style="color: #000000">();&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">关闭数据库连接<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;catch&nbsp;(SQLException&nbsp;e)<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("Darn!&nbsp;A&nbsp;SQL&nbsp;error:&nbsp;"&nbsp;</span><span style="color: #808080">+</span><span style="color: #000000">&nbsp;e.getMessage());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;}<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #808080">//</span><span style="color: #000000">定义方法。<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />private&nbsp;static&nbsp;void&nbsp;writeCLOB(Statement&nbsp;stmt,String&nbsp;filename)&nbsp;throws&nbsp;SQLException,IOException<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;stmt.executeUpdate("</span><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;clob_content(</span><span style="color: #ff00ff">file_name</span><span style="color: #000000">,clob_column)"</span><span style="color: #808080">+</span><span style="color: #000000">"&nbsp;</span><span style="color: #0000ff">values</span><span style="color: #000000">&nbsp;(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">"+filename+"</span><span style="color: #ff0000">'</span><span style="color: #000000">,EMPTY_CLOB())");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;clobResultSet</span><span style="color: #808080">=</span><span style="color: #000000">stmt.executeQuery("</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;clob_column&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;clob_content&nbsp;");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(&nbsp;&nbsp;&nbsp;&nbsp;clobResultSet.</span><span style="color: #0000ff">next</span><span style="color: #000000">()){<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;Clob&nbsp;myClob</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;clobResultSet.getClob("clob_column");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />BufferedReader&nbsp;myBufferedReader&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;new&nbsp;BufferedReader(&nbsp;new&nbsp;InputStreamReader(new&nbsp;FileInputStream(filename)));<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />PrintWriter&nbsp;out&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;new&nbsp;PrintWriter(new&nbsp;BufferedWriter(((oracle.sql.CLOB)&nbsp;myClob).setCharacterStream(</span><span style="color: #800000; font-weight: bold">0</span><span style="color: #000000">)));<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />String&nbsp;</span><span style="color: #ff00ff">str</span><span style="color: #808080">=</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />System.out.println("开始写<img src="http://www.cppblog.com/Images/dot.gif"  alt="" />");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;((</span><span style="color: #ff00ff">str</span><span style="color: #808080">=</span><span style="color: #000000">myBufferedReader.readLine())</span><span style="color: #808080">!=</span><span style="color: #0000ff">null</span><span style="color: #000000">)<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">myClob.putChars(position,textBuffer);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;out.println(</span><span style="color: #ff00ff">str</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #ff00ff">str</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">position</span><span style="color: #808080">+=</span><span style="color: #000000">charsRead;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />}<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />out.</span><span style="color: #0000ff">close</span><span style="color: #000000">();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />myBufferedReader.</span><span style="color: #0000ff">close</span><span style="color: #000000">();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />stmt.</span><span style="color: #0000ff">execute</span><span style="color: #000000">("</span><span style="color: #0000ff">commit</span><span style="color: #000000">");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span><span style="color: #808080">//</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />System.out.println("write&nbsp;content&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">file</span><span style="color: #000000">"&nbsp;</span><span style="color: #808080">+</span><span style="color: #000000">&nbsp;filename</span><span style="color: #808080">+</span><span style="color: #000000">"&nbsp;</span><span style="color: #0000ff">to</span><span style="color: #000000">&nbsp;clob");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />}</span><span style="color: #808080">//</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">of</span><span style="color: #000000">&nbsp;writeCLOB;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />private&nbsp;static&nbsp;void&nbsp;writeBLOB(Statement&nbsp;stmt,String&nbsp;filename)&nbsp;throws&nbsp;SQLException,IOException<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;stmt.executeUpdate("</span><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;blob_content&nbsp;(</span><span style="color: #ff00ff">file_name</span><span style="color: #000000">,blob_column)"</span><span style="color: #808080">+</span><span style="color: #000000">"&nbsp;</span><span style="color: #0000ff">values</span><span style="color: #000000">&nbsp;(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">&nbsp;"+filename&nbsp;+"</span><span style="color: #ff0000">'</span><span style="color: #000000">,&nbsp;EMPTY_BLOB())");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(filename);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;blobResultSet</span><span style="color: #808080">=</span><span style="color: #000000">stmt.executeQuery("</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;blob_column&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;blob_content&nbsp;");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(blobResultSet.</span><span style="color: #0000ff">next</span><span style="color: #000000">());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(blobResultSet.</span><span style="color: #0000ff">next</span><span style="color: #000000">()){&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;Blob&nbsp;myBlob</span><span style="color: #808080">=</span><span style="color: #000000">blobResultSet.getBlob("blob_column");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;OutputStream&nbsp;out</span><span style="color: #808080">=</span><span style="color: #000000">myBlob.setBinaryStream(</span><span style="color: #800000; font-weight: bold">0</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold">int</span><span style="color: #000000">&nbsp;chunksize</span><span style="color: #808080">=</span><span style="color: #000000">((oracle.sql.BLOB)myBlob).getBufferSize();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;byte</span><span style="color: #ff0000">[]</span><span style="color: #000000">&nbsp;byteBuffer</span><span style="color: #808080">=</span><span style="color: #000000">new&nbsp;byte</span><span style="color: #ff0000">[</span><span style="color: #ff0000">chunksize</span><span style="color: #ff0000">]</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">FileInputStream&nbsp;myFileInputStream</span><span style="color: #808080">=</span><span style="color: #000000">new&nbsp;&nbsp;FileInputStream(filename);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;BufferedInputStream&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;new&nbsp;BufferedInputStream(new&nbsp;FileInputStream(filename),&nbsp;chunksize);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold">int</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">count</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">.</span><span style="color: #0000ff">read</span><span style="color: #000000">(byteBuffer,&nbsp;</span><span style="color: #800000; font-weight: bold">0</span><span style="color: #000000">,&nbsp;chunksize);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000; font-weight: bold">int</span><span style="color: #000000">&nbsp;bytesRead</span><span style="color: #808080">=</span><span style="color: #800000; font-weight: bold">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #ff00ff">count</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(</span><span style="color: #ff00ff">count</span><span style="color: #808080">!=-</span><span style="color: #800000; font-weight: bold">1</span><span style="color: #000000">)<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;out.write(byteBuffer,</span><span style="color: #800000; font-weight: bold">0</span><span style="color: #000000">,&nbsp;</span><span style="color: #ff00ff">count</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;bytesRead</span><span style="color: #808080">+=</span><span style="color: #ff00ff">count</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("处理了&nbsp;"&nbsp;</span><span style="color: #808080">+</span><span style="color: #000000">&nbsp;bytesRead&nbsp;</span><span style="color: #808080">+</span><span style="color: #000000">&nbsp;"&nbsp;字节");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #ff00ff">count</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">.</span><span style="color: #0000ff">read</span><span style="color: #000000">(byteBuffer,&nbsp;</span><span style="color: #800000; font-weight: bold">0</span><span style="color: #000000">,&nbsp;chunksize);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("处理了&nbsp;"&nbsp;</span><span style="color: #808080">+</span><span style="color: #000000">&nbsp;bytesRead&nbsp;</span><span style="color: #808080">+</span><span style="color: #000000">&nbsp;"&nbsp;字节,成功");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;myBlob.putBytes(position,byteBuffer);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">//</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;position</span><span style="color: #808080">+=</span><span style="color: #000000">bytesRead;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.</span><span style="color: #0000ff">close</span><span style="color: #000000">();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">.</span><span style="color: #0000ff">close</span><span style="color: #000000">();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;stmt.</span><span style="color: #0000ff">execute</span><span style="color: #000000">("</span><span style="color: #0000ff">commit</span><span style="color: #000000">");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("write&nbsp;content&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">file</span><span style="color: #000000">"</span><span style="color: #808080">+</span><span style="color: #000000">filename</span><span style="color: #808080">+</span><span style="color: #000000">"</span><span style="color: #0000ff">to</span><span style="color: #000000">&nbsp;blob");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />}</span><span style="color: #808080">//</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">of</span><span style="color: #000000">&nbsp;writeBLOB();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />private&nbsp;static&nbsp;void&nbsp;addBFILE(Statement&nbsp;stmt,String&nbsp;directory,String&nbsp;filename)&nbsp;throws&nbsp;SQLException{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;sql;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;sql</span><span style="color: #808080">=</span><span style="color: #000000">"</span><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;bfile_content(</span><span style="color: #ff00ff">file_name</span><span style="color: #000000">,bfile_column)"</span><span style="color: #808080">+</span><span style="color: #000000">"&nbsp;</span><span style="color: #0000ff">values</span><span style="color: #000000">&nbsp;(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">"+filename&nbsp;+"</span><span style="color: #ff0000">'</span><span style="color: #000000">,"</span><span style="color: #808080">+</span><span style="color: #000000">"BFILENAME(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">"+directory+"</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">"+filename+"</span><span style="color: #ff0000">'</span><span style="color: #000000">))";<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(sql);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;stmt.executeUpdate&nbsp;(sql);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;stmt.</span><span style="color: #0000ff">execute</span><span style="color: #000000">("</span><span style="color: #0000ff">commit</span><span style="color: #000000">");<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("added&nbsp;pointer&nbsp;</span><span style="color: #0000ff">to</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">file</span><span style="color: #000000">&nbsp;"</span><span style="color: #808080">+</span><span style="color: #000000">filename</span><span style="color: #808080">+</span><span style="color: #000000">"&nbsp;</span><span style="color: #0000ff">to</span><span style="color: #000000">&nbsp;BFILE&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">database</span><span style="color: #000000">&nbsp;directory&nbsp;&nbsp;"</span><span style="color: #808080">+</span><span style="color: #000000">directory);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />}</span><span style="color: #808080">//</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">of</span><span style="color: #000000">&nbsp;addbfile();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />}<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span></div>当然。前期你得准备相关表和文件<img src ="http://www.cppblog.com/snowhill/aggbug/168349.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2012-03-20 00:12 <a href="http://www.cppblog.com/snowhill/articles/168349.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java - log4j</title><link>http://www.cppblog.com/snowhill/articles/168130.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Fri, 16 Mar 2012 14:27:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/168130.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/168130.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/168130.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/168130.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/168130.html</trackback:ping><description><![CDATA[一下载log4j类。<br /><a href="http://www.apache.org/dyn/closer.cgi/logging/log4j/1.2.16/apache-log4j-1.2.16.zip">http://www.apache.org/dyn/closer.cgi/logging/log4j/1.2.16/apache-log4j-1.2.16.zip</a><br />放到你定义的classpath中去<br />二编写log4j.properties，放到你class文件生成的目录<br />#定义输出级别<br />log4j.rootLogger=ERROR,A1<br />#指定布局以控制台形式输出<br />log4j.appender.A1=org.apache.log4j.ConsoleAppender<br />#自适应输出方式<br />log4j.appender.A1.layout=org.apache.log4j.PatternLayout<br />#定义输出样式%L 输出错误所在行数 %c:类的全名 %m 具体信息 %n 换行<br />log4j.appender.A1.layout.ConversionPattern=%-4r %-5p %L %d{yyyy-MM-dd HH:mm:ssS} %c %m%n<br />三编写测试程序 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.log4j.Logger;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.log4j.BasicConfigurator;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.log4j.Level;<br /><img id="Codehighlighter1_129_451_Open_Image" onclick="this.style.display='none'; Codehighlighter1_129_451_Open_Text.style.display='none'; Codehighlighter1_129_451_Closed_Image.style.display='inline'; Codehighlighter1_129_451_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_129_451_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_129_451_Closed_Text.style.display='none'; Codehighlighter1_129_451_Open_Image.style.display='inline'; Codehighlighter1_129_451_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;Log4jTest&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_129_451_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_129_451_Open_Text"><span style="color: #000000">{<br /><img id="Codehighlighter1_170_439_Open_Image" onclick="this.style.display='none'; Codehighlighter1_170_439_Open_Text.style.display='none'; Codehighlighter1_170_439_Closed_Image.style.display='inline'; Codehighlighter1_170_439_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_170_439_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_170_439_Closed_Text.style.display='none'; Codehighlighter1_170_439_Open_Image.style.display='inline'; Codehighlighter1_170_439_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String[]&nbsp;args)</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_170_439_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_170_439_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Logger&nbsp;log</span><span style="color: #000000">=</span><span style="color: #000000">Logger.getLogger(Log4jTest.</span><span style="color: #0000ff">class</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">100</span><span style="color: #000000">;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /><img id="Codehighlighter1_248_434_Open_Image" onclick="this.style.display='none'; Codehighlighter1_248_434_Open_Text.style.display='none'; Codehighlighter1_248_434_Closed_Image.style.display='inline'; Codehighlighter1_248_434_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_248_434_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_248_434_Closed_Text.style.display='none'; Codehighlighter1_248_434_Open_Image.style.display='inline'; Codehighlighter1_248_434_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_248_434_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_248_434_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;j</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;j</span><span style="color: #000000">&lt;</span><span style="color: #000000">100</span><span style="color: #000000">;j</span><span style="color: #000000">++</span><span style="color: #000000">&nbsp;)<br /><img id="Codehighlighter1_281_398_Open_Image" onclick="this.style.display='none'; Codehighlighter1_281_398_Open_Text.style.display='none'; Codehighlighter1_281_398_Closed_Image.style.display='inline'; Codehighlighter1_281_398_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_281_398_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_281_398_Closed_Text.style.display='none'; Codehighlighter1_281_398_Open_Image.style.display='inline'; Codehighlighter1_281_398_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_281_398_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_281_398_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(log.isDebugEnabled())<br /><img id="Codehighlighter1_317_362_Open_Image" onclick="this.style.display='none'; Codehighlighter1_317_362_Open_Text.style.display='none'; Codehighlighter1_317_362_Closed_Image.style.display='inline'; Codehighlighter1_317_362_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_317_362_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_317_362_Closed_Text.style.display='none'; Codehighlighter1_317_362_Open_Image.style.display='inline'; Codehighlighter1_317_362_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_317_362_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_317_362_Open_Text"><span style="color: #000000">{<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log.debug(</span><span style="color: #000000">"</span><span style="color: #000000">开始计算</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">i</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">*</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">j</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">次运算!</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;&nbsp;&nbsp;&nbsp;log.warn("以warn级别的输出!");</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">log.error("以error级别的输出!");</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #008000">//</span><span style="color: #008000">end&nbsp;main</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" /></span><span style="color: #000000">}</span></span><span style="color: #000000"><br /><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span></div><br />参考：<br /><a href="http://www.blogjava.net/hwpok/archive/2008/08/23/223891.html">http://www.blogjava.net/hwpok/archive/2008/08/23/223891.html</a><br /><a href="http://logging.apache.org/log4j/1.2/manual.html">http://logging.apache.org/log4j/1.2/manual.html</a> <img src ="http://www.cppblog.com/snowhill/aggbug/168130.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2012-03-16 22:27 <a href="http://www.cppblog.com/snowhill/articles/168130.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 存储过程调用</title><link>http://www.cppblog.com/snowhill/articles/167453.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Thu, 08 Mar 2012 15:41:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/167453.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/167453.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/167453.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/167453.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/167453.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img id="Codehighlighter1_42_1335_Open_Image" onclick="this.style.display='none'; Codehighlighter1_42_1335_Open_Text.style.display='none'; Codehighlighter1_42_1335_Closed_Image.style.display='inline'; Codehighlighter1_42_1335_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_42_1335_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_42_1335_Closed_Text.style.display='none'; Codehighlighter1_42_1335_Open_Image.style.display='inline'; Codehighlighter1_42_1335_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;jdbc_prc&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_42_1335_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_42_1335_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_86_1333_Open_Image" onclick="this.style.display='none'; Codehighlighter1_86_1333_Open_Text.style.display='none'; Codehighlighter1_86_1333_Closed_Image.style.display='inline'; Codehighlighter1_86_1333_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_86_1333_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_86_1333_Closed_Text.style.display='none'; Codehighlighter1_86_1333_Open_Image.style.display='inline'; Codehighlighter1_86_1333_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String&nbsp;args[])&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_86_1333_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_86_1333_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_97_159_Open_Image" onclick="this.style.display='none'; Codehighlighter1_97_159_Open_Text.style.display='none'; Codehighlighter1_97_159_Closed_Image.style.display='inline'; Codehighlighter1_97_159_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_97_159_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_97_159_Closed_Text.style.display='none'; Codehighlighter1_97_159_Open_Image.style.display='inline'; Codehighlighter1_97_159_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_97_159_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_97_159_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Class.forName(</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 id="Codehighlighter1_181_256_Open_Image" onclick="this.style.display='none'; Codehighlighter1_181_256_Open_Text.style.display='none'; Codehighlighter1_181_256_Closed_Image.style.display='inline'; Codehighlighter1_181_256_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_181_256_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_181_256_Closed_Text.style.display='none'; Codehighlighter1_181_256_Open_Image.style.display='inline'; Codehighlighter1_181_256_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(Exception&nbsp;e)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_181_256_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_181_256_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">异常</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">e.getMessage());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.exit(</span><span style="color: #000000">1</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;Connection&nbsp;conn&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;Statement&nbsp;stmt&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;rset&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;rs&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">PreparedStatement&nbsp;pstmt;</span><span style="color: #008000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;sql;<br /><img id="Codehighlighter1_412_880_Open_Image" onclick="this.style.display='none'; Codehighlighter1_412_880_Open_Text.style.display='none'; Codehighlighter1_412_880_Closed_Image.style.display='inline'; Codehighlighter1_412_880_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_412_880_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_412_880_Closed_Text.style.display='none'; Codehighlighter1_412_880_Open_Image.style.display='inline'; Codehighlighter1_412_880_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_412_880_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_412_880_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;DriverManager.getConnection(<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">jdbc:oracle:thin:@127.0.0.1:1521:ccxe</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">scott</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">test</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">conn.prepareStatement</span><span style="color: #008000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CallableStatement&nbsp;myCallableStatement</span><span style="color: #000000">=</span><span style="color: #000000">conn.prepareCall(<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">{call&nbsp;update_salgrade(?,?,?)}</span><span style="color: #000000">"</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCallableStatement.setInt(</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">7</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCallableStatement.setInt(</span><span style="color: #000000">2</span><span style="color: #000000">,</span><span style="color: #000000">8000</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCallableStatement.setInt(</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">9000</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCallableStatement.execute();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCallableStatement.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn.close();&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">关闭数据库连接</span><span style="color: #008000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br /><img id="Codehighlighter1_905_977_Open_Image" onclick="this.style.display='none'; Codehighlighter1_905_977_Open_Text.style.display='none'; Codehighlighter1_905_977_Closed_Image.style.display='inline'; Codehighlighter1_905_977_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_905_977_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_905_977_Closed_Text.style.display='none'; Codehighlighter1_905_977_Open_Image.style.display='inline'; Codehighlighter1_905_977_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;e)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_905_977_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_905_977_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">Darn!&nbsp;A&nbsp;SQL&nbsp;error:&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;e.getMessage());<br /><img id="Codehighlighter1_987_1329_Open_Image" onclick="this.style.display='none'; Codehighlighter1_987_1329_Open_Text.style.display='none'; Codehighlighter1_987_1329_Closed_Image.style.display='inline'; Codehighlighter1_987_1329_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_987_1329_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_987_1329_Closed_Text.style.display='none'; Codehighlighter1_987_1329_Open_Image.style.display='inline'; Codehighlighter1_987_1329_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">finally</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_987_1329_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_987_1329_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(rset&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">)<br /><img id="Codehighlighter1_1025_1059_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1025_1059_Open_Text.style.display='none'; Codehighlighter1_1025_1059_Closed_Image.style.display='inline'; Codehighlighter1_1025_1059_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1025_1059_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1025_1059_Closed_Text.style.display='none'; Codehighlighter1_1025_1059_Open_Image.style.display='inline'; Codehighlighter1_1025_1059_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1025_1059_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1025_1059_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rset.close();<br /><img id="Codehighlighter1_1089_1099_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1089_1099_Open_Text.style.display='none'; Codehighlighter1_1089_1099_Closed_Image.style.display='inline'; Codehighlighter1_1089_1099_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1089_1099_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1089_1099_Closed_Text.style.display='none'; Codehighlighter1_1089_1099_Open_Image.style.display='inline'; Codehighlighter1_1089_1099_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;ignore)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1089_1099_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1089_1099_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(stmt&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">)<br /><img id="Codehighlighter1_1137_1171_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1137_1171_Open_Text.style.display='none'; Codehighlighter1_1137_1171_Closed_Image.style.display='inline'; Codehighlighter1_1137_1171_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1137_1171_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1137_1171_Closed_Text.style.display='none'; Codehighlighter1_1137_1171_Open_Image.style.display='inline'; Codehighlighter1_1137_1171_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1137_1171_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1137_1171_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stmt.close();<br /><img id="Codehighlighter1_1201_1211_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1201_1211_Open_Text.style.display='none'; Codehighlighter1_1201_1211_Closed_Image.style.display='inline'; Codehighlighter1_1201_1211_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1201_1211_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1201_1211_Closed_Text.style.display='none'; Codehighlighter1_1201_1211_Open_Image.style.display='inline'; Codehighlighter1_1201_1211_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;ignore)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1201_1211_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1201_1211_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(conn&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">)<br /><img id="Codehighlighter1_1249_1283_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1249_1283_Open_Text.style.display='none'; Codehighlighter1_1249_1283_Closed_Image.style.display='inline'; Codehighlighter1_1249_1283_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1249_1283_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1249_1283_Closed_Text.style.display='none'; Codehighlighter1_1249_1283_Open_Image.style.display='inline'; Codehighlighter1_1249_1283_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1249_1283_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1249_1283_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn.close();<br /><img id="Codehighlighter1_1313_1323_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1313_1323_Open_Text.style.display='none'; Codehighlighter1_1313_1323_Closed_Image.style.display='inline'; Codehighlighter1_1313_1323_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1313_1323_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1313_1323_Closed_Text.style.display='none'; Codehighlighter1_1313_1323_Open_Image.style.display='inline'; Codehighlighter1_1313_1323_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;ignore)&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1313_1323_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1313_1323_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span></div>
<p>&nbsp;</p><img src ="http://www.cppblog.com/snowhill/aggbug/167453.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2012-03-08 23:41 <a href="http://www.cppblog.com/snowhill/articles/167453.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 网络间的文件传输</title><link>http://www.cppblog.com/snowhill/articles/166545.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Sun, 26 Feb 2012 03:28:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/166545.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/166545.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/166545.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/166545.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/166545.html</trackback:ping><description><![CDATA[<div>使用socket套接字，文件输出流对象写入文件
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.net.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.io.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;file_client<br /><img id="Codehighlighter1_63_884_Open_Image" onclick="this.style.display='none'; Codehighlighter1_63_884_Open_Text.style.display='none'; Codehighlighter1_63_884_Closed_Image.style.display='inline'; Codehighlighter1_63_884_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_63_884_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_63_884_Closed_Text.style.display='none'; Codehighlighter1_63_884_Open_Image.style.display='inline'; Codehighlighter1_63_884_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_63_884_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_63_884_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;port;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;String&nbsp;iaddr;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;String&nbsp;infilename;<br /><img id="Codehighlighter1_161_607_Open_Image" onclick="this.style.display='none'; Codehighlighter1_161_607_Open_Text.style.display='none'; Codehighlighter1_161_607_Closed_Image.style.display='inline'; Codehighlighter1_161_607_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_161_607_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_161_607_Closed_Text.style.display='none'; Codehighlighter1_161_607_Open_Image.style.display='inline'; Codehighlighter1_161_607_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;file_client()</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_161_607_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_161_607_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000"><br /><img id="Codehighlighter1_169_536_Open_Image" onclick="this.style.display='none'; Codehighlighter1_169_536_Open_Text.style.display='none'; Codehighlighter1_169_536_Closed_Image.style.display='inline'; Codehighlighter1_169_536_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_169_536_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_169_536_Closed_Text.style.display='none'; Codehighlighter1_169_536_Open_Image.style.display='inline'; Codehighlighter1_169_536_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_169_536_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_169_536_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Socket&nbsp;socket&nbsp;</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Socket(InetAddress.getByName(iaddr),port);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataOutputStream&nbsp;outstream</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;DataOutputStream(socket.getOutputStream());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileInputStream&nbsp;fis&nbsp;</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;FileInputStream(infilename);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;((i</span><span style="color: #000000">=</span><span style="color: #000000">fis.read())</span><span style="color: #000000">!=-</span><span style="color: #000000">1</span><span style="color: #000000">)<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_407_437_Open_Image" onclick="this.style.display='none'; Codehighlighter1_407_437_Open_Text.style.display='none'; Codehighlighter1_407_437_Closed_Image.style.display='inline'; Codehighlighter1_407_437_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_407_437_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_407_437_Closed_Text.style.display='none'; Codehighlighter1_407_437_Open_Image.style.display='inline'; Codehighlighter1_407_437_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_407_437_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_407_437_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;outstream.writeInt(i);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;outstream.writeInt(i);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">data&nbsp;transfer&nbsp;sucessfully!</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;socket.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(IOException&nbsp;e)<br /><img id="Codehighlighter1_562_604_Open_Image" onclick="this.style.display='none'; Codehighlighter1_562_604_Open_Text.style.display='none'; Codehighlighter1_562_604_Closed_Image.style.display='inline'; Codehighlighter1_562_604_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_562_604_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_562_604_Closed_Text.style.display='none'; Codehighlighter1_562_604_Open_Image.style.display='inline'; Codehighlighter1_562_604_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_562_604_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_562_604_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(e.getMessage());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String&nbsp;args[])<br /><img id="Codehighlighter1_650_882_Open_Image" onclick="this.style.display='none'; Codehighlighter1_650_882_Open_Text.style.display='none'; Codehighlighter1_650_882_Closed_Image.style.display='inline'; Codehighlighter1_650_882_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_650_882_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_650_882_Closed_Text.style.display='none'; Codehighlighter1_650_882_Open_Image.style.display='inline'; Codehighlighter1_650_882_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_650_882_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_650_882_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(args.length</span><span style="color: #000000">&lt;</span><span style="color: #000000">3</span><span style="color: #000000">)<br /><img id="Codehighlighter1_673_766_Open_Image" onclick="this.style.display='none'; Codehighlighter1_673_766_Open_Text.style.display='none'; Codehighlighter1_673_766_Closed_Image.style.display='inline'; Codehighlighter1_673_766_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_673_766_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_673_766_Closed_Text.style.display='none'; Codehighlighter1_673_766_Open_Image.style.display='inline'; Codehighlighter1_673_766_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_673_766_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_673_766_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">usage:&nbsp;java&nbsp;file_server&nbsp;[IP]&nbsp;[port]&nbsp;[filename]</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.exit(</span><span style="color: #000000">1</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;iaddr</span><span style="color: #000000">=</span><span style="color: #000000">args[</span><span style="color: #000000">0</span><span style="color: #000000">];<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;port</span><span style="color: #000000">=</span><span style="color: #000000">Integer.parseInt(args[</span><span style="color: #000000">1</span><span style="color: #000000">]);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;infilename</span><span style="color: #000000">=</span><span style="color: #000000">args[</span><span style="color: #000000">2</span><span style="color: #000000">];<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;file_client&nbsp;serverstart</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;file_client();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span></div>以上为客户端代码,下为服务端代码：<br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.net.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.io.</span><span style="color: #000000">*</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;file_client<br /><img id="Codehighlighter1_63_884_Open_Image" onclick="this.style.display='none'; Codehighlighter1_63_884_Open_Text.style.display='none'; Codehighlighter1_63_884_Closed_Image.style.display='inline'; Codehighlighter1_63_884_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_63_884_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_63_884_Closed_Text.style.display='none'; Codehighlighter1_63_884_Open_Image.style.display='inline'; Codehighlighter1_63_884_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_63_884_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_63_884_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;port;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;String&nbsp;iaddr;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;String&nbsp;infilename;<br /><img id="Codehighlighter1_161_607_Open_Image" onclick="this.style.display='none'; Codehighlighter1_161_607_Open_Text.style.display='none'; Codehighlighter1_161_607_Closed_Image.style.display='inline'; Codehighlighter1_161_607_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_161_607_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_161_607_Closed_Text.style.display='none'; Codehighlighter1_161_607_Open_Image.style.display='inline'; Codehighlighter1_161_607_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;file_client()</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_161_607_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_161_607_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000"><br /><img id="Codehighlighter1_169_536_Open_Image" onclick="this.style.display='none'; Codehighlighter1_169_536_Open_Text.style.display='none'; Codehighlighter1_169_536_Closed_Image.style.display='inline'; Codehighlighter1_169_536_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_169_536_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_169_536_Closed_Text.style.display='none'; Codehighlighter1_169_536_Open_Image.style.display='inline'; Codehighlighter1_169_536_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_169_536_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_169_536_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Socket&nbsp;socket&nbsp;</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Socket(InetAddress.getByName(iaddr),port);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataOutputStream&nbsp;outstream</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;DataOutputStream(socket.getOutputStream());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileInputStream&nbsp;fis&nbsp;</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;FileInputStream(infilename);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;((i</span><span style="color: #000000">=</span><span style="color: #000000">fis.read())</span><span style="color: #000000">!=-</span><span style="color: #000000">1</span><span style="color: #000000">)<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_407_437_Open_Image" onclick="this.style.display='none'; Codehighlighter1_407_437_Open_Text.style.display='none'; Codehighlighter1_407_437_Closed_Image.style.display='inline'; Codehighlighter1_407_437_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_407_437_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_407_437_Closed_Text.style.display='none'; Codehighlighter1_407_437_Open_Image.style.display='inline'; Codehighlighter1_407_437_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_407_437_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_407_437_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;outstream.writeInt(i);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;outstream.writeInt(i);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">data&nbsp;transfer&nbsp;sucessfully!</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;socket.close();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(IOException&nbsp;e)<br /><img id="Codehighlighter1_562_604_Open_Image" onclick="this.style.display='none'; Codehighlighter1_562_604_Open_Text.style.display='none'; Codehighlighter1_562_604_Closed_Image.style.display='inline'; Codehighlighter1_562_604_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_562_604_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_562_604_Closed_Text.style.display='none'; Codehighlighter1_562_604_Open_Image.style.display='inline'; Codehighlighter1_562_604_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_562_604_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_562_604_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(e.getMessage());<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String&nbsp;args[])<br /><img id="Codehighlighter1_650_882_Open_Image" onclick="this.style.display='none'; Codehighlighter1_650_882_Open_Text.style.display='none'; Codehighlighter1_650_882_Closed_Image.style.display='inline'; Codehighlighter1_650_882_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_650_882_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_650_882_Closed_Text.style.display='none'; Codehighlighter1_650_882_Open_Image.style.display='inline'; Codehighlighter1_650_882_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_650_882_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_650_882_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(args.length</span><span style="color: #000000">&lt;</span><span style="color: #000000">3</span><span style="color: #000000">)<br /><img id="Codehighlighter1_673_766_Open_Image" onclick="this.style.display='none'; Codehighlighter1_673_766_Open_Text.style.display='none'; Codehighlighter1_673_766_Closed_Image.style.display='inline'; Codehighlighter1_673_766_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_673_766_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_673_766_Closed_Text.style.display='none'; Codehighlighter1_673_766_Open_Image.style.display='inline'; Codehighlighter1_673_766_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_673_766_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_673_766_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">usage:&nbsp;java&nbsp;file_server&nbsp;[IP]&nbsp;[port]&nbsp;[filename]</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.exit(</span><span style="color: #000000">1</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;iaddr</span><span style="color: #000000">=</span><span style="color: #000000">args[</span><span style="color: #000000">0</span><span style="color: #000000">];<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;port</span><span style="color: #000000">=</span><span style="color: #000000">Integer.parseInt(args[</span><span style="color: #000000">1</span><span style="color: #000000">]);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;infilename</span><span style="color: #000000">=</span><span style="color: #000000">args[</span><span style="color: #000000">2</span><span style="color: #000000">];<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;file_client&nbsp;serverstart</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;file_client();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span></div><br />编译javac file_server.java<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;javac file_client.java<br />测试：<br />服务端：java file_server 2022 77.txt<br />客户端&nbsp; java file_client 192.168.1.102 2022 file_client.java<br /><br /><br /></div> <img src ="http://www.cppblog.com/snowhill/aggbug/166545.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2012-02-26 11:28 <a href="http://www.cppblog.com/snowhill/articles/166545.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 输入输出与socket</title><link>http://www.cppblog.com/snowhill/articles/160300.html</link><dc:creator>snowhill</dc:creator><author>snowhill</author><pubDate>Wed, 16 Nov 2011 15:39:00 GMT</pubDate><guid>http://www.cppblog.com/snowhill/articles/160300.html</guid><wfw:comment>http://www.cppblog.com/snowhill/comments/160300.html</wfw:comment><comments>http://www.cppblog.com/snowhill/articles/160300.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/snowhill/comments/commentRss/160300.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/snowhill/services/trackbacks/160300.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->//一个创建socket的例子import&nbsp;java.net.*;import&nbsp;java.io.*;class&nbsp;server{&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;&nbsp;<a href='http://www.cppblog.com/snowhill/articles/160300.html'>阅读全文</a><img src ="http://www.cppblog.com/snowhill/aggbug/160300.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/snowhill/" target="_blank">snowhill</a> 2011-11-16 23:39 <a href="http://www.cppblog.com/snowhill/articles/160300.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>