struts2 CRUD 入门 配置
本文介绍struts2在eclipse下的配置,实现一个具有CRUD功能的图书管理系统。
1 开发环境配置
1.1 在Eclipse中配置Struts2
1.1.1 新建struts.xml 文件,并写入如图信息。


1.1.2 在web.xml 文件中配置struts2

2.1.3 在WEB-INF 目录下导入如下的struts2 相关的jar 包

1.2 在Eclipse中配置MySQL
如下图,继续在WEB-INF 目录下导入Java 连接MySQL 的驱动包。

1.3 在Eclipse中配置Tomcat
2.3.1 新建Tomcat


2.3.2 新建Dynamic Web Project,并关联到Tomcat 上

2 图书SaaS设计
2.1 Web.xml
源代码(XML)

该部分web.xml 可从struts2.3 的struts2-blank 项目中拷贝,省去开头烦人的手打。具体需要修改的部分是welcome-file 里设置的首页。
2.2 Struts.xml


2.3 Action类
|
Action类名 |
作用 |
操作列表 |
操作说明 |
|
BooksAction |
处理所有action |
index |
返回首页 |
|
Query |
执行查询并返回查询结果 |
||
|
Delete |
删除图书 |
||
|
Show |
展示图书信息 |
||
|
popUpdate |
跳转到更新图书页面 |
||
|
Update |
处理并更新图书 |
||
|
popCreate |
弹出创建图书页面 |
||
|
Create |
处理并创建图书 |
||
|
CreateAuthor |
处理并创建作者 |
2.4 辅助类
|
类名 |
作用 |
操作列表 |
操作说明 |
|
Book |
图书数据模型 |
Getters、Setters |
Struts 自动创建 |
|
Author |
作者数据模型 |
Getters、Setters |
Struts 自动创建 |
|
Dao |
数据库连接与访问 |
Dao |
创建与数据库的连接 |
|
Close |
断开与数据库的连接 |
||
|
Execute |
执行数据库的表插入 |
||
|
ExecuteQuery |
执行数据库的表查询 |
||
|
ExecuteUpdate |
执行数据库的表更新、删除 |
2.5 JSP页面
|
序号 |
页面名 |
作用 |
页面核心元素(form) |
Form对应的action name |
Form中提交的数据项 |
|
1 |
Index.jsp |
首页,查询与创建图书 |
Form1 |
PopCreate |
无 |
|
Form2 |
Query |
Author.name |
|||
|
2 |
Result.jsp |
展示某作者所有图书,查询、更新、删除与创建图书 |
Form1 |
PopCreate |
无 |
|
Form2 |
Query |
Author.name |
|||
|
A1 |
Show |
ISBN |
|||
|
A2 |
Delete |
ISBN, author.name |
|||
|
A3 |
Update |
ISBN, title |
|||
|
3 |
Create.jsp |
提供创建图书信息 |
Form |
Create |
ISBN, title, authorID, publisher, publishDate price |
|
4 |
Show.jsp |
展示图书信息 |
无 |
无 |
无 |
|
5 |
Update.jsp |
提供更新图书信息 |
Form |
Update |
ISBN, title, authorID, publisher, publishDate price |
|
6 |
CreateAuthor.jsp |
提供创建新作者的信息 |
Form |
CreateAuthor |
authorID, name, country, age, ISBN, title, authorID, publisher, publishDate price |
|
7 |
createSUCCESS.jsp |
提示创建成功,关闭或返回主页 |
无 |
index |
无 |
|
8 |
createFAIL.jsp |
提示创建图书失败,返回创建页面 |
无 |
popCreate |
无 |
|
9 |
Error.jsp |
提示错误,跳转回主页 |
A |
index |
无 |
2.6 各Action/JSP之间的调用和消息传递关系
给出一张图示描述彼此之间的数据传递和调用关系。

3 图书SaaS核心代码
针对下列功能,分别给出ActionJSP页面中的核心代码。
3.1 按作者查询

图1-1查询入口

图1-2查询action

图-1-3 查询返回界面
3.2 展示图书详细信息

图2-1 图书展示入口

图2-2 图书展示action

图2-3 图书展示返回页面
3.3 删除图书

图3-1 删除图书入口界面

图3-2 删除图书action

图3-3 删除图书返回页面
3.4 新增图书/作者

图4-1 新增图书入口界面

图4-2 新增图书弹出页面action

图4-3 新增图书界面

图4-4 新增图书action

图4-5 新增作者入口页面

图4-6 新增作者action
3.5 更新图书信息(可选)

图5-1 更新图书入口界面

图5-2 更新图书action-Part I

图5-3 更新图书action-Part II
3.6 数据库连接与访问

图6-1 数据库连接与操作Dao类

