You are on page 1of 24

Connecting JSP page with MS Access :: JDBC ODBC

Connectivity

Hello Guys .This post is all about Connecting JSP to MS Access database -> JDBC ODBC
Connectivity.
Honestly speaking after struggling upon a lot on jdbc connectivity , finally at the end of the
day , I brought to you the step by step process to CREATE database and perform DDL and
DML operations on that.
So , Lets begin by creating a MS Access database.

Go to Control Panel > Administrative Tools > ODBC DATABASE SOURCES. Now an ODBC
Data Source Administrator window will open. Click on Add button .
Now Select Driver do Microsoft Access(*mdb) from the Create New Database Source
window that appears like the image shown on right and click Finish Button..

Now create your Database source name . You can give any name you want. THIS NAME IS
CALLED YOUR DNS ( Database Sourcse Name ). Click on "Create " button.
NOW THIS STEP IS Worth IMPORTANT. PEOPLE USUALLY GIVES C:\ DRIVE PATH
( the NTFS where windows is installed generally).. There's no problem but on some
computers / windows version this POSE A SECURITY PERMISSION PROBLEM SO
WHATSOEVER CORRECT PROGRAM YOU WRITE YOU WILL GOT AN EXCEPTION
BECAUSE IT MAKES DSN READ-ONLY SO EXCEPTION OCCURS. So to rectify this
choose other drive for database creation .Now once created choose Select Button
and select the database path you just created.This is it ! your DNS IS CREATED.
Now come on to program .Here's a sample program .

<%@page import="java.sql.*"%>
<%@ page import ="javax.sql.*" %>
<%String database="e:\\xampp\\tomcat\\webapps\\ROOT\\lms\\lmshare.mdb";
String url="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + database + ";";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection(url,"","");
Statement stmt=con.createStatement();
// CREATION
String create="create table lmsusers(id integer ,email varchar(20), pwd varchar(20),fname
varchar(20),lname varchar(20),age integer) ;";
stmt.executeUpdate(create);
//INSERTION
String adduser="insert into lmsusers(email,pwd,fname,lname,age) values ('"+name+"', '"
+pwd+"','"+fn+"','"+ln+"',"+age
+");";
stmt.executeUpdate(adduser);
out.println("connected");%>
Now String database="e:\\xampp\\tomcat\\webapps\\ROOT\\lms\\lmshare.mdb"; is the path
to database Source Name you just created .Notice I have used e drive for the security
problems I just discussed.
String url="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + database + ";";
defines Ms Access and initializes its driver.- a significant step.
To create database use String create="create table lmsusers(id integer ,email varchar(20),
pwd varchar(20)
,fname varchar(20),lname varchar(20),age integer) ;";

Administratively Register Database


1.
Use MS Access to create a blank database in some directory.
(eg. Database1.mdb.) Make sure to close the data base after it is created.
2.
Go to: Control panel -> Admin tool -> ODBC
3.

Under the System DSN tab (for Tomcat version 5 or later User DSN for
earlier versions), un-highlight any previously selected name and then click on
the Add button.
4.
On the window that then opens up, highlight MS Access Driver & click Finish.
5.

On the ODBC Setup window that then opens, fill in the data source name.
This is the name that you will use to refer to the data base in your Java program
like
arc. This name does not have to match the file name.
.
6.
Then click Select and navigate to the already created database in directory.
Suppose the file name is Database1.mdb. After highlighting the named file,
click OKs all the way back to the original window.
Connect a JSP page to an Access Database
<%@ page import="java.sql.*" %>
<%
Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=null;
conn = DriverManager.getConnection("jdbc:odbc:arc", "", "");
out.println ("Database Connected.");
%>

Connecting JSP to Microsoft


