`
yangzhizhen
  • 浏览: 75559 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Struts1.3.10手动配置

阅读更多

在使用自定义MVC框架完成了一个比较简单的BBS的之后,打算研究一下SSH框架。这是自己在Eclipse下手动配置的一个简单的登陆系统,用的是Struct1.3.10框架。

手动配置流程(以登陆验证系统为例):

、首先在Eclipse下创建一个动态Web项目,将下载好的struts1.3.10的压缩包解压之后的lib目录下的jar文件全部拷贝到对应的Web项目的WEB-INF下的lb目录下,此时在本项目的Web App Libraries可以看到我们引进去的包。WEB-INF用于存放一些驱动包。
、在WEB-INF目录下编写简单的login.jsp页面,body标签中的主要代码如下。

<form action="/StrutsLogin/login.do" method="post">
	用户名:<input type="text" name="username"/><br/>
	密码:<input type="password" name="password"/><br/>
	<input type="submit" value="登陆"/>
</form>

、创建用户表单类UserForm。表单类主要用来存放数据。代码和详细注释如下。

package cn.yzz.forms;

import org.apache.struts.action.ActionForm;
/**
 * 用户表单类,用于填充数据
 */
public class UserForm extends ActionForm {
	//在这里为了规范:定义属性名时应该和JSP页面的控件名称一样
	//实际只需保证set和get方法和属性名有关联 set属性名
	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;
	}
}

、编写LoginAction,继承自Action,对应于分控制器,用于处理Form提交的表单数据。

package cn.yzz.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import cn.yzz.forms.UserForm;
/**
 * 登陆Action,用于处理登陆请求
 */
public class LoginAction extends Action{
	//execute自动调用,
	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		//将Form强转为UserForm
		UserForm userForm = (UserForm)form;
		String username = userForm.getUsername();
		String password = userForm.getPassword();
		//将用户名存入request表单域中
		request.setAttribute("username", username);
		if("888888".equals(password))
			return mapping.findForward("welcome");
		else
			return mapping.findForward("error");
	}
}

、在WEB-INF下新建一个名为config的文件夹,在config文件夹里面创建名为struts-config.xml文件,这是struts的配置文件,在此文件中,详细配置struts。下面是struts的详细配置信息及其注释。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-Apache Software Foundation//DTD struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
	<!-- 配置表单 -->
	<form-beans>
		<!-- name为表单名字,可以随意,建议取名:表单类名的小写 -->
		<!-- type用于指定表单类的全路径 -->
		<form-bean name="userForm" type="cn.yzz.forms.UserForm"></form-bean>
	</form-beans>
	<!-- 配置action -->
	<action-mappings>
		<!-- path:将来访问action的uri name必须和表单名相同,用于关联某个表单 type:指定action的全路径-->
		<!-- scope:指定该action对应的表单对象的生命周期为request级别 =request.setAttribute("userForm",userForm),默认为session-->
		<action path="/login" name="userForm" scope="request" type="cn.yzz.actions.LoginAction">
			<!-- 这里配置跳转关系 name:结果名称 path:转发页面-->
			<forward name="welcome" path="/WEB-INF/welcome.jsp"></forward>
			<forward name="error" path="/WEB-INF/error.jsp"></forward>
		</action>
	</action-mappings>
</struts-config>

、配置WEB-INF目录下的web.xml文件,此文件主要存放服务器的配置信息。

<servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/config/struts-config.xml</param-value>
    </init-param>
</servlet>
<servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
</servlet-mapping>

最后在WEB-INF目录下编写weicome.jsp和error.jsp页面,填入简单的信息即可。在welcome.jsp页面中主要代码如下。

<body>
恭喜<%=((UserForm)request.getAttribute("userForm")).getUsername()%>登陆成功!
<a href="/StrutsLogin/">返回重新登陆</a>
</body>

 

这样,最简单的一个Struts应用就搞定了,手动配置有助于初学者了解Struts的原理。熟悉了原理之后,就可以用相对简单的MyEclipse来开发Struts了!

 

 

分享到:
评论

相关推荐

    struts1.3.10源代码

    深入研究Struts 1.3.10源代码,可以帮助我们掌握Web应用开发的基本架构,理解MVC模式在实践中的应用,以及学习如何通过配置和编程控制请求流程。同时,通过分析源码,还可以学习到如何处理HTTP请求,验证用户输入,...

    struts1.3.10 和 struts2.0.14 包

    - **配置方式**:Struts 1主要通过XML配置,而Struts 2则支持注解和动态配置,更加灵活。 - **MVC实现**:Struts 1的MVC实现相对简单,而Struts 2提供了更全面的解决方案,包括拦截器、结果类型等。 - **异常处理**...

    struts1.3.10 全部jar

    Struts 1.3.10 是一个历史悠久的开源框架,它是Apache软件基金会下的Web应用程序开发框架,专门用于构建基于Java的MVC(Model-View-Controller)模式的应用。这个版本,1.3.10,是Struts 1.x系列的较新版本,旨在...

    struts 1.3.10.chm api 中文版

    Struts 1.3.10 是一个历史悠久的Java Web框架,由Apache软件基金会开发,主要用于构建企业级的MVC(Model-View-Controller)应用。API文档是开发者理解和使用框架的重要参考资料,它详尽地介绍了框架提供的类、接口...

    struts1.3.10jar包

    Struts1.3.10是一个经典的Java Web框架,由Apache软件基金会开发,主要用于构建MVC(模型-视图-控制器)架构的应用程序。这个框架极大地简化了企业级Web应用的开发过程,提供了丰富的功能和良好的可扩展性。在描述中...

    struts 1.3.10 api chm 中文版

    深圳电信培训中心.徐海蛟老师上ssha课时候用的中文版struts api chm中文文档。 支持高级搜索,即时搜索。吐血奉送各位。

    Struts 1.3.10+Spring3.0.5+Mybatis3.1.1框架整合全部jar包

    Struts 1.3.10、Spring 3.0.5 和 Mybatis 3.1.1 是三个经典的Java Web开发框架,它们在企业级应用中被广泛使用。这三者的整合使得开发者能够实现MVC(Model-View-Controller)架构、依赖注入以及灵活的数据持久化。...

    struts-1.3.10

    通常,这些实例会展示如何配置struts-config.xml文件,这是Struts框架的核心配置文件,定义了Action、ActionForm、ActionMapping等元素。实例还会演示如何创建Action类,它是处理用户请求的业务逻辑载体。此外,可能...

    struts1.3.10

    Struts 1.3.10 是一个历史悠久的Java Web应用程序框架,由Apache软件基金会开发。这个版本是在2009年发布的,是Struts 1.x系列的一个维护版本,旨在提供稳定性和安全性更新。在Java社区中,Struts 1曾是构建MVC...

    struts1.3.10 helloworld 例子 jdk1.6+Tomcat6.0+eclipse3.5

    本示例是"struts1.3.10 helloworld 例子",旨在帮助开发者了解如何在Java环境中集成Struts 1.3.10框架,使用JDK 1.6、Tomcat 6.0服务器以及Eclipse 3.5 IDE进行开发。下面将详细介绍这个例子的关键知识点。 1. **...

    struts-1.3.10 源代码

    struts-1.3.10 源代码struts-1.3.10 源代码struts-1.3.10 源代码struts-1.3.10 源代码struts-1.3.10 源代码struts-1.3.10 源代码

    Struts-1.3.10-src.zip

    11. **POM.xml**:在Struts 1.3.10的源码中,pom.xml是Maven项目对象模型的配置文件,用于构建、依赖管理和项目信息管理。 通过对这些源代码的阅读和学习,开发者可以更好地了解Struts框架的内部机制,进行定制化...

    struts-1.3.10-src

    struts-1.3.10源码 struts-1.3.10源码 struts-1.3.10源码 struts-1.3.10源码 struts-1.3.10源码 struts-1.3.10源码 struts-1.3.10源码 struts-1.3.10源码

    struts1.3.0

    - 通过配置struts-config.xml文件来定制应用的行为,如Action与URL的映射、消息资源文件的指定等。 - 保持Action类的瘦模型,避免将业务逻辑嵌入Action中,而是应该将其移至服务层(Service Layer)。 总的来说,...

Global site tag (gtag.js) - Google Analytics