﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-BBT_soft</title><link>http://www.blogjava.net/bbtsoft/</link><description /><language>zh-cn</language><lastBuildDate>Sun, 12 Apr 2026 13:24:31 GMT</lastBuildDate><pubDate>Sun, 12 Apr 2026 13:24:31 GMT</pubDate><ttl>60</ttl><item><title>你</title><link>http://www.blogjava.net/bbtsoft/archive/2009/09/26/296558.html</link><dc:creator>BBT_soft</dc:creator><author>BBT_soft</author><pubDate>Sat, 26 Sep 2009 07:54:00 GMT</pubDate><guid>http://www.blogjava.net/bbtsoft/archive/2009/09/26/296558.html</guid><wfw:comment>http://www.blogjava.net/bbtsoft/comments/296558.html</wfw:comment><comments>http://www.blogjava.net/bbtsoft/archive/2009/09/26/296558.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/bbtsoft/comments/commentRss/296558.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bbtsoft/services/trackbacks/296558.html</trackback:ping><description><![CDATA[<p>一切都是那么的措手不及<br />
你来的那么突然<br />
令我一点防备都没有<br />
我对你的到来很无奈<br />
但我又不得不好好待你<br />
你是我的眼中钉<br />
我的手中刺<br />
我发誓要杀掉你<br />
不让你再祸害其他人<br />
我在努力地做着我该做的事<br />
天啊 又出bug了</p>
<img src ="http://www.blogjava.net/bbtsoft/aggbug/296558.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bbtsoft/" target="_blank">BBT_soft</a> 2009-09-26 15:54 <a href="http://www.blogjava.net/bbtsoft/archive/2009/09/26/296558.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用邮箱的SMTP与POP3服务器(个人总结)</title><link>http://www.blogjava.net/bbtsoft/archive/2009/08/08/290336.html</link><dc:creator>BBT_soft</dc:creator><author>BBT_soft</author><pubDate>Sat, 08 Aug 2009 04:42:00 GMT</pubDate><guid>http://www.blogjava.net/bbtsoft/archive/2009/08/08/290336.html</guid><wfw:comment>http://www.blogjava.net/bbtsoft/comments/290336.html</wfw:comment><comments>http://www.blogjava.net/bbtsoft/archive/2009/08/08/290336.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/bbtsoft/comments/commentRss/290336.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bbtsoft/services/trackbacks/290336.html</trackback:ping><description><![CDATA[<p>163&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.163.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.163.com</p>
<p>126&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.126.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3.126.com</p>
<p>188&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.188.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3.188.com</p>
<p>yeah&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.yeah.net&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3.yeah.net<br />
<br />
sina&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.sina.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.sina.com</p>
<p>qq&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.qq.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.qq.com</p>
<p>yahoo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.mail.yahoo.com.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.mail.yahoo.com.cn&nbsp;&nbsp;&nbsp; yahoo前提是开通来信提醒业务</p>
<p>yahoo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.mail.yahoo.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.mail.yahoo.cn</p>
<p>google&nbsp;&nbsp;&nbsp;&nbsp; smtp.gmail.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.gmail.com</p>
<p>tom&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.tom.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.tom.com</p>
<p>sogou&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.mail.sogou.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3.mail.sogou.com</p>
<p>sohu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.sohu.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3.sohu.com</p>
<p>139&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.139.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.139.com</p>
<p>china&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.china.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop.china.com&nbsp;&nbsp;&nbsp; 中华网邮箱</p>
<p>21CN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.21cn.net&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3：pop.21cn.net&nbsp;&nbsp;&nbsp;&nbsp; 商务邮箱服务器</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.21cn.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3：pop.21cn.com&nbsp;&nbsp;&nbsp; 经济邮箱服务器<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; smtp.21cn.com&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pop3：pop.21cn.com 免费邮箱服务器 </p>
<img src ="http://www.blogjava.net/bbtsoft/aggbug/290336.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bbtsoft/" target="_blank">BBT_soft</a> 2009-08-08 12:42 <a href="http://www.blogjava.net/bbtsoft/archive/2009/08/08/290336.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>equals()方法个人理解</title><link>http://www.blogjava.net/bbtsoft/archive/2009/08/08/290335.html</link><dc:creator>BBT_soft</dc:creator><author>BBT_soft</author><pubDate>Sat, 08 Aug 2009 04:38:00 GMT</pubDate><guid>http://www.blogjava.net/bbtsoft/archive/2009/08/08/290335.html</guid><wfw:comment>http://www.blogjava.net/bbtsoft/comments/290335.html</wfw:comment><comments>http://www.blogjava.net/bbtsoft/archive/2009/08/08/290335.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/bbtsoft/comments/commentRss/290335.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bbtsoft/services/trackbacks/290335.html</trackback:ping><description><![CDATA[<p>《think in java》中有这么一段话：</p>
<p><font color="#993300">如果想比较两个对象的实际内容是否相同，又该如何操作呢？此时，必须使用所有对象都使用的特殊方法equals()。但这个方法不适用于"基本类型",基本类型直接使用==和!=即可</font>。如：</p>
<p>Integer n1 = new Integer(47);<br />
Integer n2 = new Integer(47);<br />
System.out.println(ne.equals(n2));</p>
<p>正如我们预计的那样，此时得到的结果是true。但事实上并不总是这么简单！假设您<font color="#993300">创建了自己的类</font>，像下面这样：<br />
class Value{<br />
int i;<br />
}<br />
public class Test{</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public static void main(String[] args){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Value v1 = new Value();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Value v2 = new Value();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(v1.equals(v2));<br />
&nbsp;&nbsp;&nbsp; }<br />
}<br />
此时的结果又变回了false！</p>
<p><font color="#993300">这是由于equals()的默认行为是比较引用。所以除非在自己的新类中重载equals()方法，否则不可能表现出我们希望的行为。</font></p>
<p><font color="#993300">大多数Java类库都实现了用来比较对象内容的equals()方法，而非比较对象引用的equals()方法。</font></p>
<p><font color="#993300">个人理解：equals()默认行为是比较引用，只是现在绝大多数Java类库都实现了用来比较对象内容的equals()方法，而并没有实现比较对象引用的equals()方法。所以现在说equals()比较的是内容，如果自己的类实现比较对象引用的equals()方法，也可以说equals()比较对象的引用，只是实现问题。</font></p>
<img src ="http://www.blogjava.net/bbtsoft/aggbug/290335.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bbtsoft/" target="_blank">BBT_soft</a> 2009-08-08 12:38 <a href="http://www.blogjava.net/bbtsoft/archive/2009/08/08/290335.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSTL的forEach标签和Struts的logic:iterate标签（解决Action中request.setAttribute("list",list)）</title><link>http://www.blogjava.net/bbtsoft/archive/2009/08/02/289475.html</link><dc:creator>BBT_soft</dc:creator><author>BBT_soft</author><pubDate>Sun, 02 Aug 2009 08:21:00 GMT</pubDate><guid>http://www.blogjava.net/bbtsoft/archive/2009/08/02/289475.html</guid><wfw:comment>http://www.blogjava.net/bbtsoft/comments/289475.html</wfw:comment><comments>http://www.blogjava.net/bbtsoft/archive/2009/08/02/289475.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/bbtsoft/comments/commentRss/289475.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bbtsoft/services/trackbacks/289475.html</trackback:ping><description><![CDATA[<p>由于我用的是struts框架，就拿整个项目介绍：</p>
<p>1.首先把jstl的两个常用包jstl.jar、standard.jar加载到环境中</p>
<p>2.Action代码：（整个过程不需要了解，这儿方法就是返回一个封装Students对象的list，然后request.setAttribute("list", list)起来）</p>
<p>public ActionForward selectStudent(ActionMapping mapping, ActionForm form,<br />
&nbsp;&nbsp;&nbsp; HttpServletRequest request, HttpServletResponse response) {<br />
&nbsp;&nbsp; StudentForm studentForm = (StudentForm) form;<br />
&nbsp;&nbsp; DBConnection dbconn = new DBConnection();<br />
&nbsp;&nbsp; Connection conn = dbconn.getConnection();<br />
&nbsp;&nbsp; StudentServiceFactory serviceFactory = new StudentServiceFactory();<br />
&nbsp;&nbsp; List list = serviceFactory.getStudentService().selectStudent(conn);<br />
&nbsp;&nbsp; <font color="#993300">request.setAttribute("list", list);</font><br />
&nbsp;&nbsp; try {<br />
&nbsp;&nbsp;&nbsp; conn.close();<br />
&nbsp;&nbsp; } catch (SQLException e) {<br />
&nbsp;&nbsp;&nbsp; e.printStackTrace();<br />
&nbsp;&nbsp; }<br />
&nbsp;&nbsp; return mapping.findForward("show");<br />
}</p>
<p>3.show.jsp页面：</p>
<p>&lt;%@ page language="java" pageEncoding="utf-8"%&gt;<br />
<font color="#993300">&lt;%@ taglib uri="</font><a href="http://java.sun.com/jstl/core_rt"><font color="#993300">http://java.sun.com/jstl/core_rt</font></a><font color="#993300">" prefix="c" %&gt;//这三句很重要</font></p>
<p><font color="#993300">&lt;%@ taglib uri="</font><a href="http://jakarta.apache.org/struts/tags-bean"><font color="#993300">http://jakarta.apache.org/struts/tags-bean</font></a><font color="#993300">" prefix="bean"%&gt; </font></p>
<p><font color="#993300">&lt;%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %&gt;</font><br />
&lt;%<br />
String path = request.getContextPath();<br />
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";<br />
%&gt;</p>
<p>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt;<br />
&lt;html&gt;<br />
&lt;head&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;base href="&lt;%=basePath%&gt;"&gt;<br />
&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; &lt;title&gt;My JSP 'show.jsp' starting page&lt;/title&gt;<br />
&nbsp;&nbsp;&nbsp; <br />
&lt;meta http-equiv="pragma" content="no-cache"&gt;<br />
&lt;meta http-equiv="cache-control" content="no-cache"&gt;<br />
&lt;meta http-equiv="expires" content="0"&gt;&nbsp;&nbsp;&nbsp; <br />
&lt;meta http-equiv="keywords" content="keyword1,keyword2,keyword3"&gt;<br />
&lt;meta http-equiv="description" content="This is my page"&gt;<br />
&lt;!--<br />
&lt;link rel="stylesheet" type="text/css" href="styles.css"&gt;<br />
--&gt;</p>
<p>&lt;/head&gt;<br />
<br />
&lt;body&gt; <br />
&nbsp;&nbsp;&nbsp; 查询结果如下： &lt;br&gt;<br />
&lt;table&gt;<br />
&nbsp;&nbsp; &lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;td&gt;ID&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;td&gt;姓名&lt;/td&gt;<br />
&nbsp;&nbsp; &lt;/tr&gt;<br />
&nbsp;&nbsp;<font color="#993300">&lt;c:forEach items="${list}" var="student"&gt;// items为list的一个迭代器，list为Action中传递过来的list，student为Student类对象<br />
</font>&nbsp;&nbsp; &lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;<font color="#993300">&lt;td&gt;${student.id }&lt;/td&gt;//输出student的id属性<br />
&nbsp;&nbsp;&nbsp; &lt;td&gt;${student.name }&lt;/td&gt;//输出student的name属性<br />
</font>&nbsp;&nbsp; &lt;/tr&gt;<br />
&nbsp;&nbsp; &lt;/c:forEach&gt;</p>
<p><font color="#993300">&lt;logic:iterate id="li" name="list" type="vo.Student"&gt;//id为自定义的名字，name为Action中传过来的list，type为实体类，包括完整路径，这里是vo.Student<br />
&nbsp;&nbsp;&nbsp; &lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &lt;td&gt;&lt;bean:write name="li" property="id"/&gt;&lt;/td&gt;//name为逻辑名，和logic:iterate id="li"中的id对应，property为实体类中真正的属性<br />
&nbsp;&nbsp;&nbsp;&nbsp; &lt;td&gt;&lt;bean:write name="li" property="name"/&gt;&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &lt;td&gt;&lt;a href="student.do?method=deleteStudent&amp;id=&lt;bean:write name="li" property="id"/&gt;"&gt;删除&lt;/a&gt;&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;/tr&gt;<br />
&nbsp;&nbsp; &lt;/logic:iterate&gt;</font></p>
<p><br />
&lt;/table&gt;<br />
&lt;a href="student.jsp"&gt;返回&lt;/a&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</p>
<p>在JSP页面引入Struts标签库的时候有所不同：</p>
<p>struts1.3的为：</p>
<p>&lt;%@ taglib uri="<a href="http://jakarta.apache.org/struts/tags-bean">http://jakarta.apache.org/struts/tags-bean</a>" prefix="bean"%&gt; <br />
&lt;%@ taglib uri="<a href="http://jakarta.apache.org/struts/tags-html">http://jakarta.apache.org/struts/tags-html</a>" prefix="html"%&gt;<br />
&lt;%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %&gt;或者&lt;%@ taglib uri="<a href="http://struts.apache.org/tags-logic">http://struts.apache.org/tags-logic</a>" prefix="logic" %&gt;</p>
 <img src ="http://www.blogjava.net/bbtsoft/aggbug/289475.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bbtsoft/" target="_blank">BBT_soft</a> 2009-08-02 16:21 <a href="http://www.blogjava.net/bbtsoft/archive/2009/08/02/289475.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Tomcat6.x+struts1.x+MySQL5.x连接池问题</title><link>http://www.blogjava.net/bbtsoft/archive/2009/06/13/281965.html</link><dc:creator>BBT_soft</dc:creator><author>BBT_soft</author><pubDate>Sat, 13 Jun 2009 01:21:00 GMT</pubDate><guid>http://www.blogjava.net/bbtsoft/archive/2009/06/13/281965.html</guid><wfw:comment>http://www.blogjava.net/bbtsoft/comments/281965.html</wfw:comment><comments>http://www.blogjava.net/bbtsoft/archive/2009/06/13/281965.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/bbtsoft/comments/commentRss/281965.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bbtsoft/services/trackbacks/281965.html</trackback:ping><description><![CDATA[<p>1.在项目的WebRoot/META-INF下建context.xml文件，注意必须在该目录下，Tomcat会自动找这个文件，Tomcat6.0以后就不用在web.xml中配置了：</p>
