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框架下,你 ...
随机推荐
- 从linux启动到rootfs的挂载分析
简单的来说,根文件系统包括虚拟根文件系统和真实根文件系统.在Kernel启动的初始阶段,首先去创建虚拟的根文件系统,接下来再去调用do_mount来加载真正的文件系统,并将根文件系统切换到真正的文件系 ...
- js 中&& 与 ||
/*** 几乎所有语言中||和&&都遵循“短路”原理,* 如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反.* js也遵循上述原则.* 当||时,找到为 ...
- Python第一个入门程序
#!usr/bin/env python3 #在UNIX上,当某程序在控制台中被引用时,该文件的头两个字节先被读入.如果这两个字节是ASCII字符 #!, #shell就会认为该文件将要由解释器执行, ...
- RxJava 复杂场景 Schedulers调度
参考: https://blog.piasy.com/2016/10/14/Complex-RxJava-2-scheduler/ 以Zip为例,学习Schedulers的线程调度 要求: * cre ...
- 题解西电OJ (Problem 1008 - 数星星)
题目内容: Description “不要问我太阳有多高 我会告诉你我有多真 不要问我星星有几颗 我会告诉你很多很多” 一天Qinz和wudired在天上数星星,由于星星可以排列成一条直线,他们比赛看 ...
- poj 1704 阶梯博弈
转自http://blog.sina.com.cn/s/blog_63e4cf2f0100tq4i.html 今天在POJ做了一道博弈题..进而了解到了阶梯博弈...下面阐述一下我对于阶梯博弈的理解. ...
- 2-SAT模板
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAXCAYAAADgKtSgAAAFCUlEQVR42n2VeVCUdRzGf3n0T/80ld
- [iOS基础控件 - 6.2] LOL英雄列表 UITableView单项显示
A.需求 1.使用只有一个section的TableView来显示LOL 的英雄列表 2.内容包括标题.副标题.图标 3.使用plain样式 4.使用MVC模式 heros.plist 文件结 ...
- IOS-- UIView中的坐标转换
// 将像素point由point所在视图转换到目标视图view中,返回在目标视图view中的像素值 - (CGPoint)convertPoint:(CGPoint)point toView:(UI ...
- iOS 9 学习系列:UIStack View (转载)
作者:Nathan_Bao 地址:http://www.jianshu.com/p/1991e6c2881a 在 iOS9 中,Apple 引入了 UIStackView,他让你的应用可以通过简单的方 ...