struts2入门示例
来源:互联网 发布:登录到wlan网络 编辑:程序博客网 时间:2024/06/04 18:51
官网下载Struts2的jar包地址:Struts2官网Jar下载,这里用的是struts-2.3.14-all.zip这个包里面的jar。
1、新建一个web项目
2、导入struts2的几个基本jar包。下载并解压好struts2后,在apps样例项目文件夹里有个struts2-blank项目代码,这个项目web_inf里的那些jar包就是struts2的基本jar包。复制粘贴到刚才新建的项目下的WEB_INF/lib文件夹下。
3、配置web.xml文件
<?xmlversion="1.0"encoding="UTF-8"?>
<web-appxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"id="WebApp_ID"version="3.0">
<display-name>Struts2Demo</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 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>
从Struts 2.1.3起filter-class改用StrutsPrepareAndExecuteFilter。以前的版本用org.apache.struts2.dispatcher.FilterDispatcher。
4、配置struts.xml文件
需要先创建struts.xml文件,配置strust2要调用的action。直接新建在src目录下,那样部署的时候会自动发布到WEB-INF/classes目录下,或者直接创建在WEB-INF/classes目录下面。
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPE strutsPUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<packagename="struts2"extends="struts-default">
<actionname="Index">
<result>/index.jsp</result>
</action>
<actionname="login"class="tutorial.Welcome">
<resultname="success">/Welcome.jsp</result>
<resultname="error">/error.jsp</result>
</action>
</package>
</struts>
其中,package元素,作用类似于Java包的机制,他是用于分门别类的一个工具,extends属性如他的名字一样,它继承了struts-default这个包的所有信息,一般我们自己创建一个包最好都继承它,因为他为我们提供了绝大部分的功能,你可以在struts2-core的jar包中的struts-default.xml文件中找到这个包。action元素对应于你的表单,例如你的表单的action="login",那么该表单提交成功后就会将参数交予action的name="success"的实现类处理。实现类的属性值会传递到对应的jsp页面以供展示。
这里新建了三个页面,index.jsp登陆界面,Welcome.jsp登陆成功页面,error.jsp登陆失败页面。
5、写action的实现类
package tutorial;
public class Welcome {
private Stringusername;
private Stringpassword;
public String getUsername() {
returnusername;
}
public void setUsername(String username) {
this.username =username;
}
public String getPassword() {
returnpassword;
}
public void setPassword(String password) {
this.password =password;
}
public String execute() {
if(username.equals("root")&&password.equals("root")){
return"success";
}else{
return"error";
}
}
}
6、写页面
index.jsp
<%@ pagelanguage="java"contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglibprefix="s"uri="/struts-tags"%>
<!DOCTYPE htmlPUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html; charset=UTF-8">
<title>Login</title>
</head>
<body>
<h1>Struts 2 login Example</h1>
<formaction="login.action"method="post">
<table>
<tr>
<td>用户名:</td>
<td><inputtype="text"name="username"/></td>
</tr>
<tr>
<td>密码:</td>
<td><inputtype="password"name="password"/></td>
</tr>
<tr>
<tdcolspan="2"align="center">
<inputtype="submit"value="登录"/>
</td>
</tr>
</table>
</form>
</body>
</html>
Welcome.jsp<%@ pagelanguage="java"contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglibprefix="s"uri="/struts-tags"%>
<!DOCTYPE htmlPUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html; charset=UTF-8">
<title>Welcome</title>
</head>
<body>
<h2>Welcome,<s:propertyvalue="username"/>!</h2>
</body>
</html>
error.jsp<%@ pagelanguage="java"contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglibprefix="s"uri="/struts-tags"%>
<!DOCTYPE htmlPUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html; charset=UTF-8">
<title>Error</title>
</head>
<body>
<h3>用户名:<s:propertyvalue="username"></s:property>和密码:<s:propertyvalue="password"></s:property>不正确!</h3>
<h3>请输入正确的用户名和密码!</h3>
<formaction="Index.action">
<inputtype="submit"value="返回登录"/>
</form>
</body>
</html>
7、项目部署把项目部署到tomcat上启动,在浏览器输入http://localhost:8080/Struts2Demo/Index即可。
项目整体结构图
- Struts2入门示例教程
- Struts2入门示例教程
- Struts2入门示例教程
- Struts2入门示例教程
- Struts2入门示例教程
- Struts2入门示例教程
- Struts2入门示例教程
- Struts2入门示例
- Struts2入门示例教程
- Struts2入门简单示例
- struts2框架入门示例
- Struts2入门示例教程
- struts2简单入门示例
- struts2简单入门示例
- struts2入门示例
- Struts2入门示例教程
- struts2简单入门示例
- Struts2入门示例教程
- PVRFrameEnableControlWindow函数--cocos
- 使用消息队列的 10 个理由
- linux常用命令
- Java同步工具类总结
- 学生信息管理系统(三)
- struts2入门示例
- 一个Activity的显示过程总结(一)
- eclipse中文乱码怎么办
- 控制html元素中空格:white-space属性详解
- JDBC系列-<驱动加载原理全面解析>-<JDBC层次结构和基本构成>-存储过程 CallableStatement(创建和使用)
- SOAP-ERROR: Parsing WSDL: Couldn't load from 'https:
- linux设备驱动--等待队列实现
- SikuliX和Mobizen的andriod功能自动化测试
- Android应用的闪退(crash)分析