Struts通过数据源连接数据库

Struts通过数据源连接数据库
By: Border
    环境:myeclipse3.8.3  + eclipse3.0.1 + tomcat 5.0.16 + struts1.1 + oracle9.0.1.0.1
Oracle驱动在安装目录下%oracle_home%/jdbc/lib/classes12.jar 不用的版本有不同的名字,可以参照%oracle_home%/jdbc/readme
 
1.    struts-config.xmldata-source中的元素
      
<data-sources >
      <data-source key="org.apache.struts.action.DATA_SOURCE"
                   type="org.apache.struts.util.GenericDataSource">
         <set-property property="minCount" value="2" />
         <set-property property="password" value="manager" />
         <set-property property="maxCount" value="10" />
         <set-property property="user" value="system" />
         <set-property property="driverClass" value="oracle.jdbc.driver.OracleDriver" />
         <set-property property="description" value="oracle_database" />
         <set-property property="url" value="jdbc:oracle:thin:@192.168.1.209:1521:orcal" />
         <set-property property="autoCommit" value="true" />
         <set-property property="readOnly" value="false" />
         <set-property property="loginTimeout" value="1000" />
      </data-source>
   </data-sources>
 
注意:a.jdbc:oracle:thin:@192.168.1.209:1521:orcal 中的orcalsid码,在安装DBS时就有设置,默认为orcal
 
b. 在用struts默认的data-soutce org.apache.struts.util.GenericDataSource
而不是org.apache.tomcat.dbcp.dbcp.BasicDataSource
 
2..创建action class来测试DataSource
 
package com.yourcompany.struts;
 
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
 
import java.sql.*;
 
public class TestDataSource extends Action
{
 public ActionForward execute(
    ActionMapping mapping,
    ActionForm form,
    HttpServletRequest request,
    HttpServletResponse response) throws Exception{
 
       javax.sql.DataSource dataSource;
       java.sql.Connection myConnection=null;
       try {
        dataSource = getDataSource(request);
        myConnection = dataSource.getConnection();
        Statement stmt=myConnection.createStatement();
        ResultSet rst=stmt.executeQuery("select * from addressbook_table");
        System.out.println("********Out Put from TestDataSource ******");
        while(rst.next()){
        System.out.println("User Name is: " + rst.getString("name"));
        }
        System.out.println("******************************************");
        rst.close();
        stmt.close();
        // do what you wish with myConnection
       } catch (SQLException sqle) {
        getServlet().log("Connection.process", sqle);
       } finally {
        //enclose this in a finally block to make
        //sure the connection is closed
        try {
           myConnection.close();
        } catch (SQLException e) {
           getServlet().log("Connection.close", e);
        }
         }
      return mapping.findForward("DataSoutcesuccess");
 }
}
 
3.struts-config.xml里添加action mapping
<action
          path="/TestDataSource"
          type="com.yourcompany.struts.TestDataSource">
          <forward name="DataSoutcesuccess" path="/success.jsp"/>
       </action>
 
4. 创建一个success.jsp
 
欢迎访问个人Blog http://blog.csdn.net/border1985
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值