`

helloworld---------struts1

阅读更多
在myeclipse里新建web项目,加上struts特性,struts1.1

新建actionform
/*
 *@(#){file_name} Aug 3, 2010
 *
 *Copyright 2010 Zhoujunmei.
 */
package struts.actionform;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;

public class HelloActionForm extends ActionForm {
	
	String username;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}
	//即使有此方法,如果struts-config配置文件中不是validate="true",也不执行
	public ActionErrors validate(ActionMapping mapping,HttpServletRequest request){
		
		ActionErrors errors = new ActionErrors();
		if(username.equals("")){
//			error.errornoname为资源文件中的错误信息的key如error.errornoname=。。
			ActionError error = new ActionError("error.errornoname");
			
		 //usernameinvalid为 <html:errors property = "usernameinvalid" />所用,
//			显示资源文件中的错误信息的key为error.errornoname的value值
			errors.add("usernameinvalid",error);       
			
		}
		return errors;
	}
	public void reset(ActionMapping mapping,HttpServletRequest request){
	}
	
}




新建action

HelloAction代码
/*
 *@(#){file_name} Aug 3, 2010
 *
 *Copyright 2010 Zhoujunmei.
 */
package struts.action;

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 struts.actionform.HelloActionForm;

public class HelloAction extends Action {
	public ActionForward execute(ActionMapping actionMapping,
			ActionForm actionForm, HttpServletRequest servletRequest,
			HttpServletResponse servletResponse) {
		HelloActionForm helloActionForm = (HelloActionForm) actionForm;
		return actionMapping.findForward("success");
	}

}


jsp页面
who.jsp

<%@ page contentType="text/html; charset=gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <body>
    <form method="post" name="divisionForm" action="HelloAction.do">
      <hr>谁想说?<hr>
      <br>
        请输入想说话的人的名字(仅限输入英文字母):<input type="text" name="username" value="">
      <br>
      <input type="submit" name="submit" value="提交">
    </form>
  </body>
</html>


whosay.jsp

<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="struts.actionform.*"%>
 <!-- 直接用struts的标签库 -->
 <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <body>
     <html:errors property = "usernameinvalid" />
    <% HelloActionForm helloActionForm = (HelloActionForm)request.getAttribute("helloform"); %>
    <%= new String(helloActionForm.getUsername().getBytes("ISO8859-1"),"GBK")%>说:“Hello World”
    <!-- 直接用jsp内置对象即可,中文乱码解决 -->
    <%= new String(request.getParameter("username").getBytes("ISO8859-1"),"GBK") %>说:“Hello World”
  </body>
</html>


error.jsp

<%@ page language="java"  pageEncoding="gb2312"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>My JSP 'error.jsp' starting page</title>

	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
  从资源文件中取得的对应错误信息:<html:errors/><br><br>
   出错了 <br>
  </body>
</html>


struts-config。xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

<struts-config>
  <data-sources />
  <form-beans >
  <form-bean name="helloform" type="struts.actionform.HelloActionForm"></form-bean>
  </form-beans>
  <global-exceptions />
  <global-forwards />
  <action-mappings >
  <!-- 一旦页面有错,就转向input设置的jsp页面 -->
  <action
      attribute="helloform"
      input="/error.jsp"
      name="helloform"
      parameter="methode"
      path="/HelloAction"
      scope="request"
      type="struts.action.HelloAction"
      validate="true"> <!-- actionform里有validate方法,使之有效 -->
      <forward name="success" path="/WhoSayHelloWorld.jsp" />
    </action>
  </action-mappings>
  <!-- 只有一个资源配置文件,可以不指定key -->
  <message-resources parameter="struts.ApplicationResources" />
</struts-config>


资源文件和web.xml见附件



分享到:
评论

相关推荐

    helloWorld-struts2.0.14.rar

    本教程“helloWorld-struts2.0.14.rar”旨在为初学者提供一个清晰易懂的入门起点,通过一个简单的实例帮助理解Struts2的核心概念和配置。 首先,Struts2.0.14是该框架的一个早期版本,它在当时的Java社区中广泛使用...

    struts零配置HelloWorld-Annotation

    在“struts零配置HelloWorld-Annotation”这个项目中,我们将重点探讨如何利用注解来实现Struts2框架的配置,这对于初学者来说是一个很好的起点。 在传统的Struts2配置中,我们需要在`struts.xml`文件中手动定义每...

    HelloWorld-Dwr

    这个"HelloWorld-Dwr"示例是一个基础教程,展示了如何使用DWR来实现简单的远程方法调用。 首先,我们需要在项目中导入必要的库。DWR的核心库是dwr.jar,还需要commons-logging-1.0.4.jar,这是一个日志处理库,通常...

    第二章 Struts2 下的HelloWorld--2

    《Struts2 权威指南》第二章 Struts2 下的HelloWorld测程序源码2

    struts2 helloworld

    "Struts2 HelloWorld"是学习Struts2框架的基础教程,通过这个例子,我们可以了解Struts2的基本配置和工作流程。 首先,让我们从项目结构开始。在"struts2_helloWorld"压缩包中,通常会包含以下几个关键文件: 1. *...

    jamesby-struts2-helloworld.rar_3ds nandbo_helloworld_struts2_str

    这个"jamesby-struts2-helloworld.rar"压缩包提供了一个基础的Struts2入门示例,名为“helloworld”,对于初学者了解和学习Struts2的工作原理非常有帮助。 首先,我们来看看"index.jsp"。这通常是一个应用的入口点...

    用Maven构建Struts2的HelloWorld

    &lt;package name="helloworld" namespace="/" extends="struts-default"&gt; &lt;action name="hello" class="com.yourcompany.HelloworldAction"&gt; &lt;result name="success"&gt;/hello.jsp &lt;/struts&gt; ``` 这个配置文件...

    struts2.0开发环境的搭建及HelloWorld的演示

    本教程将详细介绍如何在MyEclipse 6.5.0 GA环境中搭建Struts2.0开发环境并实现一个简单的"HelloWorld"应用。 首先,你需要访问Apache Struts的官方网站(http://struts.apache.org/download.cgi#struts216)下载...

    HelloWorld 基于struts2框架

    &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;action name="hello" class="com.example.HelloWorldAction"&gt; &lt;result name="success"&gt;/HelloWorld.jsp ``` 在这个配置中,`hello`是...

    基于struts2的hello world输出

    &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;action name="hello" class="com.yourpackage.HelloWorldAction"&gt; &lt;result name="success"&gt;/HelloWorld.jsp &lt;/struts&gt; ``` 在这里,我们...

    Struts2入门之HelloWorld

    &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;action name="helloWorld" class="com.yourpackage.HelloWorldAction"&gt; &lt;result name="success"&gt;/HelloWorld.jsp ``` 3. **创建JSP页面**...

    struts2的helloworld例子

    &lt;package name="helloworld" namespace="/" extends="struts-default"&gt; &lt;action name="hello" class="com.example.HelloWorldAction" method="execute"&gt; &lt;result name="success"&gt;/HelloWorld.jsp &lt;/struts&gt; `...

    Struts2--HelloWorld

    &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;action name="hello" class="com.yourpackage.HelloWorldAction" method="execute"&gt; &lt;result name="success"&gt;/HelloWorld.jsp &lt;/struts&gt; ...

    struts2 helloworld程序

    在这个"Struts2 HelloWorld"程序中,我们将深入理解Struts2的基本结构和配置,以及如何创建第一个简单的应用。 首先,让我们从环境搭建开始。为了运行Struts2的HelloWorld程序,你需要安装Java Development Kit ...

    Struts2-HelloWorld

    在本教程中,我们将深入探讨Struts2的基础知识,通过一个"Struts2-HelloWorld"实例来演示如何在实际项目中应用Struts2。 首先,让我们了解Servlet。Servlet是Java编程语言中用于扩展服务器功能的接口。它处理HTTP...

    struts-helloworld.zip

    这个"struts-helloworld.zip"压缩包是为初学者准备的一个入门示例,旨在帮助理解Struts2框架的基础工作原理。 首先,让我们了解一下Struts2框架的核心概念: 1. **Action类**:在Struts2中,Action类是业务逻辑的...

    学Struts2从HelloWorld示例开始

    从“HelloWorld”示例开始学习Struts2是一个经典的入门方法,因为它能帮助我们理解框架的基本工作原理。 首先,我们需要创建一个展示信息的JSP文件,即`HelloWorld.jsp`。在这个文件中,我们使用Struts2的标签库,...

    Struts2的第一个实例helloworld

    &lt;package name="default" extends="struts-default"&gt; &lt;action name="hello" class="com.example.HelloWorldAction" method="execute"&gt; &lt;result name="success"&gt;/HelloWorld.jsp ``` 这里,`name="hello"`指定...

    struts框架-helloworld

    第一个struts框架的完成,使用eclipse写的。第一次写其实是在半年前,现在再重新写,真是错误连篇,最讨厌的是报404错误。首先检查tomcat部署时,有什么错误,针对性解决,大多是因为jar包多了或者少了。有时,jar包...

Global site tag (gtag.js) - Google Analytics