加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

比较适用初学者的JSP连接Access数据库代码

发布时间:2023-06-03 13:27:42 所属栏目:教程 来源:
导读:适用初学者的jsp连接access数据库代码,刚刚写的一个java web 中连接access数据库的代码。这些天讲到数据库操作,但是我的本子是xp home版,安装sql server比较麻烦,干脆弄个access来演示好了。有时小型桌面数据库还
适用初学者的jsp连接access数据库代码,刚刚写的一个java web 中连接access数据库的代码。这些天讲到数据库操作,但是我的本子是xp home版,安装sql server比较麻烦,干脆弄个access来演示好了。有时小型桌面数据库还是蛮实用的嘛,哈~
 
复制内容到剪贴板代码:
 
<%@ page contenttype="text/html; charset=gb18030" %>
 
<%@page import="java.sql.*" %>
 
<html>
 
<head>
 
<title>
 
jsp1
 
</title>
 
</head>
 
<body bgcolor="#ffffff">
 
<form method="post" action="/web/index.jsp">
 
<%
 
try{
 
class.forname("sun.jdbc.odbc.jdbcodbcdriver");
 
}
 
catch(classnotfoundexception e){
 
out.print("数据库驱动程序装入错误");
 
}
 
try{
 
string url="jdbc:odbc:driver={microsoft access driver (*.mdb)};dbq="+request.getrealpath("/")+"test.mdb";
 
//特别注意上面的driver和(*.mdb)之间是有空格的
 
/*这个test.mdb文件是存放在web module目录下的,当然可以自行改变路径*/
 
connection conn=drivermanager.getconnection(url);
 
statement stmt=conn.createstatement();
 
resultset rs=stmt.executequery("select * from log");//log为表名,和sql一样
 
while(rs.next()){
 
  out.print(rs.getint("id")+"  ");
 
  out.print(rs.getstring("username")+"  ");
 
  out.print(rs.getstring("password")+"  ");//log表中三个字段,主键是id,自增的。username和password是文本类型。
 
  out.println("<br>");
 
}
 
rs.close();
 
stmt.close();
 
conn.close();
 
}
 
catch(exception ex){
 
out.print(ex);
 
}
 
%>
 
</form>
 
</body>
 
</html>
 
下面是网上搜的一些jsp或javabean连接access的代码,摘自【http://blog.csdn.net/rimoer/archive/2007/04/06/1554842.aspx】
 
我写的一个用jsp连接access数据库的代码。
 
要正确的使用这段代码,你需要首先在access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据。
 
欢迎各位提出改进的意见。
 
以下用两种方式来实现jsp连接access数据库。
 
第一种jsp形式。
 
复制内容到剪贴板代码:
 
<%@ page contenttype="text/html; charset=gb2312" language="java"
 
import="java.sql.*"%>
 
<meta http-equiv="content-type" content="text/html; charset=gb2312">
 
<%
 
    /*********************************
 
     *********  jdbc_odbc连接access数据库,不需要设置数据源
 
     *********  date: 2005.8
 
     *********  email:[email protected]
 
     *********  author: dreamtime [梦想年华]
 
     *********  有任何欢迎提出指正  
 
     **********************************/

    // ******* 数据库连接代码 开始  *****
 
    //异常处理语句
 
    try
 
    {
 
        //以下几项请自行修改
 
        string spath = "data/test.mdb";//access 数据库路径
 
        string dbpath = application.getrealpath(spath);//转化成物理路径
 
        string dbname = "";        //acvess 数据库用户名,没有则为空
 
        string user = "";        //access 数据库密码,没有则为空
 
//数据库连接字符串
 
        string url ="jdbc:odbc:driver={microsoft access driver (*.mdb)};dbq="+dbpath;
 
        //加载驱动程序
 
        class.forname("sun.jdbc.odbc.jdbcodbcdriver");
 
        //建立连接
 
        connection conn= drivermanager.getconnection(url);
 
        //创建语句对象
 
        statement stmt=conn.createstatement(resultset.type_scroll_sensitive,resultset.concur_updatable);
 
        // ****   数据库连接代码 结束 ******
 
       
 
        //*********  测试数据代码开始  ******
 
        //请在数据库中建立username表,表中建立两个字段uid和pwd,类型为文本型
 
        string sql = "select * from username";
 
        resultset rs = stmt.executequery(sql);
 
        while(rs.next())
 
        {
 
            out.print("用户名:" + rs.getstring("uid"));
 
            out.print("  密码:" + rs.getstring("pwd") + "<br>");
 
        }
 
        out.print("<br>恭喜你!数据库连接成功!");
 
        rs.close();                                    //关闭记录集对象
 
        stmt.close();                                //关闭语句对象
 
        conn.close();                                //关闭连接对象
 
    }catch(exception e){
 
        out.print("数据库连接错误!,错误信息如下:<br>");
 
        out.print(e.getmessage());
 
        }
 
    //*******   测试数据代码结束  *******
 
