您的位置:首页 > 编程语言 > Java开发

一个javabean轻松实现对数据库的各种操作

2004-08-04 11:02 573 查看
1.调用实例

<%@ page contentType="text/html" import="operate_db.*,java.sql.*"%>
<jsp:useBean id="querybean" scope="request" class="operate_db.QueryBean" />
<%
  String prm1,prm2,prm3;
  ResultSet rst=null;
  prm1 = ...;
  prm2 = ...;
  prm3 = ...;
  querybean.setConnection("sun.jdbc.odbc.JdbcOdbcDriver","jdbc:odbc:数据源名","sa","");
 
  try{

    String[] param = {prm1,prm2,prm3};
      /*设置select语句*/
      querybean.setQuerystatement("Select * from table where field1 = ? and field2=? and field3=?");
      querybean.setParam(param);
      rst=querybean.getResult();
    }catch(Exception e){System.out.println(e);  }

while (rst.next()){

%><%=rst.getString(1)%>

<%}%>

2.javabean  QueryBean

QueryBean.java:

pacakage operate_db;
/**
* Title:        select insert update and delete
* Description:  select insert update and delete
* Copyright:    Copyright (c) 2001
* @author Lci21
* @version 1.0
*/

import java.sql.*;
public class QueryBean
{   
    public String query_statement;  /*定义sql语句*/
    public String param[];          /*查询条件,或者是新的记录*/
    public ResultSet result=null;   
    public Connection conn;
   
    public void setParam(String[] param)
    {
        this.param=param;
    }
    public void setQuerystatement(String query_statement)
    {
        this.query_statement=query_statement;
    }
    public void setConnection(String driverName,String jdbcURL,String username,String passwd) throws Exception
    {
        Connection conn1;
        Class.forName(driverName);
        conn1=DriverManager.getConnection(jdbcURL,username,passwd);
        conn1.setAutoCommit(false);
        this.conn = conn1;
    }
    /*获取查询结果*/
    public ResultSet getResult() 
    {
        try
        {
            PreparedStatement select_stm=conn.prepareStatement(query_statement,java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
            if (param!=null)
                    for(int i=0;i<param.length;i++)
                        select_stm.setString(i+1,param[i]);
            result=select_stm.executeQuery();                                       
        }catch(Exception e){System.out.println(e);}
        return result;
    }
   
/*对数据库进行增加记录操作*/ 
    public void insertRecord() throws SQLException,java.io.UnsupportedEncodingException
    {
        try
        {
            PreparedStatement insert_stm=conn.prepareStatement(query_statement);
            if (param!=null)
                for(int i=0;i<param.length;i++)
                    insert_stm.setString(i+1,param[i]);
            insert_stm.executeUpdate();
            insert_stm.close();
            conn.commit();
        }
        catch(Exception e)
        {
            System.out.println(e);
            conn.rollback();
        }       
    }
         
/*对数据记录进行更改操作*/     
        public void updateRecord() throws SQLException,java.io.UnsupportedEncodingException
        {
            try
            {
                PreparedStatement update_stm=conn.prepareStatement(query_statement);
                if (param!=null)
                    for (int i=0;i<param.length;i++)
                        update_stm.setString(i+1,param[i]);
                update_stm.executeUpdate();
                update_stm.close();
                conn.commit();
            }
            catch(Exception e)
            {
                System.out.println(e);
                conn.rollback();
            }
        }
  /*删除数据记录*/                         
        public void deleteRecord() throws SQLException,java.io.UnsupportedEncodingException
        {
            try
            {
                PreparedStatement delete_stm=conn.prepareStatement(query_statement);
                if (param!=null)
                    for (int i=0;i<param.length;i++)
                        delete_stm.setString(i+1,param[i]);
                delete_stm.executeUpdate();
                delete_stm.close();
                conn.commit();
            }
            catch(Exception e)
            {
                System.out.println(e);
                conn.rollback();
            }
        }   
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息