62· ·
Computer Era No. 1 2007
在 JSP 中调用 JavaBean 实现 Web 数据库访问*
张爱平 1, 赖 欣 2
(1. 西南石油大学现代教育技术中心, 四川 成都 610500; 2. 西南石油大学电信工程学院)
摘 要: 在 Windows 2000 Server+JDK 1.5+Tomcat 5.5 平台下, 基于 JDBC-ODBC 桥加 ODBC 驱动程序的方式, 提出了
在 JSP 应用程序中调用 JavaBean 并通过 JDBC 接口连接访问 Access 数据库的方法及实例, 为 JSP 应用程序访问数据库
提供了一种基于 JDBC 接口的解决方案。
关键词: JSP 程序; Access 2000; JDBC 技术; JavaBean; JDBC-ODBC 桥
0 引言
数据库访问在 JSP 应用程序中是一个重要的问题。在 Java 技
术中, 连接数据库通常是使用 JDBC( Java Database Connectivity,
Java 数据库连接) 实现的。通过 JDBC 技术, JSP 程序可以访问目前
流行的几乎所有的数据库, 如: Oracle、SQL Server、Access 等。本文
结合实例, 基于 Windows 2000 Server+JDK 1.5+Tomcat 5.5 平
台 , 具 体 论 述 了 在 JSP 应 用 程 序 中 调 用 JavaBean 并 通 过
JDBC- ODBC 桥 加 ODBC 驱 动 程 序 的 方 式 连 接 访 问 Access
2000 数据库的方法。本文对采用其他访问数据库的方法也有借
鉴意义。
1 J S P 程序运行平台的基本情况
1.1 操作系统
本文所采用操作系统为 Windows 2000 Server 版本。
1.2 JDK 与 Tomcat 的版本、路径及其相关环境变量
1.2.1 版本
JDK 是 1.5 版本, Tomcat 是 5.5 版本。
1.2.2 路径
JDK( J2SE Development Kit, Java 开 发 工 具 包) 的 安 装 路
径为: D:\Java\jdk1.5.0_04;
JRE( J2SE Runtime Environment, Java 运行时环境) 的安装
路径为: D:\Java\jre1.5.0_04;
Tomcat 的安装路径为: D:\jakarta- tomcat- 5.5.11。
1.2.3 相关环境变量及其相关变量值
⑴ JAVA_HOME
D:\Java\jdk1.5.0_04
⑵ TOMCAT_HOME
D:\jakarta- tomcat- 5.5.11
⑶ Path
D:\jakarta- tomcat- 5.5.11\bin
D:\Java\jdk1.5.0_04\bin
⑷ CLASSPATH
D:\jakarta- tomcat- 5.5.11\common\lib\servlet- api.jar
D:\Java\jdk1.5.0_04\lib\tools.jar
* 基金项目: 四川省教育厅重点科研基金项目( 2004A099)
D:\jakarta- tomcat- 5.5.11\webapps\ROOT\WEB - INF\classes
此 路 径 为 本 文 中 实 现 数 据 库 连 接 的 JavaBean“ DBconn.
class”的部署位置。
2 建立 Acces s 数据库并定义 ODBC 数据源
2.1 建立 Access 数据库
在 Access 2000 中 , 建 立 Access 数 据 库 Course.mdb, 其 中
Course 表的结构如表 1 所示。
表 1 Course 表的结构
字段名
类 型
作 用
id
CourseName
Hour
Credit
Teacher
自动编号
Text(20)
Integer
Ingteger
Text(10)
主键
课程名
学时
学分
任课教师
在本文中, Course.mdb 数据库的存放路径为:“ E:\Access 数
据库”。
2.2 定义 ODBC 数据源
在“ 开 始 \ 设 置 \ 控 制 面 板 \ 管 理 工 具 ”下 , 选 择“ 数 据 源
(ODBC)”, 打 开 ODBC 数 据 源 管 理 器, 将 ODBC 数 据 源 管 理 器
切换到“ 用户 DSN”标签, 单击“ 添加”按钮, 在弹出的“ 创建数据
源 ”窗 口 中 选 择 驱 动 程 序“ Microsoft Access Driver”, 在 弹 出 窗
口中指定数据源名, 本文为“ Courses”, 并选择刚才所创建的
Access 数 据 库“ E:\Access 数 据 库 \Course.mdb”, 单 击 确 定 后 完
成 ODBC 数据源的创建。
3 开发、装配并部署用于连接数据库的 J avaBean
3.1 开发 Java 程序
用记事本编写 Java 程序 DBconn.java, 代码如下:
package EXE;
import java.s ql.*;
public clas s DBconn {
String DBDriver="s un.jdbc.odbc.J dbcOdbcDriver";
String ConnStr="jdbc:odbc:Cours es ";
Connection conn=null;
计算机时代 2007 年 第 1 期
63· ·
Res ultSet rs =null;
public DBconn() {
try {
Clas s .forName(DBDriver);
} catch(java.lang.Clas s NotFoundException e) {
序 号 |
课 名 |
Sys tem.err.println("DBconn():"+e.getMes s age());
学 时 |
学 分 |
任课教师 |
<%
Res ultSet RS=DBconn1.executeQuery
("SELECT * FROM Cours e");
Sys tem.err.println("aq.executeQuery:"+ex.getMes s age());
while (RS.next()) {
}
return rs ;
}
}
3.2 JavaBean 的装配和部署
在 Windows 命令行方式 下, 用“ javac DBconn.java”命 令 将
DBconn.java 文 件 编 译 成 字 节 码 文 件 DBconn.class, 并 将
DBconn.class 文 件 拷 贝 到 目 录“ D:\jakarta- tomcat- 5.5.11\
webapps\ROOT\WEB- INF\classes\EXE”下 , 完 成 JavaBean 的 装
配和部署。
4 J S P 程序调用 J avaBean 连接访问数据库的实例
4.1 开发并部署 JSP 应用程序
在本文中, 访问 Access 数据库的 Course.jsp 文件代码如下:
<%@page contentType="text/html;chars et=gb2312"%>
<%@page language="java" import="java.s ql.*"%>
<%
int p_ID=0;
String p_Cours eName="";
int p_Hour=0;
int p_Credit=0;
String p_Teacher="";
%>
研究生学位课程信息调查
研究生学位课程信息调查
p_ID=RS.getShort("ID");
p_Cours eName=RS.getString("Cours eName");
p_Hour=RS.getInt("Hour");
p_Credit=RS.getInt("Credit");
p_Teacher=RS.getString("Teacher");
%>
<%=p_ID%> |
<%=p_Cours eName%> |
<%=p_Hour%> |
<%=p_Credit%> |
<%=p_Teacher%> |
<%
}
RS.clos e();
%>
将 Course.jsp 程 序 部 署 于 目 录“ D:\jakarta- tomcat- 5.5.11\
webapps\ ROOT”下。
4.2 运行 JSP 程序
图 1 JSP 程序运行结果
启动 Tomcat, 打开 IE 浏览器, 在地址栏中输入 http://localhost:
64· ·
Computer Era No. 1 2007
Linux下的入侵检测系统(IDS)的使用经验
王丽仪
(广东工业大学计算机学院, 广东 广州 510006)
摘 要: 如今需要不断升级、补漏的系统使得网络管理员的工作加重, 不经意的疏忽便有可能造成重大的安全事故。在这
种环境下, 入侵检测系统愈来愈多地受到了人们的关注, 而且已经在各种环境中发挥关键作用。文章主要针对 GNU/Linux
系统存在的安全漏洞, 建议使用入侵检测系统, 并举例详尽介绍 LIDS 的设置及其在网站管理中的应用。
关键词: GNU/Linux; pitfalls; LIDS; website administration
0 引言
现在越来越多的人使用 GNU/Linux 操作系统, 但由于其源
代码开放, 它的漏洞很容易被人利用。笔 者的操作系 统 也 曾 遭
受破坏, 安装了入侵检测系统后, 系统安全性能大大提高。本文
就 IDS 的使用谈谈体会。
1 LIDS 的功能介绍
LIDS 是 Linux 下的入侵检测防护系统, 是 Linux 内核补丁
和安全管理工具。它在内核中实现了参考监听模式及强制访问
控制模式, 保护硬盘上所有类型的重要文件和目录 不 被 任 何 未
经 授 权( 包 括 root 在 内) 的 人 改 变, 当 主 机 被 别 人 扫 描 时 , LIDS
能侦察到并报告系统管理员。
2 LIDS 的安装
IDS 的安装指南在它的安装文件中已有详尽的说明, 笔者
在此只说明需要注意的地方。
2.1 应用 LIDS 内核补丁包
在 LIDS 的官方网站中可找到各种内核的补丁包。需要注
意 的 是 下 载 的 LIDS 补 丁 包 的 版 本 应 与 系 统 内 核 版 本 相 匹 配 ,
否则会发生编译错误, 比如内核是 2.6.13 的 LIDS 包必须匹配
lids- 2.2.1- 2.6.13.tar.gz; 此外, LIDS 在非基于 i386 体系结构的
系统中也会出现问题。打补丁命令举例如下:
patch -p1 /dir_to_the_patch_file/patch-lids -2.2.1-2.6.13
接 着 用 make
[x/menu]config 来 配 置 内 核 , 选 择 需 要 的
LIDS 项, 然后重新编译 LINUX 内核。注意要使 LIDS 能够工
作, 必须保证下列选项编译到内核中:
[*] Prompt for development and/or incomplete code/drivers
[*] Linux Intrus ion Detection Sys tem s upport(EXPERIMENTAL)
最后用 make modules_install 对内核进行编译。把 bzImage
从 /kernelpath/arch/i386/boot 拷贝到启动目录下, 重新启动系统,
就把 LIDS 加入到内核中去了。
2.2 LIDS 管理工具的安装
LIDS 的设置主要通过 lidsconf 和 lidsadm 两个管理工具来
实现。这两个工具的安装命令举例如下:
tar -zxvf lids tools -2.6.13.tar.gz
cd lids tools -2.6.13
./configure
make
make ins tall
这样 LIDSADM 和 LIDSCONF 会 安 装 到 /sbin/ 目 录 中, 同
时会创建一个 /etc/lids 的目录, 并在此目录下生成一个默认的
配置文件。在使用 LIDS 前应先更新这个默认的配置文件:
lids adm -U
3 LIDS 的设置及应用举例
3.1 LIDS 的设置
LIDS 重启生效后, 我们用其对系统的重要文件设置访问控
制 权 限, 一 般 情 况 下 , 系 统 二 进 制 文 件 和 系 统 配 置 文 件 , 比 如 :
/bin, /sbin/, /usr/, /lib 等, 把它们设成只读文件:
lids conf -A -o /s bin -j READONLY
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
8080/Course.jsp, 运 行 Course.jsp 应 用 程 序 , 将 出 现 如 图 1 所 示
界面。这表明 Course.jsp 程序顺利调用 DBconn.class, 成功实现
了 通 过 JDBC- ODBC 桥 加 ODBC 驱 动 程 序 的 方 式 连 接 访 问
Access 数据库“ Course.mdb”的目的。
步的研究工作。
参考文献:
[1] 陈 河 堆, 高 航. 一 种 JDBC 连 接 分 享 的 分 类 方 法 及 其 实 现[J]. 计 算 机
应用,2004.24(12):112~114
5 结束语
本 文 采 用 JDBC- ODBC 桥 加 ODBC 驱 动 程 序 的 方 式 , 通
过调用 JavaBean 成功实现了 JSP 程 序 连 接 访 问 Access 数 据 库
的 目 的 所 述 方 法 对 JSP 程 序 通 过 其 他 方 式 访 问 其 他 种 类 的 数
据库, 如: Oracle、SQL Server 等也提供了借鉴意义。若要实 现
JSP 程序自由地访问操作目前各种流行的数据库并建立一个基
于 B/S 结构的动态网站的 目的, 则还需要在此 基 础 上 进 行 进 一
[2] 朱敏, 朱晴婷, 李媛媛.JSP Web 应 用 教 程 [M]. 清 华 大 学 出 版 社,
2004.
[3] 李刚,王茜.基于 Web 访问数据库的实现方案[J].计算机工程与应用,
2002.2:112~115
[4] 杜 小 丹, 张 凤 荔, 周 明 天, 于 洪. 中 间 件 技 术 在 Web 数 据 库 访 问 中 的
应用研究[J].计算机应用研究,2004.10:56~99
[5] 罗 荣, 唐 学 兵. 基 于 JDBC 的 数 据 库 连 接 池 的 设 计 与 实 现[J]. 计 算 机
工程,2004.30(9):92~111
▲C E