Access
Introduction
All the web applications usually interact with different types of
databases. Databases are basically used to store various types
of information for different purposes. There are also different
types of databases used in the industry now days. But this is
very important that the relational databases are by far the
most widely used.
Generally the relational database uses the tables to represent
the information which it handles. A table consists of rows and
columns; row is identified with record whereas column is
identified with field name, so each column holds a single value
of a predefined data type. Generally these data types can be
text data, numeric data, dates, and binary data such as
images and sound as per our requirement. A dedicated
language is called Structured Query Language (SQL) that is
used to access the data. The Structured Query Language is an
ANSI (American National Standards Institute) standard and is
maintained by all the major database sellers. The Relational
database engines come in all the shapes and sizes. Structured
Query Language API (Application Programming Language) is
used to execute structured queries in different database
engine. The standard Java libraries include an API (Application
Programming Language) called the Java Database Connectivity
(JDBC) API. Java Database Connectivity defines a set of
classes that can execute SQL statements, although the
complexity of databases can vary extensively.

Accessing a database from a JSP Page


Java Server Pages has Standard Tag Library which includes the
number of actions for the database access to improve the
simple database-driven Java Server Page applications.
Basically these actions are used to provide the following
features:

Using a connection pool for better performance and


scalability.
The features are to support the queries, updates, and
insertion process.
To handle the most common data-type conversions.
To Support a combination of databases.

The Data Source Interface and JDBC Drivers


Applications get access to the database through an instance of
the Java Database Connectivity interface named
javax.sql.DataSource. The DataSource interface is the part of
Java 2 Standard Edition (J2SE) 1.4, and for prior versions of
the Java2 Standard Edition. Opening a new database
connection is very time-consuming. A nice thing with a
DataSource is that it can represent something which is called a
connection pool. Using the connection pool, a connection to the
database is opened once and uses it again and again. Basically
a database action needs a connection; it gets it from the pool
through the DataSource object and uses it to perform one or
extra (Structure Query Language) SQL statements. In that
position when the action closes the connection, the connection
is returned to the pool where it can be used by the next action
that needs it.
The DataSource, the Java Database Connectivity Application
Programming Interface contains other classes and interfaces
used by Java applications to process SQL statements in a

database-independent way. For every database engine, an


implementation of the interfaces defined by the Java Database
Connectivity Application Programming Interface translates the
generic calls to a format specific to the engine. This
implementation is also called a JDBC driver. Through different
drivers which provides same interface allows us to develop our
application on one platform (for illustration, in the following
program a Personal Computer with an Access database), and
then install the application on another platform (for illustration,
a Solaris or Linux server with an Oracle database).
Illustrations shows how to handle the embedded quotes in a
string value, and how to deal with the input and output of date
and time values, semantics for certain data types, and creation
of unique numbers. The Java Server Pages Standard Tag
Library actions take care of some of these, like as the string
quoting and the date/time string format, so if we use these
actions and stick to American National Standard Institute SQL,
we should be able to voyage from one database to alternative
database without too much modification. Basically we should
always read our database and documentation very judiciously
and attempt to stay away from the proprietary things. So to be
prepared, spend at least some time to read the prerequisite to
interchange the application from one DB to another.
The context parameter of the value that contains four pieces of
information is separated by commas: a JDBC URL, a JDBC
driver class name, a database account name, and the account
password.
The Java Database Connectivity URL identifies a specific
database. The different JDBC drivers use different Uniform
Resource Locator syntax as per requirement. All the JDBC
URLs starts with jdbc: and followed by a JDBC driver identifier
[In JSP program we are discussing this], such as (Open
database connectivity) odbc: for the JDBC-ODBC bridge driver
and the mysql for the most ordinarily used MySQL driver. The
URL identifies the database instance in the driver-dependent
way. If we use an Access database, we need to create a

system DSN for the database using the Open database


connectivity. In the Windows Control Panel we must create a
system DSN as opposed to a user DSN.
Point to be remembered that the web server that executes our
JSP Pages usually runs as a different user account than the
account you use for development. If you specify a user DSN
with your development account, the web container will not be
able to find it.
System Data Source Name definition window and working
process is given below step by step:
1. At first go to Control Panel and Open Administrative Tool.
2. After that Open ODBC driver by using double click on it.
3. Then click on add button.

