Struts2整合Oracle数据库操作:增删改查实战
5星 · 超过95%的资源 需积分: 9 97 浏览量
更新于2024-07-23
收藏 148KB DOC 举报
"Struts2连接Oracle数据库进行增删改查操作的实例教程"
在这个实例中,我们将探讨如何使用Struts2框架与Oracle数据库协同工作,实现对数据的常见操作,包括增(添加)、删(删除)、改(修改)和查(查询)。首先,为了能够连接到Oracle数据库,我们需要在项目的`lib`目录下放置必要的驱动类库,分别是`class12.jar`和`oracle14.jar`。这两个JAR文件提供了Oracle JDBC驱动,使得Java程序能够与Oracle数据库进行通信。
接下来,我们创建一个名为`users`的表来存储用户信息,表结构如下:
```sql
CREATE TABLE users (
id NUMBER NOT NULL,
username VARCHAR2(20),
password VARCHAR2(30)
);
```
为了自动为`id`字段生成唯一值,我们创建了一个名为`users_xh`的序列和两个触发器。第一个触发器`users_increase_before`会在插入新记录前运行,将序列`users_xh`的值赋给新记录的`id`字段。第二个触发器`users_increase_after`在插入后执行,更新序列`users_xh`的值,使其递增,确保下一次插入时可以获取新的唯一`id`。
触发器的创建代码如下:
```sql
CREATE OR REPLACE TRIGGER users_increase_before
BEFORE INSERT ON users
FOR EACH ROW
BEGIN
SELECT users_xh.xh_id + 1 INTO :NEW.id FROM users_xh;
END users_increase_before;
CREATE OR REPLACE TRIGGER users_increase_after
AFTER INSERT ON users
FOR EACH ROW
DECLARE
-- local variables here
BEGIN
UPDATE users_xh SET xh_id = users_xh.xh_id + 1;
END users_increase_after;
```
然后,我们创建一个名为`DatabaseTest`的Java类,该类包含了获取数据库连接的方法。在类中,我们定义了数据库驱动、URL、用户名和密码的常量,并使用`DriverManager.getConnection()`方法建立连接。示例代码如下:
```java
public class DatabaseTest {
private static Connection getConn() {
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String username = "scott"; // 数据库用户名
String password = "tiger"; // 数据库用户密码
Connection conn = null;
try {
Class.forName(driver);
conn = DriverManager.getConnection(url, username, password);
System.out.println("connect success");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return conn;
}
// 其他数据库操作方法如增删改查会在这里实现
}
```
至此,我们已经建立了数据库连接并准备好执行增删改查操作的基础。在Struts2框架中,通常会创建Action类来处理用户请求,并在这些Action类中调用`DatabaseTest`类的方法来执行实际的数据库操作。例如,我们可以创建`AddUserAction`、`DeleteUserAction`、`UpdateUserAction`和`QueryUserAction`,分别对应用户的添加、删除、更新和查询功能。
在Struts2的配置文件中,我们需要定义这些Action的映射,指定它们对应的类和结果视图。Action类中的方法通常会返回一个表示操作结果的字符串,Struts2会根据这个结果字符串决定跳转到哪个页面展示操作结果。
这个实例展示了如何利用Struts2框架结合Oracle数据库进行数据操作的基本流程。通过这个实例,开发者可以学习到如何设置数据库连接、创建触发器以及在Struts2中组织Action来实现CRUD功能。
2022-06-03 上传
点击了解资源详情
2013-09-10 上传
2013-04-18 上传
2012-11-30 上传
cxy-zore
- 粉丝: 0
- 资源: 4
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