使用类文件的数据库连接方法

本文介绍了JSP运行环境搭建,包括Windows 2000、Tomcat 4.1.24、J2SDK 1.4.1.01、JDBC for SQL 2000和SQL 2000。给出了opendb.java文件代码,用于连接数据库并执行查询、更新等操作。还说明了编译和使用方法,以及登录页面的检查处理程序。

**************************************************
InberGong 10:24 2003-12-16
**************************************************
jsp运行环境:
windows2000+tomcat-4.1.24+j2sdk-1_4_1_01-windows-i586+jdbcforsql2000+sql2000
**************************************************
Tomcat 4.1\webapps\examples\WEB-INF\classes\opendb
**************************************************
建立文件:opendb.java
文件内容如下:
注意根据数据库连接情况对文件作适当修改.
**************************************************
package opendb;

import java.io.PrintStream;
import java.sql.*;

public class opendb
{

    String sDBDriver;
    String sConnStr;
    String sDBuser;
    String sDBpasswd;
    Connection conn;
    ResultSet rs;

    public opendb()
    {
        sDBDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
        sConnStr = "jdbc:microsoft:sqlserver://187.186.0.54:1433;databaseName=e_bizbid_netstars_com_cn";
        sDBuser = "sa";
        sDBpasswd = "gyb";
        conn = null;
        rs = null;
        try
        {
            Class.forName(sDBDriver);
        }
        catch(ClassNotFoundException classnotfoundexception)
        {
            System.err.println("opendb(): " + classnotfoundexception.getMessage());
        }
    }

    public ResultSet executeQuery(String s)
    {
        rs = null;
        try
        {
            conn = DriverManager.getConnection(sConnStr, sDBuser, sDBpasswd);
            Statement statement = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                    ResultSet.CONCUR_READ_ONLY);
            rs = statement.executeQuery(s);
        }
        catch(SQLException sqlexception)
        {
            System.err.println("aq.executeQuery: " + sqlexception.getMessage());
        }
        return rs;
    }
 public void executeUpdate(String sql)
 {
  try
  {
   conn = DriverManager.getConnection(sConnStr, sDBuser, sDBpasswd);
   Statement stmt = conn.createStatement();
   stmt.executeUpdate(sql);
  }
  catch(SQLException ex)
  {
   System.err.println("aq.executeUpdate: " + ex.getMessage());
   System.err.println("aq.executeUpadatestrSQL: " + sql);
  }
 }
    /**
  *根据表中一字段获取另一个字段
  *徐翠  2003年7月15日
 */
 public String executeQuery_Get_FieldValue(String field1,String field1_value,String field2,String table1)
    {
  String s,field2_value;
  s = "select " + field2 + " from " + table1 + "where " + field1 + "='" + field1_value + "'";
        rs = null;
  field2_value = null;
        try
        {
            conn = DriverManager.getConnection(sConnStr, sDBuser, sDBpasswd);
            Statement statement = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                    ResultSet.CONCUR_READ_ONLY);
            rs = statement.executeQuery(s);
            while (rs.next()){
    field2_value = rs.getString(field2);
   }
        }
        catch(SQLException sqlexception)
        {
            System.err.println("aq.executeQuery: " + sqlexception.getMessage());
        }
        return field2_value;
    }
}
***********************************************************************************
用java编译器(j2sdk\bin\javac.exe)将opendb.java编译成opendb.class文件
将文件拷贝到Tomcat 4.1\webapps\examples\WEB-INF\classes\opendb目录下(新建opendb目录)
***********************************************************************************
使用方法:
在JSP页面中加入:
<jsp:useBean id="RegisterBean" class="opendb.opendb" />
***********************************************************************************
以下是一个登录页面的检查处理程序:
***********************************************************************************
<%@ page contentType="text/html;charset=gb2312" %>
<%@page language="Java" import="java.sql.*"%>
<jsp:useBean id="RegisterBean" class="opendb.opendb" />
<%
String name1 = request.getParameter("name");
String pwd1 = request.getParameter("password");
String strSQL = "select * from supermaster where name='" + name1 + "' and password='" + pwd1 + "'";
//执行SQL语句,rs为返回结果
ResultSet rs=RegisterBean.executeQuery(strSQL);
//执行SQL语句,rs为返回结果
if(rs.next())
{
 //结果不为空,登录成功
 //把用户的注册名写入Session变量中
 session.putValue("session_E_Bizbid_id",rs.getString("id"));
 session.putValue("session_E_Bizbid_name",name1);
 session.putValue("session_E_Bizbid_user_type",rs.getString("member_class"));
 session.putValue("session_E_Bizbid_true_name",rs.getString("user_name"));
 session.putValue("session_E_Bizbid_login_enable",rs.getString("login_enable"));
 session.putValue("session_popedom_page_load_counter",rs.getString("id"));
 session.putValue("session_page_open_time",rs.getString("id"));
 
 //调用info.jsp显示用户登录成功的信息
 out.print("<meta http-equiv='refresh' content='0;url=index.jsp'>");
 rs.close();
}
else
{
 //查询结果为空,登录失败
 rs.close();
 session.putValue("login_message","Error in Login!");
 //调用info.jsp显示用户登录成功的信息
    out.print("<script>alert('用户名或密码错误,请重试');history.back();</script>");
}
%>
*************************************************************************************

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值