Struts2学习笔记一 ---- 搭建环境

一、工具原料:

1.MyEclipse: version 8.5

2.Struts2开发工具包:version  2.3.20

3.Servelet容器:Tomcat , version 6.0

二、搭建过程

1.在MyEclipse中添加对Tomcat的支持,这个很简单,自己百度能解决;

2.新建Web Project,点击刚刚创建的Web Project,在菜单栏中选Project->Properties->Java Build Path->Add External Jars,加入如下的jar文件,我从网上找了些资料,发现一般都没有用最新版本配置环境的,配置Jars文件仅供参考,另外如果出现问题,那么在命令行中也会提示出少了哪个class文件,名字都会给出,这一步不需要太担心。



                             

3.在项目的WebRoot目录下找到WEB-INF文件夹,找到web.xml文件,这个文件应该是用来配置过滤器的(新手,还不知道该怎么理解),打开文件,里面的代码可以写为如下:(同时又一种偷懒的也是一种简便的办法是从下载到的Struts2的包里解压出里面自带的例子,从其中分离出web.xml文件,只需要简单的修改,或者根本就不需要修改就直接能用在自己的项目中)

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">


    <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>
4.在项目的源码包中的如下位置创建struts.xml文件,(具体代码的书写可以和步骤3中的一样直接拷贝,然后简单修改之后加入自己的配置文件中),这个文件应该就是struts2的核心文件了,看了几页书的拙见,这个文件应该就是管理流程控制和一些自定义的拦截器什么的,深入的功能后续继续研究。附一个目前自己编写例子中的struts.xml文件(其中xml头中的用来校验的网址中的struts版本的信息应该是和自己所配置的版本有关系)。

<?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="default" namespace="/" extends="struts-default">
		<action name="login" class="cn.lml.LoginAction" method="execute">
			<result name="success">/welcome.jsp</result>
			<result name="login">/login.jsp</result>
		</action>
	</package>
	
	<package name="HelloWorld" namespace="/HelloWorld" extends="struts-default">
		<action name = "Name">
			<result>/login.jsp</result>
		</action>
	</package>
	
	<package name="Chapter2" namespace="/Chapter2" extends="struts-default">
		<action name = "Name-Collector">
			<result>/Chapter2/Name-Colletor.jsp</result>
		</action>
		<action name = "HelloWorld" class = "cn.lml.HelloWorld">
			<result name = "SUCCESS">/Chapter2/HelloWorld.jsp</result>
		</action>
		<action name="AgePart" class = "cn.lml.AgePart">
			<interceptor-ref name="timer"/>
			<interceptor-ref name="logger"/>
			<result name = "below18">/Chapter2/Below18.jsp</result>
			<result name = "upto18">/Chapter2/Upto18.jsp</result>
		</action>
		<action name="NameAndPassword" class = "cn.lml.NameAndPassword">
			<result name = "SUCCESS">/Chapter2/UserInfo.jsp</result>
		</action>
		
</package>

</struts>


三、测试是否搭建完整或正确

1.在struts.xml中两个struts标签中加入如下的代码:
	<package name="HelloWorld" namespace="/" extends="struts-default">
		<action name = "Name">
			<result>/login.jsp</result>
		</action>
	</package>
2.在WebRoot中创建login.jsp文件,加入如下代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>Login</title>

  </head>
  
  <body>
   
   <s:form action="/login" method="post">
    <s:label value="系统登陆"></s:label>
    <s:textfield name="username" label="账号" />
    <s:password name="password" label="密码" />
    <s:submit value="登录" />
   </s:form>
  
  </body>
</html>
3.代码目录中创建cn.lml目录,并在其中创建LoginAction.java文件,填入如下代码:
package cn.lml;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport
{
	private static final long serialVersionUID = 1L;
	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;
	}

	@Override
	public String execute() throws Exception
	{
		if ("user".equals(username) && "pwd".equals(password))// 如果登录的用户名=haha并且密码=hehe,就返回SUCCESS;否则,返回LOGIN
			return SUCCESS;
		return LOGIN;
	}
}
3.创建登陆成功的welcome.jsp页面,如果登陆不成功,按照struts.xml的配置将返回login.jsp页面。welcome.jsp页面代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>欢迎e</title>

  </head>
  
  <body>
   欢迎${username }!
  </body>
</html>
4.完毕之后部署运行,在浏览器中输入http://localhost:8080/Asc/login.jsp,


进行登陆测试。输入user 密码 pwd



四、参考资料

1.正文中的代码来源于http://www.cnblogs.com/wchhuangya/archive/2011/03/21/1968877.html的博文,我也是参照了这位大神的博客才搭建出了环境。
2.部分对struts的理解来自于Struts2实战这本书,由于还是初学者,对许多事情的理解还是皮毛,欢迎一同学习的自学者一起分享经验。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值