JSP连接access数据库
一个用jsp连接Access数据库的代码。
要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据。
欢迎各位提出改进的意见。
以下用两种方式来实现jsp连接access数据库。
第一种JSP形式。
<span id="articlecontent"><<span style="color:#00ff;">%</span>@ page <span style="color:#0800;">contentType</span><span style="color:#00ff;">=</span><span style="color:#ff0ff;">"text/html; charset=gb2312"</span> <span style="color:#0800;">language</span><span style="color:#00ff;">=</span><span style="color:#ff0ff;">"java"</span>
import<span style="color:#00ff;">=</span><span style="color:#ff0ff;">"java.sql.*"</span><span style="color:#00ff;">%</span><span style="color:#00ff;">></span>
<span style="color:#00ff;"><</span>meta http<span style="color:#00ff;">-</span>equiv<span style="color:#00ff;">=</span><span style="color:#ff0ff;">"Content-Type"</span> content<span style="color:#00ff;">=</span><span style="color:#ff0ff;">"text/html; charset=gb2312"</span><span style="color:#00ff;">></span>
<span style="color:#00ff;"><</span><span style="color:#00ff;">%</span>
<span style="color:#08080;">/*********************************
********* JDBC_ODBC连接Access数据库,不需要设置数据源
********* Date: 2005.8
********* Email:fanwsp@126.com
********* Author: DreamTime [<a target=_blank style="color: rgb(0, 0, 0); " href="http://www.freeage.cn/" target="_blank">梦想年华</a>]
********* 有任何欢迎提出指正
**********************************/</span>
<span style="color:#08080;">// ******* 数据库连接代码 开始 *****</span>
<span style="color:#08080;">//异常处理语句</span>
try
<span style="color:#00ff;">{</span>
<span style="color:#08080;">//以下几项请自行修改</span>
<span style="color:#00a0;"><strong>String</strong></span> spath <span style="color:#00ff;">=</span> <span style="color:#ff0ff;">"data/test.mdb"</span><span style="color:#00ff;">;</span><span style="color:#08080;">//Access 数据库路径</span>
<span style="color:#00a0;"><strong>String</strong></span> dbpath <span style="color:#00ff;">=</span> application<span style="color:#00ff;">.</span>getRealPath<span style="color:#00ff;">(</span>spath<span style="color:#00ff;">)</span><span style="color:#00ff;">;</span><span style="color:#08080;">//转化成物理路径</span>
<span style="color:#00a0;"><strong>String</strong></span> dbname <span style="color:#00ff;">=</span> <span style="color:#ff0ff;">""</span><span style="color:#00ff;">;</span> <span style="color:#08080;">//Acvess 数据库用户名,没有则为空</span>
<span style="color:#00a0;"><strong>String</strong></span> user <span style="color:#00ff;">=</span> <span style="color:#ff0ff;">""</span><span style="color:#00ff;">;</span> <span style="color:#08080;">//Access 数据库密码,没有则为空</span>
<span style="color:#08080;">//数据库连接字符串 </span>
<span style="color:#00a0;"><strong>String</strong></span> <span style="color:#0800;">url</span> <span style="color:#00ff;">=</span><span style="color:#ff0ff;">"jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="</span><span style="color:#00ff;">+</span>dbpath<span style="color:#00ff;">;</span>
<span style="color:#08080;">//加载驱动程序</span>
Class<span style="color:#00ff;">.</span>forName<span style="color:#00ff;">(</span><span style="color:#ff0ff;">"sun.jdbc.odbc.JdbcOdbcDriver"</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#08080;">//建立连接</span>
Connection conn<span style="color:#00ff;">=</span> DriverManager<span style="color:#00ff;">.</span>getConnection<span style="color:#00ff;">(</span><span style="color:#0800;">url</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#08080;">//创建语句对象</span>
Statement stmt<span style="color:#00ff;">=</span>conn<span style="color:#00ff;">.</span>createStatement<span style="color:#00ff;">(</span>ResultSet<span style="color:#00ff;">.</span>TYPE_SCROLL_SENSITIVE<span style="color:#00ff;">,</span>ResultSet<span style="color:#00ff;">.</span>CONCUR_UPDATABLE<span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#08080;">// **** 数据库连接代码 结束 ******</span>
<span style="color:#08080;">//********* 测试数据代码开始 ******</span>
<span style="color:#08080;">//请在数据库中建立username表,表中建立两个字段uid和pwd,类型为文本型</span>
<span style="color:#00a0;"><strong>String</strong></span> sql <span style="color:#00ff;">=</span> <span style="color:#ff0ff;">"select * from username"</span><span style="color:#00ff;">;</span>
ResultSet rs <span style="color:#00ff;">=</span> stmt<span style="color:#00ff;">.</span>executeQuery<span style="color:#00ff;">(</span>sql<span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#8000;"><strong>while</strong></span><span style="color:#00ff;">(</span>rs<span style="color:#00ff;">.</span>next<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">)</span>
<span style="color:#00ff;">{</span>
out<span style="color:#00ff;">.</span><span style="color:#500a0;">print</span><span style="color:#00ff;">(</span><span style="color:#ff0ff;">"用户名:"</span> <span style="color:#00ff;">+</span> rs<span style="color:#00ff;">.</span>getString<span style="color:#00ff;">(</span><span style="color:#ff0ff;">"uid"</span><span style="color:#00ff;">)</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
out<span style="color:#00ff;">.</span><span style="color:#500a0;">print</span><span style="color:#00ff;">(</span><span style="color:#ff0ff;">" 密码:"</span> <span style="color:#00ff;">+</span> rs<span style="color:#00ff;">.</span>getString<span style="color:#00ff;">(</span><span style="color:#ff0ff;">"pwd"</span><span style="color:#00ff;">)</span> <span style="color:#00ff;">+</span> <span style="color:#ff0ff;">"<br>"</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span>
out<span style="color:#00ff;">.</span><span style="color:#500a0;">print</span><span style="color:#00ff;">(</span><span style="color:#ff0ff;">"<br>恭喜你!数据库连接成功!"</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
rs<span style="color:#00ff;">.</span>close<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span> <span style="color:#08080;">//关闭记录集对象</span>
stmt<span style="color:#00ff;">.</span>close<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span> <span style="color:#08080;">//关闭语句对象</span>
conn<span style="color:#00ff;">.</span>close<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span> <span style="color:#08080;">//关闭连接对象</span>
<span style="color:#00ff;">}</span>catch<span style="color:#00ff;">(</span>Exception e<span style="color:#00ff;">)</span><span style="color:#00ff;">{</span>
out<span style="color:#00ff;">.</span><span style="color:#500a0;">print</span><span style="color:#00ff;">(</span><span style="color:#ff0ff;">"数据库连接错误!,错误信息如下:<br>"</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
out<span style="color:#00ff;">.</span><span style="color:#500a0;">print</span><span style="color:#00ff;">(</span>e<span style="color:#00ff;">.</span>getMessage<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span>
<span style="color:#08080;">//******* 测试数据代码结束 *******</span>
<span style="color:#00ff;">%</span><span style="color:#00ff;">></span></span> <span id="articlecontent">第二种,JavaBean的形式。</span>
<span id="articlecontent"><span style="color:#08080;">/*
***************************************
* 作用: java连接Access数据库代码
* 作者:<a target=_blank style="color: rgb(0, 0, 0); " href="http://www.freeage.cn/" target="_blank">梦想年华</a>
* Email:fanwsp@126.com
* Author:<a target=_blank style="color: rgb(0, 0, 0); " href="http://www.freeage.cn/" target="_blank">梦想年华</a>
* CopyRight(c)2005-2006 by DreamTime
******** *******************************
*/</span>
[/color] package conn<span style="color:#00ff;">;</span> <span style="color:#08080;">//导入包</span>
import java<span style="color:#00ff;">.</span>sql<span style="color:#00ff;">.</span><span style="color:#00ff;">*</span><span style="color:#00ff;">;</span> <span style="color:#08080;">//导入数据库操作的类</span> <span style="color:#0a0c0;"><strong>public</strong></span> class DBConnAccess <span style="color:#08080;">//构造方法,初始化</span>
<span style="color:#00ff;">{</span> <span style="color:#0a0c0;"><strong>private</strong></span> Connection conn<span style="color:#00ff;">;</span> <span style="color:#08080;">//连接对象</span>
<span style="color:#0a0c0;"><strong>private</strong></span> Statement stmt<span style="color:#00ff;">;</span> <span style="color:#08080;">//语句对象</span>
<span style="color:#0a0c0;"><strong>private</strong></span> ResultSet rs<span style="color:#00ff;">;</span> <span style="color:#08080;">//结果集对象</span>
<span style="color:#0a0c0;"><strong>private</strong></span> <span style="color:#00a0;"><strong>String</strong></span> accessdriver<span style="color:#00ff;">;</span> <span style="color:#08080;">//保存Access驱动程序字符串</span>
<span style="color:#0a0c0;"><strong>private</strong></span> <span style="color:#00a0;"><strong>String</strong></span> accessURL<span style="color:#00ff;">;</span> <span style="color:#08080;">//保存Access连接字符串</span> <span style="color:#0a0c0;"><strong>public</strong></span> DBConnAccess<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span>
<span style="color:#00ff;">{</span>
<span style="color:#08080;">//Access驱动程序</span>
accessdriver <span style="color:#00ff;">=</span> <span style="color:#ff0ff;">"sun.jdbc.odbc.JdbcOdbcDriver"</span><span style="color:#00ff;">;</span>
<span style="color:#08080;">//连接字符串</span>
accessURL <span style="color:#00ff;">=</span> <span style="color:#ff0ff;">"jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="</span><span style="color:#00ff;">;</span>
conn <span style="color:#00ff;">=</span> <span style="color:#00a0;"><strong>null</strong></span><span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span> <span style="color:#08080;">//该方法从参数得到数据库路径,并加到连接字符串后面,然后再建立连接</span>
<span style="color:#0a0c0;"><strong>public</strong></span> Connection getConnToAccess<span style="color:#00ff;">(</span><span style="color:#00a0;"><strong>String</strong></span> dbpath<span style="color:#00ff;">)</span><span style="color:#00ff;">{</span>
try<span style="color:#00ff;">{</span>
accessURL<span style="color:#00ff;">=</span>accessURL<span style="color:#00ff;">+</span>dbpath<span style="color:#00ff;">;</span>
Class<span style="color:#00ff;">.</span>forName<span style="color:#00ff;">(</span>accessdriver<span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
conn <span style="color:#00ff;">=</span> DriverManager<span style="color:#00ff;">.</span>getConnection<span style="color:#00ff;">(</span>accessURL<span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span>catch<span style="color:#00ff;">(</span>Exception e<span style="color:#00ff;">)</span><span style="color:#00ff;">{</span>
<span style="color:#00a0;"><strong>System</strong></span><span style="color:#00ff;">.</span>out<span style="color:#00ff;">.</span>println<span style="color:#00ff;">(</span><span style="color:#ff0ff;">"操作数据库出错,请仔细检查"</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#00a0;"><strong>System</strong></span><span style="color:#00ff;">.</span>err<span style="color:#00ff;">.</span>println<span style="color:#00ff;">(</span>e<span style="color:#00ff;">.</span>getMessage<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span>
<span style="color:#8000;"><strong>return</strong></span> conn<span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span>
<span style="color:#08080;">//关闭数据库连接</span>
<span style="color:#0a0c0;"><strong>public</strong></span> <span style="color:#00ff;">void</span> close<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span>
<span style="color:#00ff;">{</span>
try<span style="color:#00ff;">{</span>
<span style="color:#08080;">//rs.close();</span>
<span style="color:#08080;">//stmt.close();</span>
conn<span style="color:#00ff;">.</span>close<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span>catch<span style="color:#00ff;">(</span>SQLException sqlexception<span style="color:#00ff;">)</span><span style="color:#00ff;">{</span>
sqlexception<span style="color:#00ff;">.</span>printStackTrace<span style="color:#00ff;">(</span><span style="color:#00ff;">)</span><span style="color:#00ff;">;</span>
<span style="color:#00ff;">}</span>
<span style="color:#00ff;">}</span>
<span style="color:#00ff;">}</span></span>
调用方法如下:
<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();
%>
JSP连接access数据库的更多相关文章
- jsp 连接access数据库
参考笔记:https://www.cnblogs.com/mthoutai/p/7278995.html
- Java Web项目中连接Access数据库的配置方法
本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...
- JDBC-ODBC桥接器连接Access数据库
今天,遇到一个问题,虽然不是什么大难题,但对于初学者来说也缠绕了我好久!(好气哦) 问题: 运行jsp项目连接不上数据库: java.sql.SQLException: [Microsoft][ODB ...
- 【.net 深呼吸】连接Access数据库应注意的几点
本地数据库可以有Y种选择,比如Sqlite.SQL Server Express.SQL Local DB.SQL Server CE.Access等,本文老周选用比较著名的Access本地数据库,在 ...
- JSP连接MySQL数据库问题
之前写了一大段,还说了一下具体JDBC连接数据库API的具体包的基本知识,哪知道自己手残不小心按了删除按钮.结果去看自动保存记录时,就只剩下下面这段了.好吧,其实最主要最核心的也就是下面这点了.具体如 ...
- C#连接Access数据库(详解)
做一个用VS2012的C#连接Access数据库的备忘, SQL数据库固然强大,有大微软的强力技术支持,LINQ的方便操作,但是如果写一个小程序对数据库方面没有什么大的要求的话,将来在数据库方面就可以 ...
- ASP.net分别连接SQLserver数据库与连接Access数据库精英版
-------------------------连接access2003 字符串------------------------- Provider=Microsoft.Jet.OLEDB.4.0; ...
- php连接Access数据库错误及解决方法
<?php $connstr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("data.m ...
- jsp连接sqlServer数据库教程
一.首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar 下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0 下载地址:点击进入 开发IDE工 ...
随机推荐
- Kinect SDK2.0 + OpenCV 3.0 抠人,换背景
使用Kinect2.0的MultiSourceFrameReader,同时获取DepthFrameSource, ColorFrameSource, BodyIndexFrameSource,然后获取 ...
- ionic tab页面跳转
要使用到Tabs,现将Tabs导入 import { NavController, ModalController, Tabs } from 'ionic-angular'; 把要选择的Tabs页面的 ...
- Android需求之点击跳转至市场评价
相信大家都看过APP上有一个选项"喜欢此APP?还希望您评价一下吧!",然后点击弹出选择框让你选择一个市场如: 安智市场,百度应用,豌豆荚-.然后选择其中一个后就跳转至此市场你的A ...
- ejabberd为游戏免除注册限制
ejabberd为游戏免除注册限制 (金庆的专栏 2016.11) ejabberd聊天服务器默认会限制同一IP注册帐号须间隔600s. 在游戏中需要为每个角色注册一个聊天帐号,不应该有此限制. 可以 ...
- 《An Introduction to Signal Smoothing》译文
最近在做数据平滑相关的工作,正好读到该篇博客,感觉不错,就翻译了一下.原链接:An Introduction to Signal Smoothing 信号平滑简介 噪声无处不在,不管是在采集手机游戏的 ...
- Android开发之Path类使用详解,自绘各种各样的图形!
玩过自定义View的小伙伴都知道,在View的绘制过程中,有一个类叫做Path,Path可以帮助我们实现很多自定义形状的View,特别是配合xfermode属性来使用的时候.OK,那我们今天就来看看P ...
- JAVA面向对象-----成员内部类访问细节
JAVA面向对象-–成员内部类访问细节 私有的成员内部类不能在其他类中直接创建内部类对象来访问. 如果内部类中包含有静态成员,那么java规定内部类必须声明为静态的访问静态内部类的形式:Outer.I ...
- 详解EBS接口开发之供应商导入
(一)供应商常用标准表简介 1.1 常用标准表 如下表中列出了与供应商相关的表和说明: 表名 说明 其他信息 ap_suppliers 供应商头表 供应商的头信息如:供应商名.供应商编码.税号等 ...
- java基础知识——网络编程、IO流
IO流 字节流:处理字节数据的流对象,计算机中最小数据单元就是字节.InputStream OutputStream 字符流:字符编码问题,将字节流和编码表封装成对象就是字符流.Reader Writ ...
- CCSpriteBatchNode中存放元素的一点理解
该对象只能包含基于CCSprite的对象,并且该要求适用于一切子孙对象.即加入CCSpriteBatchNode的任何对象都必须是CCSprite或其子类. 比如CCSpriteBatchNode包含 ...