struts中数据源(DataSource)的配置与使用

来源:互联网 发布:云陌软件 编辑:程序博客网 时间:2024/05/18 00:57
导读:
  在 struts-config.xml 中:注需要下载两个jar文件。commons-dbcp.jar和commons-pool.jar放到classpath中
  
  
   type="org.apache.commons.dbcp.BasicDataSource">  
   property="<  property="driverClassName"
  value="oracle.jdbc.driver.OracleDriver"/>
   property="username"
value="cui" />  property="username"
  value="cui" />
   property="password"
value="nick" />  property="password"
  value="nick" />
   property="url"
value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"/>  property="url"
  value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"/>
  
  
  =========================================================================
  在 UserLoginAction.java 中
  package com.yourcompany.struts.action;
  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 com.yourcompany.struts.form.UserLoginForm;
  import javax.sql.*;
  import java.sql.*;
  public class UserLoginAction extends Action {
  public ActionForward execute(ActionMapping mapping, ActionForm form,
  HttpServletRequest request, HttpServletResponse response) {
  UserLoginForm userLoginForm = (UserLoginForm) form;
  
  System.out.println("execute!!!!");
  
  Connection con = this.getConnection(request);
  String username = userLoginForm.getUserName();
  String password = userLoginForm.getPassword();
  if(this.queryData(username, password, con))
  return mapping.findForward("success");
  else
  return mapping.findForward("failure");
  
  }
  private Connection getConnection(HttpServletRequest request){
  Connection con =null;
  DataSource dataSource = null;
  dataSource = this.getDataSource(request);
  try{
  con = dataSource.getConnection();
  }catch(SQLException e){
  System.out.println("Connection create error!");
  }
  return con;
  }
  private boolean queryData(String username,String password,Connection con) {
  boolean flag = false;
  String sql = "select * from client where username=' "+username+" ' and passwd=' "+password+" ' ";
  ResultSet rs = null;
  
  try{
  Statement stmt = con.createStatement();
  System.out.println("SQL="+sql);
  rs = stmt.executeQuery(sql);
  flag = rs.next();
  }catch(SQLException e){
  System.out.println("queryData error!");
  try{
  con.close();
  }catch(SQLException e1){
  e1.printStackTrace();
  }
  }
  return flag;
  }
  }

本文转自
http://hi.baidu.com/qdcoder/blog/item/e9daab08e8a004d562d9869f.html