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

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();
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值