锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久亚洲AV成人无码国产电影 ,一区国严二区亚洲三区,久久精品国产精品亚洲蜜月http://m.tkk7.com/haogj/category/8077.htmlzh-cnFri, 02 Mar 2007 06:35:25 GMTFri, 02 Mar 2007 06:35:25 GMT60鍒╃敤JSP 2.0寮鍙慦eb搴旂敤紼嬪簭http://m.tkk7.com/haogj/archive/2006/07/06/57046.htmlhaogjhaogjThu, 06 Jul 2006 14:44:00 GMThttp://m.tkk7.com/haogj/archive/2006/07/06/57046.htmlhttp://m.tkk7.com/haogj/comments/57046.htmlhttp://m.tkk7.com/haogj/archive/2006/07/06/57046.html#Feedback0http://m.tkk7.com/haogj/comments/commentRss/57046.htmlhttp://m.tkk7.com/haogj/services/trackbacks/57046.htmlhttp://www.phome.net/document/java/200504/java111245789013746.html

haogj 2006-07-06 22:44 鍙戣〃璇勮
]]>
褰誨簳瑙e喅 Tomcat 5 涓嬫枃瀛椾貢鐮侀棶棰?/title><link>http://m.tkk7.com/haogj/archive/2006/06/25/55017.html</link><dc:creator>haogj</dc:creator><author>haogj</author><pubDate>Sun, 25 Jun 2006 14:04:00 GMT</pubDate><guid>http://m.tkk7.com/haogj/archive/2006/06/25/55017.html</guid><wfw:comment>http://m.tkk7.com/haogj/comments/55017.html</wfw:comment><comments>http://m.tkk7.com/haogj/archive/2006/06/25/55017.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://m.tkk7.com/haogj/comments/commentRss/55017.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/haogj/services/trackbacks/55017.html</trackback:ping><description><![CDATA[<P>浣跨敤 tomcat 鏃訛紝鐩鎬俊澶у閮藉洖閬囧埌涓枃涔辯爜鐨勯棶棰橈紝鍏蜂綋琛ㄧ幇涓洪氳繃琛ㄥ崟鍙栧緱鐨勪腑鏂囨暟鎹負涔辯爜銆?BR><BR><STRONG>涓銆佸垵綰цВ鍐蟲柟娉?/STRONG><BR><BR>閫氳繃涓鐣绱㈠悗錛岃澶氫漢閲囩敤浜嗗涓嬪姙娉曪紝棣栧厛瀵瑰彇寰楀瓧絎︿覆鎸夌収 iso8859-1 榪涜瑙g爜杞崲錛岀劧鍚庡啀鎸夌収 gb2312 榪涜緙栫爜錛屾渶鍚庡緱鍒版紜殑鍐呭銆傜ず渚嬩唬鐮佸涓嬶細<BR><BR>String  para = new String( request.getParameter("para").getBytes("iso8859-1"), "gb2312");<BR><BR>鍏蜂綋鐨勫師鍥犳槸鍥犱負緹庡浗浜哄湪鍐?tomcat 鏃墮粯璁や嬌鐢?iso8859-1 榪涜緙栫爜閫犳垚鐨勩?BR><BR> 鐒惰岋紝鍦ㄦ垜浠殑 servlet 鍜?jsp 欏甸潰涓湁澶ч噺鐨勫弬鏁伴渶瑕佽繘琛屼紶閫掞紝榪欐牱杞崲鐨勮瘽浼氬甫鏉ュぇ閲忕殑杞崲浠g爜錛岄潪甯鎬笉渚褲?BR><BR><STRONG>浜屻佸叆闂ㄧ駭瑙e喅鏂規硶<BR></STRONG><BR>鍚庢潵錛屽ぇ瀹跺紑濮嬪啓涓涓繃婊ゅ櫒錛屽湪鍙栧緱瀹㈡埛绔紶榪囨潵鐨勫弬鏁頒箣鍓嶏紝閫氳繃榪囨護鍣ㄩ鍏堝皢鍙栧緱鐨勫弬鏁扮紪鐮佽瀹氫負 gb2312 錛岀劧鍚庡氨鍙互鐩存帴浣跨敤 getParameter 鍙栧緱姝g‘鐨勫弬鏁頒簡銆傝繖涓繃婊ゅ櫒鍦?tomcat 鐨勭ず渚嬩唬鐮?<BR>jsp-examples 涓湁璇︾粏鐨勪嬌鐢ㄧず渚?   鍏朵腑榪囨護鍣ㄥ湪 web.xml 涓殑璁懼畾濡備笅錛岀ず渚嬩腑浣跨敤鐨勬槸鏃ユ枃鐨勭紪鐮侊紝鎴戜滑鍙淇敼涓?gb2312 鍗沖彲<BR><BR>    <filter><BR>        <filter-name>Set Character Encoding</filter-name><BR>        <filter-class>filters.SetCharacterEncodingFilter</filter-class><BR>        <init-param><BR>            <param-name>encoding</param-name><BR>            <param-value><FONT style="BACKGROUND-COLOR: #ff0000">EUC_JP</FONT></param-value><BR>        </init-param><BR>    </filter><BR><BR>榪囨護鍣ㄧ殑浠g爜濡備笅錛?BR>public class SetCharacterEncodingFilter implements Filter {</P> <P>    // 緙栫爜鐨勫瓧絎︿覆<BR>    protected String encoding = null;</P> <P>   // 榪囨護鍣ㄧ殑閰嶇疆<BR>    protected FilterConfig filterConfig = null;</P> <P>   // 鏄惁蹇界暐瀹㈡埛绔殑緙栫爜<BR>    protected boolean ignore = true;</P> <P>   // 閿姣佽繃婊ゅ櫒<BR>    public void destroy() {</P> <P>        this.encoding = null;<BR>        this.filterConfig = null;</P> <P>    }</P> <P>   // 榪囨護鏂規硶<BR>    public void doFilter(ServletRequest request, ServletResponse response,<BR>                         FilterChain chain)<BR>          throws IOException, ServletException {</P> <P>        // 濡傛灉浣跨敤榪囨護鍣紝蹇界暐瀹㈡埛绔殑緙栫爜錛岄偅涔堜嬌鐢ㄩ氳繃榪囨護鍣ㄨ瀹氱紪鐮?BR>        if (ignore || (request.getCharacterEncoding() == null)) {<BR>            String encoding = selectEncoding(request);<BR>            if (encoding != null)<BR>                request.setCharacterEncoding(encoding);<BR>        }</P> <P>        // 浼犻佺粰涓嬩竴涓繃婊ゅ櫒<BR>        chain.doFilter(request, response);</P> <P>    }</P> <P><BR>    // 鍒濆鍖栬繃婊ゅ櫒<BR>    public void init(FilterConfig filterConfig) throws ServletException {</P> <P>        this.filterConfig = filterConfig;<BR>        this.encoding = filterConfig.getInitParameter("encoding");<BR>        String value = filterConfig.getInitParameter("ignore");<BR>        if (value == null)<BR>            this.ignore = true;<BR>        else if (value.equalsIgnoreCase("true"))<BR>            this.ignore = true;<BR>        else if (value.equalsIgnoreCase("yes"))<BR>            this.ignore = true;<BR>        else<BR>            this.ignore = false;</P> <P>    }</P> <P>    // 榪斿洖榪囨護鍣ㄨ瀹氱殑緙栫爜<BR>    protected String selectEncoding(ServletRequest request) {</P> <P>        return (this.encoding);</P> <P>    }<BR>}<BR><BR>鐒惰屽湪 tomcat5 涓紝鍗充嬌浣跨敤榪囨護鍣紝浠嶇劧鍙兘鍙栧緱涔辯爜錛屽師鍥犱綍鍦ㄥ憿錛?BR><BR><STRONG>涓夈侀珮綰цВ鍐蟲柟娉?/STRONG><BR><BR>榪欐槸鍥犱負錛?FONT face="Courier New">鍦?tomcat4 鍜?tomcat5 涓鍙傛暟鐨勫鐞嗘槸涓嶄竴鏍風殑錛屽湪 tomcat4 涓?get 涓?post 鐨勭紪鐮佹槸涓鏍風殑錛屾墍浠ュ彧瑕佸湪榪囨護鍣ㄤ腑閫氳繃 request.setCharacterEncoding 璁懼畾涓嬈″氨鍙互瑙e喅 get 涓?post 鐨勯棶棰樸傜劧鑰岋紝鍦?tomcat5 涓紝get 涓?post 鐨勫鐞嗘槸鍒嗗紑榪涜鐨?/FONT><BR><BR>鍦?tomcat 5 涓紝涓轟簡瑙e喅緙栫爜闂錛宼omcat 鐨勪綔鑰呬綔浜嗗緢澶氬姫鍔涳紝鍏蜂綋琛ㄧ幇涓哄湪 tomcat 鐨勯厤緗枃浠?server.xml 涓 Connector 鍏冪礌澧炲姞浜嗗涓嬬殑閰嶇疆鍙傛暟錛屼笓闂ㄧ敤鏉ュ緙栫爜榪涜鐩存帴鐨勯厤緗?BR><BR><FONT face="Courier New"><EM><FONT style="BACKGROUND-COLOR: #ffa500">URIEncoding</FONT></EM>   鐢ㄦ潵璁懼畾閫氳繃 URI 浼犻掔殑鍐呭浣跨敤鐨勭紪鐮侊紝tomcat 灝嗕嬌鐢ㄨ繖閲屾寚瀹氱殑緙栫爜瀵瑰鎴風浼犻佺殑鍐呭榪涜緙栫爜銆?BR><BR>浠涔堟槸 URI 鍛紵<BR>java doc 鐨勮鏄庝腑濡備笅璇存槑錛歎RI 鏄粺涓璧勬簮<I>鏍囪瘑絎?/I>錛岃?URL 鏄粺涓璧勬簮<I>瀹氫綅絎?/I>銆傚洜姝わ紝絎肩粺鍦拌錛屾瘡涓?URL 閮芥槸 URI錛屼絾涓嶄竴瀹氭瘡涓?URI 閮芥槸 URL銆傝繖鏄洜涓?URI 榪樺寘鎷竴涓瓙綾伙紝鍗崇粺涓璧勬簮<I>鍚嶇О</I> (URN)錛屽畠鍛藉悕璧勬簮浣嗕笉鎸囧畾濡備綍瀹氫綅璧勬簮銆?BR><BR>涔熷氨鏄錛?FONT style="BACKGROUND-COLOR: #ffff00">鎴戜滑閫氳繃 get 鏂規硶鎻愪氦鐨勫弬鏁板疄闄呬笂閮芥槸閫氳繃 uri 鎻愪氦鐨勶紝閮界敱榪欎釜鍙傛暟綆$悊</FONT>錛屽鏋滄病鏈夎瀹氳繖涓弬鏁幫紝鍒?tomcat 灝嗕嬌鐢ㄩ粯璁ょ殑 iso8859-1 瀵瑰鎴風鐨勫唴瀹硅繘琛岀紪鐮併?BR><BR><FONT style="BACKGROUND-COLOR: #ffa500">useBodyEncodingForURI</FONT> 浣跨敤涓?Body 涓鏍風殑緙栫爜鏉ュ鐞?URI, 榪欎釜璁懼畾鏄負浜嗕笌 tomcat4淇濇寔鍏煎錛屽師鏉ュ湪 tomcat4 鍜?tomcat5 涓槦鍙傛暟鐨勫鐞嗘槸涓嶄竴鏍風殑錛屽湪 tomcat4 涓?get 涓?post 鐨勭紪鐮佹槸涓鏍風殑錛屾墍浠ュ彧瑕佸湪榪囨護鍣ㄤ腑閫氳繃 request.setCharacterEncoding 璁懼畾涓嬈″氨鍙互瑙e喅 get 涓?post 鐨勯棶棰樸傜劧鑰岋紝鍦?tomcat5 涓紝get 涓?post 鐨勫鐞嗘槸鍒嗗紑榪涜鐨勶紝瀵?get 鐨勫鐞嗛氳繃 鍓嶉潰鐨?URIEncoding 榪涜澶勭悊錛屽 post 鐨勫唴瀹逛緷鐒墮氳繃 request.setCharacterEncoding 澶勭悊錛屼負浜嗕繚鎸佸吋瀹癸紝灝辨湁浜嗚繖涓瀹氥?BR><BR><FONT style="BACKGROUND-COLOR: #ffff00">灝?useBodyEncodingForURI 璁懼畾涓虹湡鍚庯紝灝卞彲浠ラ氳繃 request.setCharacterEncoding 鐩存帴瑙e喅 get 鍜?post 涓殑涔辯爜闂</FONT>銆?BR><BR>榪欐牱錛屾垜浠彲浠ラ氳繃鍦?server.xml 涓瀹?URIEncoding 鏉ヨВ鍐?get 鏂規硶涓殑鍙傛暟闂錛屼嬌鐢ㄨ繃婊ゅ櫒鏉ヨВ鍐?post 鏂規硶涓殑闂銆?BR><BR>鎴栬呬篃鍙互閫氳繃鍦?server.xml 涓瀹?useBodyEncodingForURI 涓?true 錛岄厤鍚堣繃婊ゅ櫒鏉ヨВ鍐崇紪鐮佺殑闂銆?BR><BR>鍦ㄨ繖閲岋紝鎴戝己鐑堝緩璁湪緗戠珯鐨勫垱浣滆繃紼嬩腑錛屽叏紼嬩嬌鐢?utf-8 緙栫爜鏉ュ交搴曡В鍐充貢鐮侀棶棰樸?BR><BR>鍏蜂綋鎿嶄綔濡備笅錛?BR><FONT color=#008000>1銆侀〉闈㈠唴瀹逛嬌鐢?utf-8 鏍煎紡淇濆瓨錛屽湪欏甸潰涓姞鍏?<mete http-equiv="contentType" content="text/html;charst=utf-8"><BR><BR>2銆佹湇鍔″櫒绔殑 server.xml 涓瀹?useBodyEncodingForURI = true<BR><BR>3銆佷嬌鐢ㄨ繃婊ゅ櫒錛岃繃婊ゅ櫒璁懼畾緙栫爜涓?utf-8</FONT><BR><BR><BR></FONT><BR></P><img src ="http://m.tkk7.com/haogj/aggbug/55017.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/haogj/" target="_blank">haogj</a> 2006-06-25 22:04 <a href="http://m.tkk7.com/haogj/archive/2006/06/25/55017.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>璇︾粏浠嬬粛鍦╰omcat涓厤緗暟鎹簮浠ュ強鏁版嵁婧愮殑鍘熺悊 http://m.tkk7.com/haogj/archive/2006/04/24/42893.htmlhaogjhaogjMon, 24 Apr 2006 13:21:00 GMThttp://m.tkk7.com/haogj/archive/2006/04/24/42893.htmlhttp://m.tkk7.com/haogj/comments/42893.htmlhttp://m.tkk7.com/haogj/archive/2006/04/24/42893.html#Feedback3http://m.tkk7.com/haogj/comments/commentRss/42893.htmlhttp://m.tkk7.com/haogj/services/trackbacks/42893.html
浣滆?baggio785
鏃ユ湡錛?006-4-24
鍏抽敭璇嶏細DataSource(鏁版嵁婧?,Tomcat ,榪炴帴姹?/font>

鍓嶈█


鏈枃鏍規嵁瀹炰緥璇︾粏浠嬬粛浜嗗浣曞湪tomcat涓厤緗暟鎹簮銆傜綉涓婃綾繪枃绔犲緢澶氾紝浣嗘槸鍩烘湰閮芥槸闆峰悓鐨勶紝鑰屼笖瀵逛竴浜涚壒孌婇棶棰樹互鍙婂師鐞嗗茍鏈緇嗛槓榪幫紝鎵浠ユ兂鏍規嵁鑷繁鐨勫疄闄呯粡楠岋紝騫剁粨鍚堜緥瀛愬啓涓綃囪緇嗙殑鏂囩珷銆?/font>
鏈枃鏄伓鐨勪竴浜涙嫏瑙侊紝鏈変笉姝g‘鐨勫湴鏂硅澶у澶氬璇勮鎸囨 銆?/font>

寮鍙戠幆澧?/strong>

鏈枃鐨勭幆澧冿細JDK1.4.2錛孴OMCAT5.0.28錛孫racle9i

JDBC綆浠?/font>

鎻愬埌鏁版嵁婧愶紝閭e氨涓嶈兘涓嶈JDBC銆?span style="FONT-SIZE: 12pt">JDBC鏄?/span>Java Database Connectivity鐨勭緝鍐欍傚湪java.sql鍖呬腑鎻愪緵浜?/span>JDBC API錛屽畾涔変簡璁塊棶鏁版嵁搴撶殑鎺ュ彛鍜岀被銆備絾鏄?/span>JDBC API涓嶈兘鐩存帴璁塊棶鏁版嵁搴擄紝蹇呴』渚濊禆浜庢暟鎹簱鍘傚晢鎻愪緵鐨?/span>JDBC椹卞姩紼嬪簭錛屽嵆JDBC DRIVER銆?/span>
Java.sql 涓父鐢ㄧ殑鎺ュ彛鍜岀被濡備笅錛?/span>
聽聽聽聽聽聽 Driver 鎺ュ彛鍜?/span> DriverManager 綾?/span>
聽聽聽聽聽聽 Connection
聽聽聽聽聽聽 Statement
聽聽聽聽聽聽 PreparedSataement

聽聽聽聽聽聽 ResultSet

1聽聽聽聽 Driver 鎺ュ彛鍜?/span> DriverManager 綾?/span>
聽聽聽聽聽聽 DriverManager
綾葷敤鏉ュ緩绔嬪拰鏁版嵁搴撶殑榪炴帴浠ュ強綆$悊 JDBC 椹卞姩紼嬪簭錛屽父鐢ㄦ柟娉曞涓嬶細
鏂規硶 鎻忚堪
registerDriver(Driver driver) 鍦?/span> DriverManager 涓敞鍐?/span> JDBC 椹卞姩紼嬪簭
getConnection(String url,String user,String pwd) 寤虹珛鍜屾暟鎹簱鐨勮繛鎺ワ紝榪斿洖 Connection 瀵硅薄
setLoginTimeOut(int seconds) 璁懼畾絳夊緟鏁版嵁搴撹繛鎺ョ殑鏈闀挎椂闂?/span>
setLogWriter(PrintWriter out) 璁懼畾杈撳叆鏁版嵁搴撴棩鑷崇殑 PrintWriter 瀵硅薄
2聽聽聽聽 Connection
聽聽聽聽聽聽 Connection
浠h〃鍜屾暟鎹簱鐨勮繛鎺ワ紝鍏跺父鐢ㄦ柟娉曞涓嬶細
鏂規硶 鎻忚堪
getMetaData() 榪斿洖鏁版嵁搴撶殑 MetaData 鏁版嵁銆?/span> MetaData 鏁版嵁鍖呭惈浜嗘暟鎹簱鐨勭浉鍏充俊鎭紝渚嬪褰撳墠鏁版嵁搴撹繛鎺ョ殑鐢ㄦ埛鍚嶃佷嬌鐢ㄧ殑 JDBC 椹卞姩紼嬪簭銆佹暟鎹簱鍏佽鐨勬渶澶ц繛鎺ユ暟銆佹暟鎹簱鐨勭増鏈瓑絳夈?/span>
createStatement() 鍒涘緩騫惰繑鍥?/span> Statement 瀵硅薄
PrepareStatement(String sql) 鍒涘緩騫惰繑鍥?/span> prepareStatement 瀵硅薄
3 聽聽聽聽 Statement
聽聽聽聽聽聽 Statement
鐢ㄦ潵鎵ц闈欐?/span> sql 璇彞銆備緥濡傦紝瀵逛簬 insert 銆?/span> update 銆?/span> delete 璇彞錛岃皟鐢?/span> executeUpdate(String sql) 鏂規硶錛岃?/span> select 璇彞鍙互璋冪敤 executeQuery(String sql) 鏂規硶錛?/span> executeQuery(String sql) 鏂規硶榪斿洖 ResultSet 瀵硅薄銆?/span>
4 聽聽聽聽 PrepareStatement
聽聽 PrepareStatement
鐢ㄤ簬鎵ц鍔ㄦ佺殑 sql 璇彞錛屽嵆鍏佽 sql 璇彞涓寘鍚弬鏁般備嬌鐢ㄦ柟娉曚負錛?/span>
聽聽 String sql = 鈥渟elect col1 from tablename where col2=? And col3=?鈥?
聽聽 PrepareStatement perpStmt = conn.preparestatement(sql);
聽聽 perpStmt.setstring(1,col2Value);
聽聽聽聽聽 perpStmt.setFloat(2,col3Value);
聽聽聽聽聽 ResultSet rs = perpStmt.executeQuery();
5 聽聽聽聽 ResultSet
ResultSet
鐢ㄦ潵琛ㄧず select 璇彞鏌ヨ寰楀埌鐨勮褰曢泦錛屼竴涓?/span> StateMent 瀵硅薄鍦ㄥ悓涓鏃跺埢鍙兘鎵撳紑涓涓?/span> ResultSet 瀵硅薄銆傞氳繃 ResultSet 鐨?/span> getXXX() 鏂規硶鏉ュ緱鍒板瓧孌靛箋?/span> ResultSet 鎻愪緵浜?/span> getString() 銆?/span> getFloat() 銆?/span> getInt() 絳夋柟娉曘傚彲浠ラ氳繃瀛楁鐨勫簭鍙鋒垨鑰呭瓧孌電殑鍚嶅瓧鏉ュ埗瀹氳幏鍙栨煇涓瓧孌電殑鍊箋備緥濡傦細鍦ㄤ笂渚嬩腑 getString(0),getString(col1) 閮藉彲浠ヨ幏寰楀瓧孌?/span> col1 鐨勫箋?/span>

浜嬪姟澶勭悊

鍦ㄥ疄闄呭簲鐢ㄤ腑錛屾垜浠細閬囧埌鍚屾椂鎻愪氦澶氫釜
sql 璇彞錛岃繖浜?/span> sql 璇彞瑕佷箞鍏ㄩ儴鎴愬姛錛岃涔堝叏閮ㄥけ璐ワ紝濡傛灉鍏朵腑涓鏉℃彁浜ゅけ璐ワ紝鍒欏繀欏繪挙閿鏁翠釜浜嬪姟銆備負姝わ紝 Connection 綾繪彁渚涗簡 3 涓帶鍒朵簨鍔$殑鏂規硶錛?/span>
鏂規硶 鎻忚堪
setAutoCommit(boolen autoCommit) 璁劇疆鏄惁鑷姩鎻愪氦浜嬪姟錛岄粯璁や負鑷姩鎻愪氦 銆?/span>
commit() 鎻愪氦浜嬪姟
rollback() 鎾ら攢浜嬪姟
鍙傝冧緥瀛愶細
try{
conn.SetautoCommit(false);
stmt = conn.createstatement();
stmt.executeUpdate(鈥渄elete form table1 where col1=1鈥?;
stmt.eecuteUpdate(鈥渄elete from table2 where col2=1鈥?;
conn.comm.it();
}catch(Exception e){
聽聽聽聽聽聽 e.printStackTrace;
try{
聽聽聽聽聽聽 聽聽聽聽聽聽 conn.rollback();
} catch(Exception e1){
聽聽聽聽聽聽 e1.printStackTrace;
}
}
閫氳繃涓涓?/span> JSP 渚嬪瓙鏉ヨ闂?/span> oracle 鏁版嵁搴擄細
<%@ page import=鈥漥ava.util.*鈥?gt;
<%@ page import=鈥漥ava.sql.*鈥?gt;
<%
try{
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
// 鍔犺澆 oracle 椹卞姩紼嬪簭
Class.forName(鈥渙racle.jdbc.driver.OracleDriver.鈥?;
// 娉ㄥ唽 oracle 椹卞姩紼嬪簭
DriverManager.regidterDriver(new oracle.jdbc.driver.OracleDriver());
// 寤虹珛鏁版嵁搴撹繛鎺?/span>
conn=DriverManager.getConnection(鈥渏dbc:oracle:thin:@your db ip:your db port:sid鈥?dbuser,dbpassword);
stmt = conn.createStatement();
rs = stmt.executeQuery(鈥渟elect * from tablename鈥?;
while(rs.next){
聽聽聽聽聽聽 out.print(rs.getstring(鈥渃olname鈥?);
}
}catch(Exception e){
}
finally{
rs.close();
stmt.close();
conn.close();
}
%>

鏁版嵁婧愮畝浠?/font>

JDBC2.0
鎻愪緵浜?/span> javax.sql.DataSource 鐨勬帴鍙o紝璐熻矗涓庢暟鎹簱寤虹珛榪炴帴錛屽疄闄呭簲鐢ㄦ椂涓嶉渶瑕佺紪鍐欒繛鎺ユ暟鎹簱浠g爜錛岀洿鎺ヤ粠鏁版嵁婧愯幏寰楁暟鎹簱鐨勮繛鎺ャ?/span> Dataource 涓簨鍏堝緩绔嬩簡澶氫釜鏁版嵁搴撹繛鎺ワ紝榪欎簺鏁版嵁搴撹繛鎺ヤ繚鎸佸湪鏁版嵁搴撹繛鎺ユ睜涓紝褰撶▼搴忚闂暟鎹簱鏃訛紝鍙渶瑕佷粠榪炴帴姹犱粠鍙栧嚭絀洪棽鐨勮繛鎺ワ紝璁塊棶鏁版嵁搴撶粨鏉燂紝鍦ㄥ皢榪欎簺榪炴帴褰掕繕緇欒繛鎺ユ睜銆?/span>
DataSource 瀵硅薄鐢卞鍣紙 Tomcat 錛夋彁渚涳紝涓嶈兘浣跨敤鍒涘緩瀹炰緥鐨勬柟娉曟潵鐢熸垚 DataSource 瀵硅薄錛岃閲囩敤 JAVA 鐨?/span> JNDI 錛?/span> Java Nameing and Directory Interface 錛?/span> java 鍛藉悕鍜岀洰褰曟帴鍙o級鏉ヨ幏寰?/span> DataSource 瀵硅薄鐨勫紩鐢ㄣ傦紙鍙︽湁涓縐嶈娉曪細鈥滃叾瀹炰粠鎶鏈笂鏉ヨ錛屾暟鎹簮榪炴帴鏂瑰紡鏄笉闇瑕佺洰褰曟湇鍔$殑錛屾垜浠悓鏍峰彲浠ラ氳繃搴忓垪鍖栨暟鎹簮瀵硅薄鐩存帴璁塊棶鏂囦歡緋葷粺銆傝繖鐐規槸闇瑕佹槑紜殑銆傗濇劅鍏磋叮鐨勬湅鍙嬪彲浠ヨ瘯璇曘傦級 JNDI 鏄竴縐嶅皢瀵硅薄鍜屽悕瀛楃粦瀹氱殑鎶鏈紝瀵硅薄宸ュ巶璐熻矗鐢熶駭鍑哄璞★紝榪欎簺瀵硅薄閮藉拰鍞竴鐨勫悕瀛楃浉緇戝畾銆傜▼搴忎腑鍙互閫氳繃榪欎釜鍚嶅瓧鏉ヨ幏寰楀璞$殑寮曠敤銆?/span> Tomcat 鎶?/span> DataSource 浣滀負涓縐嶅彲閰嶇疆鐨?/span> JNDI 璧勬簮鏉ュ鐞嗭紝鐢熸垚 DataSource 瀵硅薄鐨勫伐鍘備負 org.apache.comm.ons.dbcp.BasicDataSourceFactory 銆?/span>

閰嶇疆鏁版嵁婧?/font>

閰嶇疆鏁版嵁婧愬叾瀹炵浉褰撶畝鍗曪細
棣栧厛鍦?/span> server.xml 涓姞鍏?/span> <Resource> 鍏冪礌錛屾墦寮 server.xml 錛屽湪 <Context> 涓姞鍏ヤ互涓嬩唬鐮侊紙浠?/span> oracle 涓轟緥錛夛細
<Resource name="jdbc/ JNDI 鍚嶅瓧 "
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 auth="Container"
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 type="javax.sql.DataSource"/>
聽<ResourceParams name="jdbc/JNDI 鍚嶅瓧 ">
聽聽聽 <parameter>
聽聽聽聽聽<name>factory</name>
聽聽聽聽聽 <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
聽聽聽 </parameter>
聽聽聽 <parameter>
聽聽聽聽聽 <name>maxActive</name>
聽聽聽聽聽 <value>100</value>
聽聽聽 </parameter>
聽聽聽 <parameter>
聽聽聽聽聽 <name>maxIdle</name>
聽聽聽聽聽 <value>30</value>
聽聽聽 </parameter>
聽聽聽 <parameter>
聽聽聽聽聽 <name>maxWait</name>
聽聽聽聽聽 <value>10000</value>
聽聽聽 </parameter>
聽聽聽 <parameter>
聽聽聽聽 <name>username</name>
聽聽聽聽 <value> 鐢ㄦ埛鍚?/span> </value>
聽聽聽 </parameter>
聽聽聽 <parameter>
聽聽聽聽 <name>password</name>
聽聽聽聽 <value> 瀵嗙爜 </value>
聽聽聽 </parameter>
聽聽聽 <parameter>
聽聽聽聽聽聽 <name>driverClassName</name>
聽聽聽聽聽聽 <value>oracle.jdbc.driver.OracleDriver</value>
聽聽聽 </parameter>
聽聽聽 <parameter>
聽聽 聽聽聽<name>url</name>
聽聽聽聽聽 <value>jdbc:oracle:thin:@ip: 绔彛 :sid </value>
聽聽聽 </parameter>
聽</ResourceParams>
<Resource> 鍏冪礌鐨勫睘鎬у涓嬶細
灞炴?/span> 鎻忚堪
name 鎸囧畾 Resource 鐨?/span> JNDI 鐨勫悕瀛?/span>
auth 鎸囧畾綆$悊 Resource 鐨?/span> Manager 錛岀敱涓や釜鍙夊鹼細 Container 鍜?/span> Application 銆?/span> Container 琛ㄧず鐢卞鍣ㄦ潵鍒涘緩鍜岀鐞?/span> Resource 錛?/span> Application 琛ㄧず鐢?/span> WEB 搴旂敤鏉ュ垱寤哄拰綆$悊 Resource 銆傚鏋滃湪 web application deployment descriptor 涓嬌鐢?/span> <resource-ref> 錛岃繖涓睘鎬ф槸蹇呴渶鐨勶紝濡傛灉浣跨敤 <resource-env-ref> 錛岃繖涓睘鎬ф槸鍙夌殑銆?/span>
type 鎸囧畾 Resource 鎵灞炵殑 java 綾誨悕
<ResourceParams> 鍏冪礌鐨勫睘鎬у涓嬶細
灞炴?/span> 鎻忚堪
name 鎸囧畾 ResourceParams 鐨?/span> JNDI 鐨勫悕瀛楋紝蹇呴』鍜?/span> Resource 鐨?/span> name 淇濇寔涓鑷?/span>
factory 鎸囧畾鐢熸垚 DataSource 瀵硅薄鐨?/span> factory 鐨勭被鍚?/span>
maxActive 鎸囧畾鏁版嵁搴撹繛鎺ユ睜涓浜庢椿鍔ㄧ姸鎬佺殑鏁版嵁搴撹繛鎺ユ渶澶ф暟鐩紝 0 琛ㄧず涓嶅彈闄愬埗
maxIdle 鎸囧畾鏁版嵁搴撹繛鎺ユ睜涓?/span> 澶勪簬 絀洪棽鐘舵佺殑鏁版嵁搴撹繛鎺ョ殑鏈澶ф暟鐩紝 0 琛ㄧず涓嶅彈闄愬埗
maxWait 鎸囧畾鏁版嵁搴撹繛鎺ユ睜涓殑鏁版嵁搴撹繛鎺ュ浜庣┖闂茬姸鎬佺殑鏈闀挎椂闂達紙鍗曚綅涓烘縐掞級錛岃秴榪囪繖涓浜嬩歡錛屽皢浼氭姏鍑哄紓甯搞?/span> -1 琛ㄧず鍙互鏃犻檺鏈熺瓑寰呫?/span>
username 鎸囧畾榪炴帴鏁版嵁搴撶殑鐢ㄦ埛鍚?/span>
password 鎸囧畾榪炴帴鏁版嵁搴撶殑瀵嗙爜
driverClassName 鎸囧畾榪炴帴鏁版嵁搴撶殑 JDBC 椹卞姩紼嬪簭
url 鎸囧畾榪炴帴鏁版嵁搴撶殑 URL

鍏朵粬鏂囩珷璇翠互涓婇厤緗氨OK浜嗭紝瀵逛簬web.xml鐨勯厤緗彲鏈夊彲鏃狅紝鍏跺疄涓嶆槸榪欐牱瀛愮殑銆?span style="FONT-SIZE: 12pt">濡傛灉鍦?/span>web搴旂敤涓闂簡鐢?/span>Servlet瀹瑰櫒綆$悊鐨勬煇涓?/span>JNDI Resource錛屽垯蹇呴』鍦?/span>web.xml涓0鏄庡榪欎釜JNDI Resource鐨勫紩鐢ㄣ傝〃紺鴻祫婧愬紩鐢ㄧ殑鍏冪礌涓?/span><resource-ref>,璇ュ厓绱犲姞鍦?/span><wepapp></ wepapp >涓?br />

<resource-ref>
聽聽聽聽 <descryiption>DB Connection</descryiption>
<res-ref-name>jdbc/JNDI 鍚嶅瓧 </ res-ref-name>
<res-type>javax.sql.DataSource </ res- type>
<res-auth>Container </ res- auth>
</resource-ref>

<resource-ref>
鍏冪礌鐨勫睘鎬у涓嬶細

灞炴?/span> 鎻忚堪
description 瀵規墍寮曠敤鐨勮祫婧愮殑璇存槑
res-ref-name 鎸囧畾鎵寮曠敤璧勬簮鐨?/span> JNDI 鍚嶅瓧錛屼笌 <Resource> 鍏冪礌涓殑 name 灞炴т繚鎸佷竴鑷?/span>
res-type 鎸囧畾鎵寮曠敤璧勬簮鐨勭被鍚嶅瓧錛屼笌 <Resource> 鍏冪礌涓殑 type 灞炴т繚鎸佷竴鑷?/span>
res-auth 鎸囧畾鎵寮曠敤璧勬簮鐨?/span> Manager 錛屼笌 <Resource> 鍏冪礌涓殑 auth 灞炴т繚鎸佷竴鑷?/span>

鍒拌繖閲岋紝鏁版嵁婧愬氨宸茬粡閰嶇疆鎴愬姛浜嗐備絾鏄垜鍦ㄦ祴璇曠殑鏃跺欓櫎浜嗕竴鐐瑰皬楹葷儲錛屼富瑕佸師鍥犳槸瀵笵ataSource鐨勬蹇墊病鎼炴竻妤氥傛垜鏄繖涔堟祴璇曠殑錛屽啓涓涓祴璇曠被錛岀劧鍚庡湪eclipse涓繘琛宩unit嫻嬭瘯錛?/span> 鎹曡幏鐨勫紓甯鎬負錛?/span>
javax.naming.NoInitialContextException : Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file:聽java.naming.factory.initia l 銆?/span>
鍚屾牱鐨勪唬鐮佸湪JSP鏂囦歡涓甯歌繍琛岋紝鍚庢潵緲諱簡涓浜涜祫鏂欙紝緇堜簬鎵懼埌浜嗛棶棰樼殑鎵鍦ㄤ簡銆傚師鏉ataSource鏄敱瀹瑰櫒錛圱OMCAT錛夋彁渚涚殑錛屾墍浠ユ垜鐨勬祴璇曚細鎶涘嚭寮傚父銆備負浜嗗啀嬈¢獙璇佹兂娉曟槸鍚︽紜紝鍦╦sp鏂囦歡涓璱mport鍒氭墠鎶涘嚭寮傚父鐨勭被錛屽湪榪涜榪炴帴鏁版嵁搴擄紝緇撴灉涓鍒囨甯搞?/span>
涓嬮潰鐨勪緥瀛愭槸瀹為檯搴旂敤涓嬌鐢?/span> DataSource 錛屽湪 jsp 鏂囦歡涓繛鎺?/span> oracle 銆?/span>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page import="javax.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
聽<head>
聽</head>
<body>
<%
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
DataSource db = (DataSource)envContext.lookup("jdbc/javablogorl");
// javablogorl 涓?/span> <Resource> 鍏冪礌涓?/span> name 灞炴х殑鍊?/span>
Connection conn = db.getConnection( );聽
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM blog_systemadmin");
while(rs.next()){
聽聽聽聽聽聽 out.print(rs.getString("admin_name")+" ");
聽聽聽聽聽聽 out.print(rs.getString("admin_password")+"<br>");
}
rs.close();
stmt.close();
conn.close();
%>聽
聽</body>
</html>


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=674822



haogj 2006-04-24 21:21 鍙戣〃璇勮
]]>
濂囨殑 Java 鏃ユ湡http://m.tkk7.com/haogj/archive/2006/04/18/41746.htmlhaogjhaogjTue, 18 Apr 2006 13:04:00 GMThttp://m.tkk7.com/haogj/archive/2006/04/18/41746.htmlhttp://m.tkk7.com/haogj/comments/41746.htmlhttp://m.tkk7.com/haogj/archive/2006/04/18/41746.html#Feedback0http://m.tkk7.com/haogj/comments/commentRss/41746.htmlhttp://m.tkk7.com/haogj/services/trackbacks/41746.html聽聽Calendar cal = Calendar.getInstance();
聽聽cal.set(1999, 12, 31);
聽聽System.out.println( cal.get(Calendar.YEAR) +"");

榪欎笁琛屼唬鐮佺殑鎵ц緇撴灉鏄粈涔堬紵

鏄?1999 鍚楋紵

浣嗘槸瀹冩病鏈夛紝緇撴灉鏄?2000銆傛槸鍗冨勾铏棶棰樺悧錛?br />
聽聽聽聽聽聽聽 浜嬫儏姣旀垜浠兂璞$殑榪樿緋熺硶錛氳繖鏄嚧鍛界殑 Date/Calendar 闂銆傚湪 Java 1.0 鍙戝竷鐨勬椂鍊欙紝錛屽畠鍞竴鏀寔鐨勬棩鍘嗚綆楃被灝辨槸 Date 綾匯傜敱浜庤繖涓被鏈夎澶氱殑闂錛屽洜姝わ紝鍦?1.1 鐗堢殑鏃跺欙紝Calendar 綾昏娣誨姞鍒?Java 涓紝浠ョ籂姝?Date 鐨勭己鐐癸紝涓嶅垢鐨勬槸錛岄棶棰樻洿澶氫簡銆?br />聽
聽聽聽聽聽聽聽 鎴戜滑涔犳儻涓婂皢絎竴涓湀褰撲綔 1錛屽洜姝?12聽 鍙互鐢ㄦ潵琛ㄧず 12 鏈堬紝涓嶅垢鐨勬槸錛孌ate 鐨勬湀浠借〃紺轟粠 0 寮濮嬶紝鍥犳 12 鏈堝皢鐢?11 鏉ヨ〃紺猴紝鑰屼笖 Calendar 緇х畫寤剁畫浜嗚繖涓敊璇傚洜姝や笂闈㈢殑浠g爜灝嗘湀浠借緗負浜?13 鏈堬紝浣嗘槸瀹為檯鐨勬湀浠藉彧鏈?12 涓湀錛屼唬鐮佸簲璇ユ姏鍑轟竴涓紓甯革紝閫氱煡鎴戜滑鍙戠敓浜嗕粈涔堬紝浠栧簲璇ヨ繖涔堝仛錛屽彲鏄紝瀹冩病鏈夛紝瀹冪洿鎺ヨ涓鴻繖搴旇鏄笅涓涓湀錛屼篃灝辨槸 2000 騫寸殑 1 鏈堛傚洜姝ゆ垜浠笂闈㈢殑浠g爜杈撳嚭緇撴灉涓?2000銆?br />
Date d = cal.getTime();
System.out.println( d.getDay());

鍐嶇湅榪欎袱琛屼唬鐮佺殑緇撴灉鏄粈涔堬紵

鏄?31 鍚?

緇撴灉鏄?1

聽聽聽聽聽聽聽 鎴戜滑鍦ㄥ墠闈㈠皢鏃ユ湡璁句負浜?31 鏃ワ紝鍦?cal.getTime() 涓繑鍥炰簡涓涓?Date 綾誨瀷鐨勬棩鏈燂紝榪欎釜鏃ユ湡涔熷簲璇ユ槸 31 錛屼負浠涔堟槸 1 鍛紵

聽聽聽聽聽聽聽 榪樻槸鏌ヤ竴涓?JavaDoc 鍚э紝 Date.getDay 榪斿洖鐨勫疄闄呬笂鏄棩鏈熺殑鏄熸湡鏁幫紝涔熷氨鏄繑鍥炵殑緇撴灉鏄槦鏈熷嚑錛岃屼笉鏄湀浠戒腑鐨勬棩鏈熴傝繖涓間粠鏄熸湡澶╁紑濮嬭綆楋紝浠幝? 寮濮嬶紝鍥犳錛屾墦鍗?1聽 琛ㄧず 2000騫?2鏈?1鏃ユ槸鏄熸湡涓銆傛敞鎰忎竴涓嬪惂錛?Calendar 鐨勬柟娉?get( Calendar.DAY_OF_WEEK) 涓嶇煡閬撲負浠涔堣繑鍥炵殑鏄熀浜?1聽寮濮嬬殑鏄熸湡鏃ユ湡錛岃屼笉鏄熀浜?0 寮濮嬬殑鏄熸湡鏃ユ湡銆?br />
聽聽聽 浠ヤ笂鍐呭鍙栬嚜 銆奐ava 瑙f儜銆?P144
聽聽聽聽聽聽聽




haogj 2006-04-18 21:04 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲国产无套无码av电影| 在线观看亚洲精品福利片| 亚洲午夜电影在线观看高清| 91精品全国免费观看青青| 亚洲桃色AV无码| 久久高潮一级毛片免费| 国产AV无码专区亚洲AV漫画| www免费插插视频| 亚洲精品无码乱码成人| 午夜影院免费观看| 亚洲视频国产精品| 国产精品美女午夜爽爽爽免费| 亚洲一区电影在线观看| 国产成人涩涩涩视频在线观看免费| 亚洲爆乳少妇无码激情| 亚洲国产成人久久笫一页| jizz中国免费| 精品亚洲A∨无码一区二区三区| 亚洲免费综合色在线视频| 久久综合亚洲色hezyo| 亚洲免费一区二区| 久久99精品免费视频| 亚洲AV成人无码天堂| 全部免费毛片在线| 日韩电影免费在线观看| 亚洲人成综合在线播放| 免费真实播放国产乱子伦| 免费黄网站在线看| 亚洲午夜精品久久久久久app| 四虎永久精品免费观看| 性无码免费一区二区三区在线| 亚洲剧场午夜在线观看| 免费一看一级毛片人| 久久国产乱子伦精品免费一| 亚洲国产精品一区二区三区在线观看| 亚洲av成人一区二区三区在线观看| a级毛片高清免费视频| 激情综合亚洲色婷婷五月| 亚洲国产婷婷香蕉久久久久久| 亚洲黄色免费网址| 日本一区二区在线免费观看|