图6-2 数据库的执行操作
struts2 CRUD 入门 配置的更多相关文章
- Struts2学习第一天--Struts2的概述、Struts2的入门、Struts2常见的配置、Struts2的Action的编写
action的name要与访问路径对应.hello.action. 加到tomcat启动 访问:http://localhost:8080/struts2-1/demo1/demo1.jsp 改为su ...
- struts2之入门login
1.struts 最小开发需要的jar有: struts2-core-2.2.3.jar :Struts 2框架的核心类库 xwork-core-2.2.3.jar :XWork类库,Struts 2 ...
- mybatis入门配置和调试
欢迎转载http://www.cnblogs.com/jianshuai520/p/8669177.html大家一起努力,如果看的时候有图片半边遮挡起来的话,右键查看图片,就可以观看完整的图片,具体怎 ...
- 深入分析JavaWeb Item43 -- Struts2开发入门
一.Struts2概述 1.Struts2是什么? Struts2是一个M(模型-域–范围模型)V(View视图)C(控制器)框架(模型2).框架都是一个半成品. 提高开发效率. Struts1是一个 ...
- Struts2 第四讲 -- Struts2的基本配置
5.struts2的基本配置 5.1 struts2的访问连接url 在struts1中,通过<action path=“/primer/helloWorldAction.action”> ...
- Struts2 第二讲 -- Struts2的入门
搭建struts2环境时,我们一般需要做以下几个步骤的工作: 第一步:创建javaweb工程(这个很废话有木有) 第二步:找到开发Struts2应用需要使用到的jar文件.(这个很白痴有没有) 到ht ...
- Struts2基础入门
Struts2基础入门 创建一个web工程 0)导包并且创建一个核心配置文件 <?xml version="1.0" encoding="UTF-8"?& ...
- (转)Struts2快速入门
http://blog.csdn.net/yerenyuan_pku/article/details/66187307 Struts2框架的概述 Struts2是一种基于MVC模式的轻量级Web框架, ...
- 1、Struts2基本入门
一.了解了这几个主要的优点,会促使你考虑使用Struts2 : 1.POJO表单及POJO操作 - Struts2 去除掉了Struts框架中的Action Forms部分.在Struts2框架下,你 ...
随机推荐
- Android开发:如何实现TCP和UDP传输
TCP和UDP在网络传输中非常重要,在Android开发中同样重要. 首先来看一下什么是TCP和UDP. 什么是TCP? TCP:Transmission Control Protocol 传输控制协 ...
- 转换时间为 “XX分钟之前”
public static string getTimeAgo(string strDate) { string strTime = string.Empty; if (clsCommon.IsDat ...
- winform中设置FormBorderStyle为None后点击任务栏自动最小化实现
在winform编程中,有时候我们可能对窗体样式需要定义,不适用系统自带的样式,这样我们可以设置FormBorderStyle属性为None.但是设置了FormBorderStyle为None后,我们 ...
- opencv 在工业中的应用:blob分析
在工业中经常要检测一副图像中物体的数量,位置,大小,面积等信息,这就要用到BLOB分析,我用OPENCV做了个BLOB分析的DEMO. (1)打开一幅图像 (2)进行参数设置,设定二值化阙值,并选择是 ...
- mfc的一个串口类
这几天一直再看串口相关知识,对于其总结为如下串口类: 头文件声明如下: #pragma once // 声明当串口接收到线程的时候调用的函数指针 // 参数: 1,接收到的数据: 2,数据长度: 3, ...
- 曝光卖假币的店铺和旺旺ID
1:店铺名称:九玖邮币 掌柜ID:九玖邮币[此人较贼,价格只比我们低一点,图用的不太清晰的,或者直接用真品图,而且卖假币卖到2钻了,很多人上当了.]1.5 店铺名称:聚鑫钱币 掌柜ID:聚鑫钱币 [1 ...
- [iOS基础控件 - bugs]
1.不能呼出iOS模拟器键盘 Can't find keyplane that supports type 4 for keyboard iPhone-Portrait-NumberPad 解决:Ha ...
- [OC Foundation框架 - 16] NSObject和反射
1.判断某个对象是否属于一个类 Student *stu = [[[Student alloc] init] autorelease]; BOOL result= [stu isKindOfClass ...
- Linux Pmap 命令:查看进程用了多少内存
Pmap 提供了进程的内存映射,pmap命令用于显示一个或多个进程的内存状态.其报告进程的地址空间和内存状态信息.Pmap实际上是一个Sun OS上的命令,linux仅支持其有限的功能.但是它还是对查 ...
- UITextView详解
self.textView = [[[UITextView alloc] initWithFrame:self.view.frame] autorelease]; //初始化大小并自动释放 sel ...