myeclipse中为struts配置dbcp数据池

Java代码   收藏代码
  1. <data-sources >   
  2.     <data-source key="datasource" type="org.apache.commons.dbcp.BasicDataSource">   
  3.       <set-property property="password" value="" />   
  4.       <set-property property="minCount" value="1" />   
  5.       <set-property property="maxCount" value="10" />   
  6.       <set-property property="username" value="root" />   
  7.       <set-property property="driverClassName" value="org.gjt.mm.mysql.Driver" />   
  8.       <set-property property="description" value="for struts attack aolution" />   
  9.       <set-property property="url" value="jdbc:mysql://localhost:3306/pip2DB" />   
  10.       <set-property property="readOnly" value="false" />   
  11.       <set-property property="autoCommit" value="true" />   
  12.     </data-source>   
  13.  </data-sources>  


Java代码   收藏代码
  1. package com.yourcompany.struts.action;  
  2.   
  3. import javax.servlet.http.HttpServletRequest;  
  4. import javax.servlet.http.HttpServletResponse;  
  5. import javax.sql.DataSource;  
  6.   
  7. import org.apache.struts.action.Action;  
  8. import org.apache.struts.action.ActionForm;  
  9. import org.apache.struts.action.ActionForward;  
  10. import org.apache.struts.action.ActionMapping;  
  11. import com.yourcompany.struts.form.SuccessForm;  
  12. import java.sql.*;  
  13. /**  
  14.  * MyEclipse Struts 
  15.  * Creation date: 04-17-2010 
  16.  *  
  17.  * XDoclet definition: 
  18.  * @struts.action path="/success" name="successForm" input="/form/success.jsp" scope="request" validate="true" 
  19.  * @struts.action-forward name="success" path="/index.jsp" 
  20.  */  
  21. public class SuccessAction extends Action {  
  22.     /* 
  23.      * Generated Methods 
  24.      */  
  25.   
  26.     /**  
  27.      * Method execute 
  28.      * @param mapping 
  29.      * @param form 
  30.      * @param request 
  31.      * @param response 
  32.      * @return ActionForward 
  33.      */  
  34.     public ActionForward execute(ActionMapping mapping, ActionForm form,  
  35.             HttpServletRequest request, HttpServletResponse response) {  
  36.         SuccessForm successForm = (SuccessForm) form;// TODO Auto-generated method stub  
  37.           
  38.           
  39.         try {  
  40.             DataSource ds=getDataSource(request,"datasource");  
  41.             Connection conn=ds.getConnection();  
  42.             StringBuilder sb=new StringBuilder();  
  43.             ResultSet rs;  
  44.             String sql="select * from TransitionInfo where TranName=?&& BelongId=?";  
  45.             PreparedStatement ps=conn.prepareStatement(sql);  
  46.             ps.setString(1"T2");  
  47.             ps.setInt(21);  
  48.               
  49.             rs=ps.executeQuery();  
  50.               
  51.             while(rs.next())  
  52.             {  
  53.                 sb.append("变迁名:"+rs.getString("TranName")+"\n\n");                
  54.                 sb.append("执行人:"+rs.getString("TranAgent")+"\n\n");  
  55.                 sb.append("执行时间:"+rs.getInt("TranTime")+"\n\n");  
  56.                 sb.append("任务内容:"+rs.getString("TranTask")+"\n\n");  
  57.                 sb.append("详细信息:"+rs.getString("TranMore")+"\n\n");  
  58.             }  
  59.             request.setAttribute("rs", sb.toString());  
  60.             return mapping.findForward("success");  
  61.         } catch (SQLException e) {  
  62.             // TODO Auto-generated catch block  
  63.             e.printStackTrace();  
  64.             return null;  
  65.         }  
  66.     }  
  67. }  


直接在struts-config.xml中右键data-sources 然后New。 默认的type是: org.apache.struts.util.GenericDataSource ,struts自带的一个数据库连接池。 然后正确输入各种property的value。 测试,好用。 
如果将type选择为: org.apache.commons.dbcp.BasicDataSource 这个DBCP的数据库连接池。 然后键入正确的value。 测试,提示各种异常找不到Driver。 
查看DBCP的文档,发现MYECLIPSE生成的配置XML元素有问题。 
DBCP需要的是driverClassName和username这两个properties。 
而Myeclipse自动生成的是driverClass和user这两个properties。 
改过来之后发现DBCP的数据库连接池也好用了,这应该算是MYECLIPSE开发struts的一个BUG吧,数据库连接池的配置是按照struts默认的GenericDataSource来的。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值