Figure 1: Add data source window


1. Then give a name like sgc as shown below.

Figure 2: Provide data source name


2. Then select the database that is present in the specific
folder or path.

Figure 3: Enter database name and path selection


4. After selecting the database file, set the DSN as shown
below.

Figure 4: Set data source


Following the above process user can easily setup the DSN and
this DSN is implemented at the program segment like the
following
Connection con=DriverManager.getConnection("jdbc:odbc:sgc","","");

Example of Database program using JSP


Here we will now discuss three sample examples like
registerinsert.jsp , updateprogram.jsp and
registrationsearch.html. These three programs are used for
inserting record in the database, updating record in the
database, searching record in the database. Here we are using
DSN process which we have already discussed above. Here we
have also used MS Access database through which we set DSN
name sgc.
Listing 1: Sample showing sample registerinsert.jsp

<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF8">
<title>Example of Java Server Page with JDBC</title>
</head>
<body>
<%
String u=request.getParameter("userid");
String p=request.getParameter("password");
String n=request.getParameter("sname");
String e=request.getParameter("eid");
String a=request.getParameter("addr");
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection
con=DriverManager.getConnection("jdbc:odbc:sgc","","");
/* Passing argument through the question mark */
PreparedStatement ps=con.prepareStatement("insert into login
values(?,?,?,?,?)") ;

ps.setString(1,u);

ps.setString(2,p);
ps.setString(3,n);
ps.setString(4,a);
ps.setString(5,e);
int i=ps.executeUpdate(); /*Set the Update query command */
if(i!=0)
{
response.sendRedirect("index.jsp?msg=Thank You
for registering with us in Mrbool !");
}
else
{
response.sendRedirect("registerinsert.jsp?
msg=Insertion Failed!! Please try again!!!

");

}
con.close();
}
catch(Exception ex)
{
out.println(ex);
}
%>
</body>
</html>

Code explanation:
1. The above code is used to insert record in to the
database. Here we are accessing data from the entry
form. After entering the data, user can easily access the
record through the get parameter method.
2. After that, we set odbc driver and through the DSN
(Which is already discussed above) we link to the
database.
3. Now the prepareStatement is use d to pass the DML
insert command. This command is used to store the
record in the database.
4. Now we set the string at the particular database filed.
This is the update program that is used to update existing
records in the database.
Listing 2: Sample showing updateprogram.php
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF8">


<title>JSP Page</title>
</head>
<body>
<%
String uid=(String)session.getAttribute("userid");
String p=request.getParameter("password1");
String n=request.getParameter("name1");
String e=request.getParameter("eid");
String a=request.getParameter("address");
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection
con=DriverManager.getConnection("jdbc:odbc:sgs","","");
PreparedStatement ps=con.prepareStatement("update login set
password1=?,name1=?,eid=?,address=? where userid=?");
ps.setString(1,p);
ps.setString(2,n);
ps.setString(3,e);
ps.setString(4,a);
ps.setString(5,uid);
int i=ps.executeUpdate();
if(i!=0)
{
response.sendRedirect("index.jsp?msg=Mrbool Profile
Updated Successfully!!!!!!!");
}
else
{
response.sendRedirect("pUpdate.jsp?msg=Mrbool
Updation Failed Please Try again!!!!");
}
con.close();
}
catch(Exception ex){
out.println(ex);
}
%>
</body>

Profile

</html>

Code explanation:
This program mostly works as per the previous system
procedure model. Through this program model we can
develop a data uploading structure.
Here we use update command. This update command
passes data through a unique value.
After that if the updating is executed successfully, and
then it will redirect the page.

This is the searching program. Through this program model we


can search all the data that is already present in the database.
Listing 3: Sample showing registrationsearch.jsp
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page import="java.sql.*,java.util.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows1252" />
<title>Photo gallery</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="Layer9">
<%
String msg=request.getParameter("msg");
if(msg!=null)
{
out.print("<h1>"+"Welcome "+(String)session.getAttribute("u")
+"</h1>");
out.print(msg);
}

%>
</div>
<div id="wrap">
<%
String uid=(String)session.getAttribute("u");
if(uid==null)
{
%> <div class="header">
<div class="logo"><a href="index.jsp"><img
class='imagem_artigo' src="images/pg.gif" width="294" height="73"
/></a></div>
<div id="menu">
<ul>
<li class="selected"><a href="index.jsp"
class="style12">home</a></li>
<li><a href="aboutus.jsp" class="style12">about us</a></li>
<li><a href="gallery.jsp" class="style12">Gallery</a></li>
<li><a href="myaccount.jsp" class="style12">log in</a></li>
<li><a href="register.jsp" class="style12">register</a></li>
<li></li>
<li></li>
</ul>
</div>
<%}
else
{
%>

<div class="header">
<div class="logo"><a href="index.jsp"><img

class='imagem_artigo' src="images/pg.gif" alt="" title="" border="0"


/></a></div>
<div id="menu">
<ul>
<li class="selected"><a href="index.jsp"
class="style12">home</a></li>
<li><a href="aboutus.jsp" class="style12">about us</a></li>
<li><a href=" gallery.jsp" class="style12">Gallery</a></li>
<li><a href="photoFormupdate.jsp" class="style12"> Upload
iamges </a></li>

<li><a href="pUpdate.jsp"><span class="style12">Update


Profil</span>e</a></li>
<li><a href="logOut.jsp" class="style12">logout</a></li>
<li></li>
</ul>
</div>
<%
}
%>
</div>
<div class="center_content">
<div id="Layer2">

</div>

<div id="Layer8">
<div class="footer"></div>
</div>
<div class="new_products"></div>
<div class="clear"></div>
</div>
<div class="clear"></div>
</div>
<div id="Layer4">
<h1>Photo Gallery</h1>
</div>
<div id="Layer5">
<span class="style4"><font face="Algerian" size="5">Images By
Category</font></span>
::<br />
<font size="3" face="Courier" color="#CC0033" align="center">
</font><font size="3" color="#CC0033" align="center"><span
class="style12"><a href=" registrationsearch.jsp?
Category=Nature">Nature</a><br />
<a href=" registrationsearch.jsp?Category=Sports">Sports</a><br />
<a href=" registrationsearch.jsp?Category=Baby">Baby</a><br />
<a href="search.jsp?Category=Animals">Animals</a></span></font><font
size="3" face="Courier" color="#CC0033" align="center"><br />
</font></div>
<div id="Layer7">
<%

String cat=request.getParameter("Category");
int i=0;
ArrayList ar=new ArrayList();

// This part is used for creating new

array list.
ArrayList pi=new ArrayList();
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection
cn=DriverManager.getConnection("jdbc:odbc:sgc","","");
PreparedStatement ps=cn.prepareStatement("select *
from photoDetails where pct=?");
ps.setString(1,cat);
ResultSet rs=ps.executeQuery();
while(rs.next())
{
i++;
String pUrl02=rs.getString(5).trim();
String
pUrl2=pUrl02.substring(pUrl02.lastIndexOf("\\")+1);
ar.add(pUrl2);
pi.add(rs.getString(1));
}
out.print(i+cat);
cn.close(); /*Close the connection*/
}
catch(Exception e){
out.println(e);
}
%>
<table bgcolor="orange" border="5" width="550" height="220">
<%

int j=0,k=0,t=0;

while(k<4)
{

%>
<tr>
<%
j=0;
while(j<3 && j+t<i)
{ %>

<td> <a href="index.jsp?msg=<%=pi.get(j+t)


%>"><img class='imagem_artigo' src="<%=(String)ar.get(j+t)%>" alt=""
height="200" width="200"/></a>
<%
j++;
}
%>
</tr>
<%
t+=3;
k++;
}
%>
</table>
</div>
</body>
</html>

And the css of the page above is:


Listing 4: CSS
#Layer1 {
position:absolute;
width:200px;
height:115px;
z-index:1;
left: 751px;
top: 186px;
background-color: #993399;
}
#Layer2 {
position:absolute;
width:897px;
height:1174px;

z-index:1;
left: 261px;
top: 181px;
background-color: #9900CC;
}
#Layer4 {
position:absolute;
width:891px;
height:132px;
z-index:3;
left: 264px;
top: 182px;
background-color: #009900;
}
#Layer5 {
position:absolute;
width:217px;
height:266px;
z-index:4;
left: 939px;
top: 318px;
background-color:

#FC3;

}
#Layer6 {
position:absolute;
width:678px;
height:508px;
z-index:5;
left: 145px;
top: 334px;
}
#Layer7 {
position:absolute;
width:673px;
height:1038px;
z-index:5;
left: 263px;
top: 316px;
background-color: #CCCCCC;

}
#Layer8 {
position:absolute;
width:898px;
height:107px;
z-index:6;
left: 262px;
top: 1240px;
background-color: #EFEFEF;
}
#Layer9 {
position:absolute;
width:429px;
height:79px;
z-index:7;
left: 421px;
top: 232px;
}
.style2 {
font-family: Algerian;
color: #000000;
}
.style4 {color: #000000}
.style12 {font-family: algerian}

Code explanation:
1. This is the searching program.
2. Select query is used here for searching the record. Here
we are searching picture wise.
3. rs is the ResultSet in the program segment. Through the
result set process we can easily search the record.
This JSP page can work with all possible Databases like MS
Access, MySql, Oracle, and Microsoft SQL Server. In this Article
it is very much clear that JSP technology can work with JDBC
ODBC driver. Through this driver process we must set up DSN
connection. Software developers and designers use it widely
for more portable and reliable database connection process.

We have also discussed the DNS set up process. Developers


can follow the process easily and set up their own database
connection from JSP page.

Connecting JSP to Microsoft


Access
This JSP tutorial shows how to connect Microsoft Access databases with JSP pages.
Java Server Pages (JSP) are text-based documents, typically HTML pages, that contain
Java code. The embedded Java allows the page to contain dynamically generated
content. JSP makes it possible to integrate content from a variety of data sources,
such as databases, files and JavaBean components. To use JSP, you need a JSP
capable web server or application server. For example, Apache Tomcat, Oracle
WebLogic or IBM WebSphere.
Easysoft provide two ways to connect Microsoft Access databases with JSP pages.

If your JSP capable web server or application server runs on Windows, use
the JDBC-Access Driver.
If your JSP capable web server or application server runs on Linux or Unix,
use the JDBC-ODBC Bridge (JOB).

Contents

Installing the Easysoft JDBC Driver


JSP MS Access Example
Connecting JSP to Access through Apache Tomcat

Installing the Easysoft JDBC Driver


Installing the JDBC-Access Driver
If you have not already done so, please register with us to download a fully
functional trial version of the JDBC-Access Driver.
Download, install and license the JDBC-Access Driver on the Windows machine
where your JSP capable web server or application server is installed.
For more information about installing the JDBC-Access Driver, see the JDBC-Access
Driver Getting Started Guide.

Installing the JDBC-ODBC Bridge


If you have not already done so, please register with us to download a fully
functional trial version of JOB.
Download, install and license the Windows JOB Server on a machine where the
Microsoft Access ODBC driver is installed. On this machine, configure a System ODBC
data source that connects to your Access database. Test the data source with an

ODBC application. Use one of the test applets included in the JOB distribution to
check that you can access the ODBC data source through JOB.
For more information about installing JOB and testing it with Microsoft Access,
see Accessing Microsoft Access Data from any Java Platform. Refer also to the
Installation and Configuration chapters of the JOB User Guide.

JSP MS Access Example


The example JSP page in this section shows how to connect to an Access database.
1.

Install the Easysoft Java Archive file (.jar) into the application you run JSP
pages under. For example, if you are using Apache Tomcat on Windows, copy
esmdb.jar to $CATALINA_HOME\lib; if you are using Apache Tomcat on Linux or Unix,
copy EJOB.jar to $CATALINA_HOME/common/lib.
esmdb.jar is the Java component of the JDBC-Access Driver. The file is located
in drive:\Program Files\Easysoft Limited\JDBC-Access Driver on the JDBC-Access
Driver machine, where drive is the relevant drive letter, for example C.
EJOB.jar is the Java component of JOB. The file is located in drive:\Program
Files\Easysoft\Easysoft JDBC-ODBC Bridge\jars on the JOB Server machine,
where drive is the relevant drive letter, for example C.

2.

In your application, create a JDBC data source that connects to the target
Microsoft Access data source.
The JDBC data source needs to specify the appropriate Easysoft JDBC driver class:

JDBC Driver

Class

JDBC-Access Driver

easysoft.sql.esMdbDriver

JOB

easysoft.sql.jobDriver

The JDBC data source needs to specify the appropriate Easysoft JDBC driver
connection URL:

JDBC Driver

Connection URL

JDBC-Access jdbc:easysoft:mdb?DBQ=path[;odbc-driver-attribute=value]
Driver
where:

path is the path to the Access database (.mdb).


odbc-driver-attribute is an Access ODBC driver attribute.
JOB

jdbc:easysoft://hostname:port/access_system_data_source
:logonuser=username:logonpassword=password
where:

machinename is the name or IP address of the machine where the JOB Se


port is the port on which the JOB Server is listening, by default 8831.
access_system_data_source is the Microsoft Access ODBC data source
username and password are a valid user name and password for the m
running.

If you are required to supply a database user name and password when configuring the JD
name and password as the ones in the connection URL.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.

file:

Use jdbc/MyDB as the JNDI name for the JDBC data source.
Create a JSP page named jsp-ms-access-example.jsp. Add these lines to the
<html>
<head>
<title>JSP MS Access Example</title>
</head>
<body>
<%@ page import="javax.naming.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<h1>JSP MS Access Example</h1>
<%
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
// Obtain our environment naming context
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
// Look up our data source
DataSource ds = (DataSource) envCtx.lookup("jdbc/MyDB");
// Allocate and use a connection from the pool
conn = ds.getConnection();
// Fetch and display data
stmt = conn.createStatement();

36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.

// You need to edit this query


rs = stmt.executeQuery("SELECT CompanyName FROM suppliers");
while (rs.next()) {
// You need to edit this column name
String s = rs.getString("CompanyName");
out.print(s + "<br>");
}
rs.close();
rs = null;
stmt.close();
stmt = null;
conn.close(); // Return to connection pool
conn = null; // Make sure we do not close it twice
} catch (SQLException e) {
out.print("Throw e" + e);
} finally {
// Always make sure result sets and statements are closed,
// and the connection is returned to the pool
if (rs != null) {
try { rs.close(); } catch (SQLException e) { ; }
rs = null;
}
if (stmt != null) {
try { stmt.close(); } catch (SQLException e) { ; }
stmt = null;
}
if (conn != null) {
try { conn.close(); } catch (SQLException e) { ; }
conn = null;
}
}
%>
</body>
</html>
You need to edit the SELECT statement in the executeQuery method and the column
name in the getString method.

Connecting JSP to Access through Apache


Tomcat
You can run jsp-ms-access-example.jsp under Apache Tomcat to connect to Access
and retrieve data. For more information, see the JDBC-Access Driver Getting
Started Guide and Accessing ODBC Databases from Apache Tomcat.

You might also like