Struts2.3.24框架入门之一环境配置及入门实例HelloWorld
来源:互联网 发布:mac sire有问题 编辑:程序博客网 时间:2024/05/14 09:55
Struts框架简单实例——HelloWorld
step1:环境搭建
到Struts官网下载最新版本:http://struts.apache.org/download.cgi
导入必备jar包:
序号
名称
描述
1
commons-fileupload-1.2.2.jar
文件上传组件
2
commons-io-2.0.1.jar
io包
3
commons-lang3-3.1.jar
基础工具包,封装一些常用的基础操作
4
commons-loggin-1.1.1.jar
日志组件
5
freemarker-2.3.19.jar
一个基于模板生成文本输出的通用工具
6
ognl-3.0.6.jar
对象图导航语言(jar包库)
7
strut2-core-2.3.12.jar
Struts2核心jar包
8
xwork-core-2.3.12.jar
xwork核心包
9
javassist-3.15.0-GA.jar
扩展java类和实现
这里用的是MyEclipse10.6 for Spring,导入struts2.3jar包(项目右键--properties-Java Build Path-Add External Jars或者复制到lib目录下)
step2:配置文件
1.web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" 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_3_0.xsd"> <display-name></display-name> <!-- 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> <welcome-file-list> <welcome-file>/index.jsp</welcome-file> </welcome-file-list></web-app>
2.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><!-- 指定由spring负责action对象的创建 --><!-- <constant name="struts.objectFactory" value="spring" /> --><!-- 所有匹配的请求都由struts2处理 --><constant name="struts.action.extension" value="action" /><!-- 是否启用开发模式 --><constant name="struts.devMode" value="false" /><!-- struts配置文件改动后,是否重新加载 --><constant name="struts.configuration.xml.reload" value="true" /><!-- 设置浏览器是否缓存静态内容 --><constant name="struts.serve.static.browserCache" value="false" /><!-- 请求参数的编码方式 --><constant name="struts.i18n.encoding" value="utf-8" /><!-- 每次HTTP请求系统都重新加载资源文件,有助于开发 --><constant name="struts.i18n.reload" value="true" /><!-- 让struts2支持动态方法调用 --><constant name="struts.enable.DynamicMethodInvocation" value="true" /><!-- Action名称中是否还是用斜线 --><constant name="struts.enable.SlashesInActionNames" value="false" /><!-- 允许标签中使用表达式语法 --><constant name="struts.tag.altSyntax" value="true" /><!-- 对于WebLogic,Orion,OC4J此属性应该设置成true --><constant name="struts.dispatcher.parametersWorkaround" value="false" /><!-- 把主题改为simple --><constant name="struts.ui.theme" value="simple"></constant><package name="basePackage" extends="struts-default"> <action name="login_*" class="cn.order.action.LoginAction" method="{1}"><result name="list">/WEB-INF/jsp/loginAction/login.jsp</result></action> </package></struts>
需要注意的:这个文件里,配置的过滤器的类是:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。和原来配置的类不一样。原来配置的类是:org.apache.struts2.dispatcher.FilterDispatcher。这是因为,从struts-2.1.3以后,org.apache.struts2.dispatcher.FilterDispatcher值被标注为过时。虽然仍然起作用,但是不建议使用。
step3:编码
1.User.java
package cn.order.model;public class User {private String userName;private String userId;public String getUserName() {return userName;}public void setUserName(String userName) {this.userName = userName;}public String getUserId() {return userId;}public void setUserId(String userId) {this.userId = userId;}}
2.LoginAction.java
package cn.order.action;import cn.order.model.User;import com.opensymphony.xwork2.ModelDriven;public class LoginAction implements ModelDriven<User>{User model=new User();@Overridepublic User getModel() {return model;}public String list(){return "list";}}
3.login.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>登录</title></head><body>login</body></html>
4.index.jsp
<%@ page language="java" pageEncoding="utf-8"%><%@ taglib uri="/struts-tags" prefix="s"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>helloWorld</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"> </head> <body> <s:form name="frmLoign" action="login_list" method="post" > <s:label value="系统登陆"></s:label> <br> <s:textfield name="userName" label="用户名"></s:textfield> <br> <s:password name="password" label="密码"></s:password> <br> <s:submit value="提交"></s:submit> </s:form> </body></html>
Step4:流程运行及总结
启动tomcat,在网页地址栏里输入:http://localhost:8080/项目的名称,打开登录页面。如下所示:
提交后就可以到login.jsp页面。
0 0
- Struts2.3.24框架入门之一环境配置及入门实例HelloWorld
- struts2 helloworld入门实例
- Struts2入门实例-Helloworld
- Struts2 HelloWorld 入门实例 Eclipse
- struts2入门,HelloWorld环境搭建。
- Hibernate4.x框架之一简介及入门实例
- SpringMVC入门及HelloWorld工程实例
- Struts2入门配置小实例
- React入门之HelloWorld及环境搭建
- Maven入门--环境配置和HelloWorld
- struts2入门helloworld
- struts2入门helloworld
- struts2入门--helloworld
- Struts2入门(HelloWorld案例)
- Struts2入门之HelloWorld
- java入门实例HelloWorld
- java入门实例HelloWorld
- OSGI入门helloworld实例
- Scala入门到精通——第四节 Set、Map、Tuple、队列操作实战
- BZOJ 2789 Letters题解&代码
- spring4 -- JdbcTemplate数据库操作
- [leetcode-234]Palindrome Linked List (C)
- MYSQL安装后修改密码
- Struts2.3.24框架入门之一环境配置及入门实例HelloWorld
- 手动建立makefile简单实例解析
- 在Hibernate中,使用二级缓存机制要注意什么?
- spring4 -- 基于jdbcTemplate的分页
- 2012年5月SAT香港真题解析
- 响应UI可见性的变化
- 1、Python MySQLdb默认关闭autocommit带来的坑 2、mysql事务处理
- GRE写作必备句型
- Num 1: 北大OJ: 2703:骑车与走路