Struts2 第一个实例学习
2009-07-23 14:02
239 查看
第一次接触Java的框架学习,在老大的指导下从struts2开始学习。
首先开发环境:JDK1.6+Myeclipse 6.6+tomcat6.0
下载struts2开发的jar包,地址链接:http://struts.apache.org/downloads.html 这里用的版本2.1.6
在下载的包的lib目录下
选择:commons-logging-1.0.4.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar
freemarker-2.3.13.jar
ognl-2.6.11.jar
把这些jar包放到新建的web工程的WEB-INF的lib下。
1、先建工程(Struts2Demo)
2、配置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">
<!--struts2-->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</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>
注意filter的配置细节,主要是拦截器来捕获struts2的响应请求。
3、这里的例子是一个简单的功能实现(输入两个整数,结果大于等于59则跳转到positive.jsp,否则跳转到negative.jsp)
先定义Action响应类FirstCase
package pactise;
//导入struts2所要继承的类
import com.opensymphony.xwork2.ActionSupport;
//此处定义的类必须继承ActionSupport
public class FirstCase extends ActionSupport{
private int parm1;
private int parm2;
private int Sum3;
//处理的具体方法
public String sum()
{
Sum3 =parm1+parm2;
if (Sum3>=59)
{
return "positive";
}
else
{
return "negative";
}
}
public int getresult()
{
return parm1+parm2;
}
/**
* @return the parm1
*/
public int getParm1() {
return parm1;
}
/**
* @param parm1 the parm1 to set
*/
public void setParm1(int parm1) {
this.parm1 = parm1;
}
/**
* @return the parm2
*/
public int getParm2() {
return parm2;
}
/**
* @param parm2 the parm2 to set
*/
public void setParm2(int parm2) {
this.parm2 = parm2;
}
/**
* @return the sum3
*/
public int getSum3() {
return Sum3;
}
/**
* @param sum3 the sum3 to set
*/
public void setSum3(int sum3) {
Sum3 = sum3;
}
}
4.在WEB-INF/classes下写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="pactise" extends="struts-default" namespace="/Struts2Demo">
<action name="sum" class="pactise.FirstCase" method="sum">
<result name="positive" type="dispatcher">/positive.jsp</result>
<result name="negative" type="dispatcher">/negative.jsp</result>
</action>
</package>
</struts>
此处的说明:这里定义了一个action(sum),响应的方法是FirstCase类中的sum()方法,如果该方法返回值是positive则跳转到positive.jsp,返回值是negative则跳转到negative.jsp页面
5、在WebRoot下新建输入页面sum.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!--标记使用struts2的标签-->
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>第一个struts2例子</title>
</head>
<body>
<!-- 利用表单提交方式来提交给action来处理-->
<s:form action="/Struts2Demo/sum" method="post">
<s:textfield name="parm1" label="操作数1"/><br>
<s:textfield name="parm2" label="操作数2"/><br>
<s:submit value="结果"/>
</s:form>
</body>
</html>
positive.jsp的具体作用是显示大于等于59的结果
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>结果1</title>
</head>
<body>
如果结果大于等于59则显示结果:<h1><s:property value="Sum3"/></h1>
</body>
</html>
negative.jsp是显示小于59的结果
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page import="com.opensymphony.xwork2.ognl.OgnlValueStack" %>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>结果2</title>
</head>
<body><br>
<%
com.opensymphony.xwork2.ognl.OgnlValueStack ovs =
(com.opensymphony.xwork2.ognl.OgnlValueStack)request.getAttribute("struts.valueStack");
out.println(ovs.findString("Sum3"));
%>
</body>
</html>
主要这里用的方法与positive.jsp的方法不一样,也可以用前面的方法。
启动tomcat后,在浏览器栏中输入:http://localhost:8080/Struts2Demo/sum.jsp即可进行测试,这个例子只是简单说明struts2的处理过程,输入没有加验证要求,因此此处学习属于入门学习的教程。
首先开发环境:JDK1.6+Myeclipse 6.6+tomcat6.0
下载struts2开发的jar包,地址链接:http://struts.apache.org/downloads.html 这里用的版本2.1.6
在下载的包的lib目录下
选择:commons-logging-1.0.4.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar
freemarker-2.3.13.jar
ognl-2.6.11.jar
把这些jar包放到新建的web工程的WEB-INF的lib下。
1、先建工程(Struts2Demo)
2、配置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">
<!--struts2-->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</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>
注意filter的配置细节,主要是拦截器来捕获struts2的响应请求。
3、这里的例子是一个简单的功能实现(输入两个整数,结果大于等于59则跳转到positive.jsp,否则跳转到negative.jsp)
先定义Action响应类FirstCase
package pactise;
//导入struts2所要继承的类
import com.opensymphony.xwork2.ActionSupport;
//此处定义的类必须继承ActionSupport
public class FirstCase extends ActionSupport{
private int parm1;
private int parm2;
private int Sum3;
//处理的具体方法
public String sum()
{
Sum3 =parm1+parm2;
if (Sum3>=59)
{
return "positive";
}
else
{
return "negative";
}
}
public int getresult()
{
return parm1+parm2;
}
/**
* @return the parm1
*/
public int getParm1() {
return parm1;
}
/**
* @param parm1 the parm1 to set
*/
public void setParm1(int parm1) {
this.parm1 = parm1;
}
/**
* @return the parm2
*/
public int getParm2() {
return parm2;
}
/**
* @param parm2 the parm2 to set
*/
public void setParm2(int parm2) {
this.parm2 = parm2;
}
/**
* @return the sum3
*/
public int getSum3() {
return Sum3;
}
/**
* @param sum3 the sum3 to set
*/
public void setSum3(int sum3) {
Sum3 = sum3;
}
}
4.在WEB-INF/classes下写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="pactise" extends="struts-default" namespace="/Struts2Demo">
<action name="sum" class="pactise.FirstCase" method="sum">
<result name="positive" type="dispatcher">/positive.jsp</result>
<result name="negative" type="dispatcher">/negative.jsp</result>
</action>
</package>
</struts>
此处的说明:这里定义了一个action(sum),响应的方法是FirstCase类中的sum()方法,如果该方法返回值是positive则跳转到positive.jsp,返回值是negative则跳转到negative.jsp页面
5、在WebRoot下新建输入页面sum.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!--标记使用struts2的标签-->
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>第一个struts2例子</title>
</head>
<body>
<!-- 利用表单提交方式来提交给action来处理-->
<s:form action="/Struts2Demo/sum" method="post">
<s:textfield name="parm1" label="操作数1"/><br>
<s:textfield name="parm2" label="操作数2"/><br>
<s:submit value="结果"/>
</s:form>
</body>
</html>
positive.jsp的具体作用是显示大于等于59的结果
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>结果1</title>
</head>
<body>
如果结果大于等于59则显示结果:<h1><s:property value="Sum3"/></h1>
</body>
</html>
negative.jsp是显示小于59的结果
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page import="com.opensymphony.xwork2.ognl.OgnlValueStack" %>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>结果2</title>
</head>
<body><br>
<%
com.opensymphony.xwork2.ognl.OgnlValueStack ovs =
(com.opensymphony.xwork2.ognl.OgnlValueStack)request.getAttribute("struts.valueStack");
out.println(ovs.findString("Sum3"));
%>
</body>
</html>
主要这里用的方法与positive.jsp的方法不一样,也可以用前面的方法。
启动tomcat后,在浏览器栏中输入:http://localhost:8080/Struts2Demo/sum.jsp即可进行测试,这个例子只是简单说明struts2的处理过程,输入没有加验证要求,因此此处学习属于入门学习的教程。
相关文章推荐
- 学习struts2的第一个小实例
- Struts2学习——(二)开发实例-我的第一个Struts2工程
- 第一个Struts2的实例:
- Struts2学习(一)——第一个项目
- [置顶] 【Struts2学习】 (2) Struts2开发HelloWorld实例
- SSH学习之Struts2的第一个Action
- [Spring]初识之第一个Spring小实例【学习笔记】
- 通过实例学习Struts2 - 从struts-blank开始 (2)
- 新手学习javaScript的第一个实例
- JqGrid与struts2第一个实例
- Android JNI学习之第一个入门实例
- Strust2第(二)篇《开发第一个struts2的实例》
- ios开发入门级实例(一步步的很详细,我就是这样学习的第一个案例)
- [原创]java WEB学习笔记54:Struts2学习之路--- 编写Struts2 的第一个程序,HelloWord,简述 package ,action,result
- 传智播客struts2学习笔记(一) struts2的初步认识及第一个struts应用
- struts2学习笔记之一、eclipse搭建自己的第一个web工程
- java struts2入门学习实例--使用struts2快速实现多个文件上传
- Struts1学习笔记_1(第一个应用实例)
- Android JNI学习之第一个入门实例(确实花了不少功夫,也遇到了很多阻碍,不过还好,最终解决,记录下)
- 【06】框架学习—Struts2第一个入门案例详解