%>
 
第二种,javabean的形式。
 
复制内容到剪贴板代码:
 
/*
 
***************************************
 
  *            作用: java连接access数据库代码
 
*    作者:梦想年华
 
*    email:[email protected]
 
*    author:梦想年华
 
*     copyright(c)2005-2006 by dreamtime
 
******** *******************************
 
*/
 
[/color]
 
package conn;                            //导入包
 
import java.sql.*;                        //导入数据库操作的类
 
public class dbconnaccess                //构造方法,初始化
 
{
 
    private connection conn;            //连接对象
 
    private statement stmt;                //语句对象
 
    private resultset rs;                //结果集对象
 
    private string accessdriver;        //保存access驱动程序字符串
 
    private string accessurl;             //保存access连接字符串
 
    public dbconnaccess()
 
    {
 
        //access驱动程序
 
        accessdriver = "sun.jdbc.odbc.jdbcodbcdriver";       
 
        //连接字符串
 
        accessurl = "jdbc:odbc:driver={microsoft access driver (*.mdb)};dbq=";
 
        conn = null;
 
    }
 
    //该方法从参数得到数据库路径,并加到连接字符串后面,然后再建立连接
 
    public connection getconntoaccess(string dbpath){
 
        try{
 
            accessurl=accessurl+dbpath;
 
            class.forname(accessdriver);
 
            conn = drivermanager.getconnection(accessurl);
 
            }catch(exception e){
 
                system.out.println("操作数据库出错,请仔细检查");
 
                system.err.println(e.getmessage());
 
            }
 
        return conn;
 
    }
 
   //关闭数据库连接
 
    public void close()
 
    {
 
        try{
 
            //rs.close();
 
            //stmt.close();
 
            conn.close();
 
        }catch(sqlexception sqlexception){
 
            sqlexception.printstacktrace();
 
        }
 
    }
 
}
 
调用方法如下:
 
复制内容到剪贴板代码:
 
<meta http-equiv="content-type" content="text/html; charset=gb2312">
 
<%@ page contenttype="text/html; charset=gb2312" language="java"
 
import="java.sql.*"  %>
 
<jsp:usebean id="dbconn" scope="page" class="conn.dbconnaccess"/>
 
<%
 
    //连接access 数据库
 
    string dbpath="data/test.mdb";            //数据库的路径,请自行修改
 
    connection conn=dbconn.getconntoaccess(application.getrealpath(dbpath));
 
    statement stmt=conn.createstatement(resultset.type_scroll_insensitive,resultset.concur_read_only);
 
         string sql="select * from username order by id";
 
    //string sql1="insert into username (uid,pwd) values('wsp','wsp')";
 
    //stmt.executeupdate(sql1);
 
    resultset rs=stmt.executequery(sql);
 
   
 
    while(rs.next()){
 
    out.print("用户名:");
 
    out.print(rs.getstring("uid")+" 密码:");
 
    out.println(rs.getstring("pwd")+"<br>");
 
    }
 
    dbconn.close();
 
%>
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!