简单介绍JSP数据库链接

开发 后端
本文简单介绍JSP数据库链接,以及介绍JSP Destory和JSP Init函数。

用Jdbc-odbc桥来连接,不过这可是牺牲了速度来的。用Jdbc-odbc桥的话,和连接access是一样的,先要设置一个数据源DNS,然后就用:
◆Class.forName("sun.Jdbc.odbc.JdbcOdbcDriver");
◆Connection conn=DriverManager.getConnection("Jdbc:odbc:strurl",”
◆username”,”password”);

进行数据库的链接是比较耗时的,如果频繁刷新页面,那就会不停的访问数据库,大大耗去了数据库的资源。JSP提供了这样一对函数,JSP Init(),JSP Destory();如果要在JSP网页开始执行时,进行某些数据的初始化,则可以利用JSP Init函数来完成。此函数将在JSP网页被执行时调用,且当JSP网页重新整理时,并不会被再度执行。当关闭服务器时,JSP Destory函数将被调用,可利用该函数来完成数据的善后处理。

可以利用JSP Init和JSP Destory函数来完成数据库的链接和关闭。在JSP Init中进行数据库的链接,可以避免每次刷新页面时都要链接数据库,提高了工作效率。

以下是代码实例:

<%!  
Connection conn=null;  
Statement st=null;  
ResultSet rs=null;  
Public void jspInit()  
{  
Try  
 {  
//加载驱动程序类  
Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);  
//连接数据库       
Connection conn=DriverManager.getConnection("jdbc:odbc:strurl",”  
username”,”password”);  
//建立Statement对象  
St=conn.CreateStatement();  
}  
Catch(Exception ex)  
{  
System.out.println(ex.toString());  
}  
}  
Public void jspDestroy()  
{  
try  
{  
rs.close();  
st.,close();  
 conn.close();  
 }  
catch(Exception ex)  
{  
System.out.println(ex.toString());  
}  
}  
%> 
  • 1.
  • 2.
  • 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.

当JSP网页从数据库中取得数据时,最耗费服务器时间的是建立数据库链接。用JSP Init
和JSP Destory函数并不是非常好的办法,毕竟每浏览一次新网页,就要建立数据库链
接。这个时候可以为一个联机者建立一个数据库链接。这里我们利用Bean对象来建立数
据库链接。

以下是代码实例:

conn.java  
//定义bean所属的套件  
package com.test;  
import java.io.*;  
import java.sql.*;  
import javax.servlet.http.*;  
public class conn implements HttpSessionBindingListener  
{  
private Connection con=null;  
public conn() //在构造函数中完成数据库链接  
{  
BulidConnection();  
}  
private void BulidConnection()  
{  
try  
{  
//载入驱动程序  
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  
}  
catch(java.lang.ClassNotFoundException e1)  
{  
System.out.println("数据库驱动加载失败<br>");  
}  
try  
{  
//建立数据库链接  
con=DriverManager.getConnection("jdbc:odbc:test","test","test");  
}  
catch(SQLException e2)  
{  
System.out.println("数据库连接失败");  
}  
}  
//取得Connection对象  
public Connection getConnection()  
{  
if(con==null)  
BulidConnection();  
return this.con;  
}  
public void close()  
{  
try  
{  
con.close();  
con=null;  
}  
catch(SQLException sex)  
{  
System.out.println(sex.toString());  
}  
}  
//当物体加入session时,将自动执行此函数  
public void valueBound(HttpSessionBindingEvent event){}  
//当session对象删除时,将自动执行此函数  
public void valueUnbound(HttpSessionBindingEvent event)  
{  
if(con!=null)  
close();//调用close方法  
}  

  • 1.
  • 2.
  • 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.
  • 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.

【编辑推荐】

  1. JSP bean代码优化
  2. 详细介绍JSP环境配置方案
  3. 在JSP JSTL中使用存储过程
  4. ASP.NET、JSP和PHP究竟哪个好
  5. JSP相关软件介绍
责任编辑:佚名 来源: IT168
相关推荐

2009-06-30 15:15:30

JSP数据库

2011-03-29 09:40:31

SQL Server数据库链接

2009-07-02 12:56:01

JSP技术

2009-07-06 14:43:30

JSP元素

2009-07-03 16:21:43

2011-08-15 15:40:57

SQL Server 系统数据库

2009-07-02 08:50:01

JSP标签库

2011-08-11 16:08:55

Oracle数据库ASHAWR

2009-07-02 10:13:47

ASP和JSPJSP页面

2009-06-30 17:26:56

JSP页面

2011-07-26 11:12:05

DBXML数据库

2013-06-07 19:04:15

测试

2009-06-30 13:38:37

SERVLET和JSP

2011-08-12 12:59:33

Oracle数据库同义词

2011-08-03 15:14:17

Excel XP数据库功能

2011-04-14 09:27:37

内存数据库

2011-03-17 14:51:33

数据库自我调整

2011-07-04 17:27:42

JSP

2009-07-03 13:56:21

JSP编程技巧

2009-07-06 15:57:56

获取数据库连接JSP
点赞
收藏

51CTO技术栈公众号