`
zhangjingqiang
  • 浏览: 72028 次
  • 性别: Icon_minigender_1
  • 来自: 东京
社区版块
存档分类
最新评论

导入Struts2

    博客分类:
  • Java
阅读更多

src:

struts.xml

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

<struts>
	<constant name="struts.enable.DynamicMethodInvocation"  value="true" />
</struts>

src\chap09:

CheckAction.java

package chap09;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.struts2.config.Result;
import org.apache.struts2.interceptor.ServletRequestAware;

@Result("/result.jsp")
public class CheckAction implements ServletRequestAware{
	private String name;
	private String age;
	private String sex;
	
	private HttpServletRequest request;
	
    public String checkPersonalInfo() {
		String new_name;

		if( "male".equals( sex ) == true ){
			new_name = "Mr." + name;
		}else{
			new_name = "Ms." + name;
		}
		
		// 新しい(Mr./Ms.がついた)名前をAttributeで追加
		request.setAttribute( "new_name", new_name );
		
		// HttpSessionの作成
		HttpSession session = request.getSession( true );
		session.setAttribute( "prev_name", name );

        return "success";
    }
    
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public void setServletRequest(HttpServletRequest request) {
		this.request = request;
	}
}

WebContent:

index.jsp

<%@ page language="java" contentType="text/html; charset=windows-31j"
    pageEncoding="windows-31j"%>
<%@ taglib prefix="s" uri="/struts-tags" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-31j">
<title></title>
</head>
<body>

<%
String prev_name;
if( session != null ){
	prev_name = (String)session.getAttribute( "prev_name" );
	if( prev_name != null ){
%>
	<font color="red">
		以前、あなたはアクセスしたことがあります<br>
	</font>
	お久しぶりです <%= prev_name %> さん<br>
<%
	}
}
%>
<br>

名前、性別、年齢を入力してください。<br>
<br>
<s:form action="check"  method="post">
    <s:textfield key="name" label="氏名" /> <br>
	<s:radio list="#{'male':'男性','female':'女性'}" name="sex" label="性別"/><br>
	<s:textfield key="age" label="年齢"/> <br>
    <s:submit value="submit" method="checkPersonalInfo" />
</s:form>
</body>
</html>

result.jsp

<%@ page language="java" contentType="text/html; charset=windows-31j"
    pageEncoding="windows-31j"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-31j">
<title></title>
</head>
<body>
あなたは、 <br>
氏名: <%= request.getParameter( "name" ) %> <br>
<%
	String sex_string;
	if( "male".equals( request.getParameter( "sex" ) ) ){
		sex_string = "男性";
	}else{
		sex_string = "女性";
	}

	int age = Integer.parseInt(request.getParameter( "age" ));
	String drink;
	if( age >= 20 ){
		drink = "あなたはお酒が飲めますね。";
	}else{
		drink = "あなたはお酒を飲んではいけません。";
	}
	
%>
性別: <%= sex_string %> <br>
年齢: <%= request.getParameter( "age" ) %>歳<br>

<br>
こんにちは <%= (String)request.getAttribute( "new_name" ) %> さん<br>

<br>

<%= drink %> <br>

<a href="/Chap09/index.jsp">トップ</a>へ戻る。
</body>

</html>

WebContent\WEB-INF:

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
	<display-name>Chap09</display-name>
	
	<filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
        <init-param>
        	<param-name>actionPackages</param-name>
        	<param-value>
        		chap09
        	</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>

WebContent\WEB-INF\lib:

commons-logging-1.0.4.jar

freemarker-2.3.8.jar

ognl-2.6.11.jar

struts2-core-2.0.11.2.jar

xwork-2.0.5.jar

代码来自日本的技术图书http://www.shuwasystem.co.jp/products/7980html/2197.html

分享到:
评论

相关推荐

    struts 2 源码 导入eclipse工程

    首先,导入Struts 2源码到Eclipse需要遵循以下步骤: 1. 下载Struts 2的源码包,通常可以从Apache官方网站获取最新版本。 2. 打开Eclipse,选择“File” -&gt; “Import”,在弹出的对话框中选择“Existing Projects ...

    struts2库的导入

    本篇文章将详细阐述如何导入Struts2库,以及在项目中设置自定义的User Libraries。 首先,了解Struts2框架的基本构成至关重要。Struts2框架包含一系列的核心组件和插件,如Action、Result、Interceptor等,它们协同...

    使用Struts 2标签的注意事项

    &lt;filter-class&gt;org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter &lt;filter-name&gt;struts2 &lt;url-pattern&gt;/* ``` 这段代码定义了Struts 2的核心Filter,并将其映射到所有的请求上。 其次...

    struts2中导入类库时需要注意的问题

    本文主要针对在导入struts2框架的jar包时可能出现的问题提供解决方案。 首先,你需要从Apache Struts的官方网站(http://struts.apache.org/download.cgi#struts2211)下载struts-2.2.11-all.zip包。这是一个包含了...

    struts-2.3.15.3所以jar包

    2. **struts2-convention-plugin.jar**:此插件支持基于约定优于配置(Convention over Configuration)的开发模式,允许开发者省去大量的XML配置,只需按照一定的命名规则组织类和方法,Struts 2就能自动识别并进行...

    struts2 学习重点笔记

    导入 Struts2 的 jar 包。 2. 创建配置文件 struts.xml。 3. 在 web.xml 中配置 Struts2 的过滤器 FilterDispatcher。 **3.2 数据接收** - **自动填充**:Struts2 自动从 request 中获取数据并填充到 Action ...

    struts2初始使用环境配置

    导入Struts2的核心库。Struts2的jar文件可以从其官方网站或者通过Maven/Gradle依赖管理工具获取。在项目的`WEB-INF/lib`目录下,添加以下核心库: 1. `struts2-core.jar` 2. `struts2-convention-plugin.jar` 3. `...

    struts2实现用户登录注册

    在Eclipse中,我们需要创建一个新的动态Web项目,并导入Struts2的依赖库。此外,还需要创建对应的JSP页面来显示注册和登录表单,以及处理结果。这些页面通常使用Struts2的标签库,如s:form、s:textfield、s:submit等...

    手动添加struts2支持应用jar包

    Struts2是一个流行的Java web应用程序框架,用于构建和维护可扩展、模块化和高度控制的MVC(模型-视图-控制器)架构的应用程序。它继承了Struts1的优秀特性,并结合了WebWork框架的优点,提供了更强大的功能和更好的...

    让Struts2 在NetBeans 6中安家

    #### 步骤二:创建Struts2 Library并导入Struts2开发包 为了能够在项目中使用Struts2框架,我们需要创建一个Library来包含所有的Struts2库文件。具体操作如下: 1. 打开“Tools”菜单,选择“Libraries”。 2. ...

    struts2 使用范例

    在实际开发过程中,我们首先会在MyEclipse环境中创建一个新的项目,然后导入Struts2和Hibernate的依赖库。接着,我们需要配置Struts2的核心文件struts.xml,定义Action类及其对应的URL路径。Action类通常会有一个或...

    struts2学习心得

    例如,`&lt;%@taglib prefix="s" uri="/struts-tags"%&gt;`这一行代码就是用来导入Struts2的标签库,使得后续可以在页面中使用`s:`前缀的标签。 8. **Action的属性注入与调用**:在Struts2中,Action的属性可以通过配置...

    struts2基本运行环境配置方法

    在MyEclipse中配置Struts2环境的第一步是导入Struts2所需的jar包。以下是必须的核心jar包列表: - **commons-logging-1.0.4.jar**:用于日志记录。 - **freemarker-2.3.8.jar**:提供模板引擎功能,用于生成动态...

    struts2+myeclipse 配置入门

    1. **添加Struts2库**: 在项目中,你需要导入Struts2的核心库。这通常包括struts2-core、struts2-convention-plugin、struts2-json-plugin等。这些JAR文件可以通过Maven或直接下载后添加到项目的类路径中。 2. **...

    完美版(适合自学)struts2

    为了在MyEclipse中获得XML文件的代码提示,需要手动导入Struts2的DTD: 1. 打开MyEclipse的首选项设置。 2. 选择"Files and Editors" -&gt; "XML" -&gt; "XML Catalog"。 3. 添加新的DTD条目,指定struts-2.0.dtd文件的...

    struts2+myeclipse 入门例子

    在MyEclipse中,创建一个Struts2项目的第一步是新建一个Dynamic Web Project,并导入Struts2的库。这些库包括struts2-core、struts2-convention、struts2-plugins等,它们包含了Struts2框架运行所需的所有组件。 接...

    Eclipse下搭建Struts2环境.doc

    【标题】:Eclipse下搭建Struts2环境 【描述】:本文档将详细介绍如何在Eclipse集成开发环境中搭建Struts2的开发环境,适合Java初学者和需要更新技能的专业人士。内容包括所需软件的下载地址、安装步骤以及配置过程...

    黑马程序员_struts2框架2016版视频_struts2_day01笔记

    #### 第二步:导入Struts2开发jar包 将**apps/struts2_blank.war/WEB-INF/lib**中的13个核心jar包导入项目中。这些jar包包括但不限于: - asm-* - commons-fileupload - commons-lang3 - commons-logging - ...

    Struts2 与Freemarker 的配置方法

    - 创建一个新的Web工程,并导入Struts2和Freemarker所需的库文件,如struts2-core、xwork、ognl、freemarker和commons-logging等。 - 将struts-tags.tld复制到工程的WEB-INF目录下,这将使Struts2的标签能在JSP或...

    Struts2环境配置与基本操作演示

    1. **添加依赖**:在你的项目中,你需要导入Struts2的核心库和其他必要的依赖。如果你使用的是Maven,可以在pom.xml文件中添加Struts2的依赖项。如果是Eclipse或其他IDE,可以通过添加库或外部JAR文件来完成。 2. *...

Global site tag (gtag.js) - Google Analytics