学习SSH三大框架(一)之struts2起步

第一步先要学会怎么创建struts的WEB Project

我使用的是Myeclipse10的版本(话说现在myeclipse已经出到2015版本了)

先打开Myeclipse,点击File——New——Other…如下图


输入web选择web project(如下图)


输入项目名 Finish(如下图)


这样我们就创建了一个空的web项目

然后我们就要把struts2整合到这个项目里面。

步骤如下:

鼠标项目右键——Myeclipse——Add Struts Capabilities(如下图)


选择Struts2.1 url选择/* 点Finish(如下图)


这样我们就把Struts2整合到了这个web里面

工程变成如图:


其中在web.xml里面的就是配置刚刚选择的拦击url的,可以是/* 、*.action 、*.do,分别是拦截全部请求、.action请求

<filter-mapping>
<filter-name>struts2</filter-name>
<!-- <url-pattern>*.action</url-pattern> -->
<!-- <url-pattern>*.do</url-pattern> -->
<url-pattern>/*</url-pattern>
</filter-mapping>

许多东西也都是在这里面配置的例如spring的监听。

创建一个java来测试我们的struts


这个要继承ActionSupport

代码如下

import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class TestAction extends ActionSupport {
	private String str;//用于获取页面提交的字符串,与页面提交from表单的name相同

	public String getStr() {//对应的get方法
		return str;
	}

	public void setStr(String str) {
		this.str = str;
	}
	@Override
	public String execute() throws Exception{//<span style="color: rgb(51, 51, 51); font-family: arial; font-size: 13px; line-height: 20px;">重写excute方法,默认调用这个。
	return SUCCESS;
	}
}


在struts里配置:

package name可以随便起,但是要唯一,不能与其他重复

extends:继承的父package名称()这里默认写struts-default

namespace:定义package命名空间 该命名空间影响到url的地址,如果/test访问是的地址为http://x.x.x.x:8080/mystruts/test/XX.action

action要与jsp页面提交表单的name相对应,如页面提交的是abc.action这里对应的就是abc

class:对应的类的路径

method:不写默认调用类中的execute()方法

result name="success"当处理返回success跳转到show.jsp

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
	<package name="test1" extends="struts-default">
		<action name="show" class="com.mystruts.action.TestAction">
			<result name="success">/show.jsp</result>
		</action>
	</package>
</struts>    


index.jsp

这里调用了struts的标签库

<%@ page contentType="text/html; charset=UTF-8" 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>My JSP 'index.jsp' starting page</title>
  </head>
  
  <body>
    <s:form action="show.action">
    	<s:textfield name="str" label="输入内容:"/>
    	<s:submit value="提交" />
    </s:form>
  </body>
</html>

新建一个jsp显示结果

show.jsp

<%@ page contentType="text/html; charset=UTF-8" 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>My JSP 'show.jsp' starting page</title>
  </head>
  
  <body>
    ${str}
  </body>
</html>

部署以后测试结果:



简单的讲一下:

前面用户输入的数据通过表单提交show.action,服务器根据配置拦截了action,根据struts.xml的配置把对应的名字的请求调用对应的类来处理

上面就是把名字为show的action用TestAction处理,根据处理返回seuccess来跳转页面到show.jsp

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值