<p>&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />
&lt;Context reloadable="true" crossContext="true"&gt;</p>
<p>&lt;Resource <br />
name="jdbc/test" ----------注意：test为项目名<br />
auth="Container"----------该项为不变项<br />
type="javax.sql.DataSource"----------该项为不变项<br />
driverClassName="com.mysql.jdbc.Driver"----------数据库驱动名<br />
url="jdbc:mysql://localhost:3306/haotian?autoReconnect=true"-------url<br />
username="root"-----用户名<br />
password="root"------密码<br />
maxActive="10"&nbsp;&nbsp; ------最大连接数 <br />
maxIdle="5"&nbsp;&nbsp;&nbsp;&nbsp; --------最大空闲连接数<br />
maxWait="-1"/&gt;&nbsp;&nbsp; ------最大等待毫秒数，-1为无限等待<br />
<br />
&lt;/Context&gt;</p>
<p>2.连接类：</p>
<p>public class DBConnection { <br />
private Connection conn=null;<br />
public Connection getConnection(){<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp; //生成上下文对象,通过它可以向容器发送别名.<br />
&nbsp;&nbsp;&nbsp; Context context;<br />
&nbsp;&nbsp;&nbsp; try {<br />
&nbsp;&nbsp;&nbsp;&nbsp; context = new InitialContext();<br />
&nbsp;&nbsp;&nbsp;&nbsp; //查找对象<br />
&nbsp;&nbsp;&nbsp;&nbsp; DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/test");//jdbc/test为配置文件中的name<br />
&nbsp;&nbsp;&nbsp;&nbsp; //得到连接<br />
&nbsp;&nbsp;&nbsp;&nbsp; try {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; conn=ds.getConnection();<br />
&nbsp;&nbsp;&nbsp;&nbsp; } catch (SQLException e) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.printStackTrace();<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; } catch (NamingException e) {<br />
&nbsp;&nbsp;&nbsp;&nbsp; // TODO Auto-generated catch block<br />
&nbsp;&nbsp;&nbsp;&nbsp; e.printStackTrace();<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp; return conn;<br />
}</p>
<p>3.把MySQL5.0的驱动包放到Tomcat的lib目录下，注意：是Tomcat的lib，而不是项目的lib。（不知道为什么会这样，之前不用这种连接池的时候放在项目的lib中就可以连接成功，但是现在就不可以，个人认为可能是context.xml使得Tomcat找自身lib中的驱动包，而不是项目中的驱动包）</p>
<p>4.测试：</p>
<p>这里并非是在连接类里面写个main()就可以测试成功的，如果这样会出现下面的错误：</p>
<p>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.initial<br />
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)<br />
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)<br />
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)<br />
at javax.naming.InitialContext.lookup(Unknown Source)<br />
at util.DBConnection.getConnection(DBConnection.java:26)<br />
at util.DBConnection.main(DBConnection.java:49)</p>
<p>所以，只有通过和前台结合才能测试连接是否成功。</p>
<p>总结：</p>
<p>context.xml必须在项目的WebRoot/META-INF，Tomcat会自动找这个文件；</p>
<p>数据库驱动包必须放在Tomcat的lib目录下（可能是Tomcat会根据context.xml在自身的lib目录下找驱动包）；</p>
<p>不可以直接在连接类中写main()测试，必须和前台结合；</p>
<img src ="http://www.blogjava.net/bbtsoft/aggbug/281965.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bbtsoft/" target="_blank">BBT_soft</a> 2009-06-13 09:21 <a href="http://www.blogjava.net/bbtsoft/archive/2009/06/13/281965.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>