Struts2使用demo

创建一个web project;

导入Struts2的jar包放到lib目录下:

WEB-INF下面创建login.jsp和welcome.jsp;index.jsp删掉;

说一下<%@ taglib prefix="s" uri="/struts-tags"%>

这句是Struts2标签引入,一定记得写 不然下面的表格就不认了!

login.jsp页面代码:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>登录</title>
</head>
<body>
<s:form action="login" method="post">
<s:label value="系统登录"></s:label>
<s:textfield name="username" label="账号"></s:textfield>
<s:password name="password" label="密码"></s:password>
<s:submit value="登录"></s:submit>
</s:form>
</body>
</html>

welcome.jsp页面代码:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>欢迎</title>
</head>
<body>
欢迎${username}
</body>
</html>

在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>
<package name="default" namespace="/" extends="struts-default">
<action name="login" class="LoginAction" method="execute" >
<result name="success">/WEB-INF/welcome.jsp</result>
<result name="login">/WEB-INF/login.jsp</result>
</action>
</package>
</struts>

在src下编写LoginAction类:

import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport{
private static final long serialVersionUID = 1L;
//该类继承了ActionSupport,就可以直接使用SUCCESS LOGIN等变量和 重写execute方法
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("sxh".equals(username) && "123".equals(password))
return SUCCESS;
return LOGIN;
}
}

编写web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>/WEB-INF/login.jsp</welcome-file>
</welcome-file-list>

<filter>
<!--指定Struts2的核心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>

部署到tomcat启动就可以运行了!!!!!

代码链接:http://pan.baidu.com/s/1bpED1gj

时间: 2024-10-19 10:32:45

Struts2使用demo的相关文章

day8:struts2小demo,实现一个用户登录模块

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:sche

struts2 校验demo

综合练习: <validators> <field name="username"> <field-validator type="requiredstring"> <message>用户名不能为空!</message> </field-validator> </field> <!-- 校验密码 --> <field name="password"

转载:深入了解Struts2返回JSON数据的原理及具体应用范例

早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具体应用了,但苦于一直忙于工作难以抽身, 渐渐的也淡忘了此事.直到前两天有同事在工作中遇到这个问题,来找我询问,我又细细地给他讲了一遍之后,才觉得无论如何要抽一个小时的时间来写这篇文章, 从头到尾将Struts2与JSON的关系说清楚. 其实网络中,关于这个问题的答案已是海量,我当初也是从这海量的答案中吸收精华,才将“Struts2返回JSON数据”这个问题搞清楚的.但 是这些海量的答案,有一个共同

解决 struts2 报&quot;There is no Action mapped for namespace / and action name&quot;的问题

在配置struts2 入门demo时碰到"There is no Action mapped for namespace / and action name"问题,查了一些资料,但没有完全解决问题, 因为造成此问题的原因有很多, 比如这位博主的文章提到的https://www.cnblogs.com/GeekRegister/articles/4949441.html 我再补充几点调试过程中发现的坑: "There is no Action mapped for namesp

Struct2-使用随笔

提要:最近写了一个2-3各页面的使用Struts2的Demo,在这里做下总结,都已经3年多没做J2EE了,有些感觉都快找不到了. 目录 1.必备开发工具 2.必备jar包 3.了解知识点 4.遇到的问题 一.必备开发工具 1.MyEclipse 2.Tomcat 3.JDK 4.MySQL 二.必备jar包 1.commons-collections-3.2.jar 2.commons-dbcp-1.2.2.jar 3.commons-io-1.4.jar 4.commons-lang-2.3.

Struts加入拦截器后取不到页面参数

在Struts2的demo项目中添加了一个简单的拦截器,突然发现,Action中取不到页面的参数了 这也是很蛋疼的事情,还好这个比较简单,稍微一查就发现问题: Struts2中很多的功能是用拦截器实现的,比如:取得表单参数,文件上传,异常处理等 Struts2会默认调用默认的拦截器,默认拦截器配置在struts-default.xml中可以查看 如果在配置文件中加入了自定义的拦截器,那默认的拦截器就不会起作用,在Action中就不能取得表单的参数 这个时候,就需要显试的调用默认的拦截器(defa

Structs2中Action返回json到前台方法

1.传统方式JSON输出 这一点跟传统的Servlet的处理方式基本上一模一样,代码如下 01 public void doAction() throws IOException{ 02         HttpServletResponse response=ServletActionContext.getResponse(); 03         //以下代码从JSON.java中拷过来的 04         response.setContentType("text/html"

提高生产性工具 - 各种工具的集成(三)

这周学习了一下Struts2的一些知识,按照网络上各种博文的指点,跌跌撞撞,捣鼓出了一个Struts2的Demo了. 原来一直是学习NET的,一下子开始玩Java的东西,还需要一点时间来适应Eclapse. Struts的Jar包导入都是依靠Maven进行的,据说Maven可以直接生成Struts的工程,尝试了一下,公司网络不给力,没有成功. Struts的Helloworld环境配置,网络上有很多文章了,这里也不多唠叨了.有一点请注意, 如果你使用Maven的话,在百度上检索 Maven St

使用commons-fileupload-1.3.1.jar工具包的图片上传

commons-fileupload-1.3.1.jar工具包的依赖包是commons-io-2.2.jar(FileUploaddepends on Commons IO, so make sure you have the version mentioned on thedependenciespage in your classpath before continuing.) commons-fileupload-1.3.1.jar 在官网的wiki中解释是:Commons-FileUpl