文档章节

struts2.x HelloWorld项目

仗剑闯荡
 仗剑闯荡
发布于 2015/12/15 11:23
字数 596
阅读 6
收藏 0

开发环境:eclipse-jee-indigo-SR2-win32 

                 apache-tomcat-6.0.44

                 jdk1.7.0_07

配置环境变量:

                JAVA_HOME:  C:\Program Files\Java\jdk1.7.0_07  (解释:将jdk 的根目录配置到 JAVA_HOME 中)

                path:  在path 中添加 C:\Program Files\Java\jdk1.7.0_07\bin   (解释:将 jdk 下面的 bin 目录配置到 path 中)

                CLASSPATH: .;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar;D:\apache-tomcat-6.0.44\lib\jsp-api.jar;D:\apache-tomcat-6.0.44\lib\servlet-api.jar  (解释:将jdk 的 lib 目录下面的 tools.jar 和 dt.jar 以及 tomcat 的 lib 目录下面的 jsp-api.jar 和 servlet-api.jar 配置到CLASSPATH 中)

正文:1.在eclipse-jee-indigo-SR2-win32 中配置 apache-tomcat-6.0.44。

点击后,如下图:

点击后,如下图:

点击 add... 后,如下图:

点击后,如下图:

以上是步骤截图,下面是代码:

LoginAction.java

package com.wang.action;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
/*
 * 这里定义了Struts2 的Action,但这个Action 还没有配置在Web应用中,还不能处理用户
 * 请求。为了让这个Action 能处理用户请求,还需要将这个Action 配置在struts.xml文件中。
 */
public class LoginAction extends ActionSupport {
	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;
	}
	public void validate() {
		if ( (getUsername().trim().equals("")) || (getUsername() == null)) {
			addFieldError("username", "user.required");
		}
		if ( (getPassword().trim().equals("")) || (getPassword() == null)) {
			addFieldError("password", "pass.required");
		}
	}
		public String execute() throws Exception {
		if (getUsername().equals("wts") && getPassword().equals("111") ) {
			ActionContext.getContext().getSession().put("user", username);
			return SUCCESS;
		}else {
			return ERROR;
		}
	}
}

struts.xml 文件代码:

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

<struts>
	<package name="strutsAction" extends="struts-default">
	
		<action name="login" class="com.wang.action.LoginAction">
			<result name="input">/WEB-INF/content/loginForm.jsp</result>
			<result name="success">/WEB-INF/content/success.jsp</result>
			<result name="error">/WEB-INF/content/error.jsp</result>
		</action>	
		
	</package>
</struts>

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>struts2_2</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <filter>
  	<filter-name>struts2</filter-name>
  	<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

loginForm.jsp 页面代码:

 <%@page contentType="text/html; charset=GBK" language="java" errorPage="" %>
 <%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=GBK" />
    <title>重新输入页面</title>
  </head>
   <body>
   		<s:form action="login">
   			<s:textfield name="username" label="用户名" />
   			<s:textfield name="password" label="密码" />
   			<s:submit value="登录" />
   		</s:form>
   </body>
</html>

然后自己再新建两个页面,一个success.jsp 和 error.jsp 。

到此,一个Struts2.x 的HelloWorld 级别的项目就完成了。

© 著作权归作者所有

仗剑闯荡
粉丝 0
博文 2
码字总数 639
作品 0
武汉
私信 提问
struts2中改变struts.xml默认路径 或可能遇到的问题

struts2.X配置文件默认存放路径在/WEB-INF/classes目录下,即将struts.xml放在src的目录下。 但是为了方便管理,开发人员把struts.xml放到其他位置,处理方法如下。 首先要明白struts2加载配...

一时想不清晰
2012/11/09
3.1K
3
Django创建项目

安装Django pip install Django Django 创建第一个项目 Django 管理工具 安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin.py。我们可以使用 django-admin.py 来创建一个项...

运维小学生
2017/04/19
0
0
maven(二)HelloWorld

一.maven 文件大致解释 bin目录:包含maven的运行脚本 boot目录:类加载器的框架,maven用此加载自己需要的类库 conf目录:配置文件目录,里面有以后经常用到的settings.xml配置文件 lib目录:包...

路人丁语
2016/03/14
27
0
struts2的核心和工作原理

设计目标 Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。 技术优势 Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server H...

白志华
2015/09/28
111
0
疯狂ios讲义之创建cocos2d项目(2)

cocos2d项目如何支持ARC iOS 5中所支持的全新特性ARC(Automatic Reference Counting)首次在iOS系统中提供了自动内存管理,从而避免因为对retain、release、autorelease这些命令的错误调用而...

博文视点
2014/04/10
959
1

没有更多内容

加载失败,请刷新页面

加载更多

协议栈

一、关键技术点分析 不同服务在性能上适用不同协议进行传输,如对接异构第三方服务时,通常选择HTTP/Restful等公有协议;而对于内部不同模块之间的服务调用,一般选择性能较高的二进制私有协...

edwardGe
20分钟前
3
0
新建时隐藏按钮,显示明细时显示

在InitControl()中 if (saTableKeys != null) { rpgDesign.Visible = true; rpgPrint.Visible = true; }......

_Somuns
55分钟前
7
0
【实战演练,拒绝996】-SpringBoot2.x自定义Spring boot Starter

欢迎关注 提升能力,涨薪可待 面试知识,工作可待 实战演练,拒绝996 如果此文对你有帮助、喜欢的话,那就点个赞呗! 前言 是不是感觉在工作上难于晋升了呢? 是不是感觉找工作面试是那么难呢...

ccww_
56分钟前
11
0
SpringBoot从入门到放弃,原理篇-自动配置原理

SpringBoot从入门到放弃,原理篇-自动配置原理 springboot自动配置原理 配置文件能配置的属性参照 自动配置原理 1、springboot启动的时候加载主配置类,开启了自动配置功能@EnableAutoConfig...

有一个小阿飞
今天
13
0
php变量和数据类型

php中的变量 PHP中的变量声明 PHP中的变量的使用 PHP中的数据类型之整型 PHP数据类型之浮点类型和布尔类型 PHP数据类型之字符串类型 PHP数据类型之heredoc和nowdoc的使用 PHP数据类型之复合类...

达达前端小酒馆
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部