引子:http://blog.csdn.net/eiwang/archive/2007/12/10/1927019.aspx
三、开始工作
在
WebContent
下建立
index.jsp
,建立方式如图。
index.jsp
的内容如表,我们暂时不分析。
<%@
page
contentType
=
"text/html; charset=UTF-8"
%>
<
html
>
<
head
>
<title>Example by Doer Liu@UTStarcom sz </title>
</
head
>
<
body
>
This is my JSP page.
<
br
>
<
form
name
=
"userInfoForm"
action
=
"login.do"
method
=
"post"
>
用户名
:
<
input
name
=
"username"
type
=
"text"
/>
密码
:
<
input
name
=
"password"
type
=
"password"
>
<
input
name
=
"sub"
type
=
"submit"
value
=
"
增加
"
/>
<
input
name
=
"res"
type
=
"reset"
value
=
"
重置
"
/>
</
form
>
</
body
>
</
html
>
|
此时就可以运行该工程,忙了这么久,看看效果吧。
运行方式:右键点击
index.jsp
,选择
Run/Debug As
à
Run on Server
,在弹出窗口中默认我们使用的
Tomcat Server
,点击
finish
完成。可以看到
eclipse
中内嵌的浏览器显示我们的网页。其中表单的输入在我们的工程中将得到输入数据(用户名和密码),这些数据会传给我们将要建立的
Action
处理。
现在来看看如何建立我们的
Action
。在
src
下新建一个
package
(包)名为
action
用于保存响应
Web
请求的
Action
类。在
action
包下新建
Action
类
LoginAction
(
action.LoginAction
)如下,注意类的继承关系。
package
action;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
org.apache.struts.action.ActionForm;
import
org.apache.struts.action.ActionForward;
import
org.apache.struts.action.ActionMapping;
import
org.apache.struts.validator.DynaValidatorForm;
import
org.springframework.web.struts.ActionSupport;
//
我们继承
spring
提供的
Action
衍生类
org.springframework.web.struts.ActionSupport
public
class
LoginAction
extends
ActionSupport
{
public
ActionForward execute
(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
return
mapping.findForward(
"success"
);
}
}
|
但是现在
index.jsp
的内容怎么和
LoginAction
的数据匹配呢,我们看到
LoginAction
的
execute
方法有一个属性
ActionForm
,于是我们建立一个类
forms.UserInfoForm
如下,继承
ActionForm
。
package
forms;
import
org.apache.struts.action.ActionForm;
public
class
UserInfoForm
extends
ActionForm {
private
String username;
private
String password;
public
String getUsername() {
return
username; }
public
void
setUsername(String username)
{
this
.username = username; }
public
String getPassword() {
return
password; }
public
void
setPassword(String password)
{
this
.password = password; }
}
|
有了两个头,又有了保持内容的类,现在看看我们如何用
struts
把他们联系起来吧。
现在需要在
WEB-INF
下建立文件
struts-config.xml
。其中
form-beans
定义了表单是如何映射的,这里用我们刚刚定义的
forms.
UserInfoForm
。
<?
xml
version
=
”1.0”
encoding
=
"ISO-8859-1"
?>
<!
DOCTYPE
struts-config
PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"
>
<
struts-config
>
<
form-beans
>
<
form-bean
name
=
"userInfoForm"
type
=
"forms.UserInfoForm"
/>
</
form-beans
>
<
action-mappings
>
<
action
attribute
=
"userInfoForm"
path
=
"/login"
input
=
"/index.jsp"
type
=
"org.springframework.web.struts.DelegatingActionProxy"
name
=
"userInfoForm"
scope
=
"session"
validate
=
"false"
>
<
forward
name
=
"success"
path
=
"/success.html"
/>
</
action
>
</
action-mappings
>
</
struts-config
>
|
在
<
action-mappings
>
中定义了我们的
Action
。它的属性
attribute
指出
Action
的内容输入是我们自定义的
ActionForm
,
path
给
Action
赋予一个路径,
input
指明只接受
index.jsp
的输入,
<
forward
标签定义了当
Action
返回
"success"
的时候,将定向到
/success.html
这个网页。
最重要的是
type
,它定义了这个处理这个请求的
Action
类,本来应该是我们自定义的
LoginAction
,但我们却用了
spring
的一个
Action
,为什么?因为我们要用
Spring
管理我们自定义的
Action
。看,
struts
和
Spring
在这里就开始连接起来了。
但还有两个问题,
Struts
和
Spring
又是如何知道对方的存在,如何沟通呢?
Spring
如何知道把控制权交给我们自定义的
LoginAction
呢?
我们先来解决第一个问题,
web.xml
是
Tomcat
这些应用服务器管理的,因此我们在这里将
struts
和
Spring
配置联系起来。这是整个
web.xml
。请看注释。
<?
xml
version
=
"1.0"
encoding
=
|
分享到:
相关推荐
12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...
本光盘是《整合Struts+Hibernate+Spring应用开发详解》一书的配书光盘,书中的代码按章存放, 即第二章所使用的代码放在codes文件夹的02文件夹下,依次类推。 本光盘根目录下有11个文件夹,其内容和含义说明如下: ...
Struts 2+Hibernate+Spring整合开发技术详解sample.pdf
Struts2+Hibernate+Spring整合开发技术详解19章网上书店完整源码(内附数据库导出文件) 与书上最后一章内容完全对应 可以结合书上教程进行最后一章学习
Struts+Spring+Hibernate 整合是Java Web开发中一种常见的技术栈,它结合了三个强大的框架,以实现高效、灵活且易于维护的后端应用。这篇文章将带你一步步入门这三者的整合,从基本概念开始,到环境搭建,再到实际...
12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...
### Struts+Spring+Hibernate 整合教程知识点详解 #### 一、SSH整合理念与背景 **1.1 框架概述** 在构建复杂的Web应用程序时,开发人员需要面对诸多挑战,包括如何构建用户界面(UI)、业务逻辑(BL)的存放位置以及...
Struts+Spring+Hibernate 整合是Java Web开发中一种常见的技术栈,它结合了三个强大的框架,以实现高效、灵活且易于维护的后端应用。这三个框架分别是: 1. **Struts**: Struts是一个基于MVC(Model-View-...
### Struts+Spring+Hibernate整合开发详解 #### 一、项目背景与意义 在现代企业级应用开发中,为了提高软件质量和开发效率,通常会采用多种框架进行整合开发。Struts、Spring 和 Hibernate(通常简称 SSH)是三个...
本光盘是《整合Struts+Hibernate+Spring应用开发详解》一书的配书光盘,书中的代码按章存放, 即第二章所使用的代码放在codes文件夹的02文件夹下,依次类推。 本光盘根目录下有11个文件夹,其内容和含义说明如下: ...
通过以上步骤,我们成功地在WebLogic服务器上实现了Struts、Spring和Hibernate的整合,创建了一个Struts Portlet,从而能够在portlet环境下利用这三个框架的强大功能,提高开发效率和代码质量。这个实例不仅涵盖了...
这本由蒲子明编著的《Struts 2+Hibernate+Spring整合开发技术详解》深入探讨了如何将这三个框架有效结合,以构建高效、模块化的Web应用。书中第12到17章的内容涵盖了以下几个关键知识点: 1. **Struts 2框架**: -...
spring高手之路22
### JavaEE企业应用实战-Struts2+Spring3+Hibernate整合开发(第3版)核心知识点解析 #### 一、JavaEE概述与架构 - **JavaEE简介**:JavaEE(Java Platform, Enterprise Edition)是Java平台的企业版,提供了一套...
Struts:作为基于 MVC 模式的 Web 应用最经典框架,两个项目Struts 和webwork已经集成,成为现在的Struts2。目前的最新版本是2.0.9(2007-7)。 Spring: 是一个轻型的容器,利用它可以使用一个外部 XML 配置文件...
在"Struts 2+Hibernate+Spring整合开发技术详解"中,作者蒲子明深入讲解了如何将这三个框架有效地结合在一起。第18章可能涉及的是项目整合的高级话题或者特定场景的应用,由于文件名只给出了“第18章”,具体章节...
SSH框架是指将Struts、Spring以及Hibernate这三个开源框架进行整合,以实现更加强大、灵活且可扩展的企业级应用开发。本文将详细介绍如何在MyEclipse 8.5环境下搭建基于Struts2.1、Spring3.0以及Hibernate3.3的SSH...
Struts1.2、Spring1.2和Hibernate2.0是经典...然而,需要注意的是,Struts1.2、Spring1.2和Hibernate2.0都已较为老旧,现在更推荐使用更新的版本,如Struts2、Spring Boot和Hibernate5,以获得更好的性能和最新的特性。