您的位置:首页 > 编程语言 > Java开发

在Eclipse中搭建Struts框架过程详解

2015-12-11 10:29 531 查看
虽然用MyEclipse搭建Struts框架是更为便捷的方式,但是用Eclipse可以增强自己对Struts的理解。本文演示了使用Eclipse搭建Struts 1.2框架的过程。此项目实现了简单的功能:用户从hello.jsp登录,输入自己姓名,然后服务器返回一个Hello, XXX的jsp文件。

1、新建项目

在Eclipse中新建一个Dynamic Web Project,取名为TestStruts。



2、导入Struts所需的Jar包

Jar包下载地址:http://jc-dreaming.iteye.com/blog/914328,亲测有效。解压文件,将其中的Jar包拷贝到项目目录下WebContent/WEB-INF/lib文件夹中。在Eclipse中右键项目名称,选择Bulid Path-Configure Bulid Path,在Libraries标签中选择Add External Jars,选中之前拷贝到lib中的Jar包,点击Apply-OK



3、配置web.xml

最简配置代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>


这个Servlet是Struts的入口,任何以*.do结尾的请求都会被映射到Struts的Servlet上,该Servlet会根据struts-config.xml的配置,将请求分配到指定的Action上。

4、创建Action和Form文件

在src文件夹下新建action和form包,在其中分别新建HelloAction.java和HelloForm.java



HelloAction.java代码如下:

package com.mc.struts.action;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import com.mc.struts.form.HelloForm;

public class HelloAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {
HelloForm helloForm = (HelloForm)form;
if(helloForm.getName() == null || helloForm.getName().trim().length() == 0) {
return mapping.getInputForward();
}
return mapping.findForward("success");
}
}


HelloForm.java代码如下:

package com.mc.struts.form;
import org.apache.struts.action.*;

public class HelloForm extends ActionForm {
private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
}


5、将Action和Form文件配置到struts-config.xml

struts.xml配置代码如下:(这里面只配置了form和action,其他的暂且空着,实际项目需配置其他项)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

<struts-config>

<form-beans>
<form-bean name="helloForm" type="com.mc.struts.form.HelloForm" />
</form-beans>

<action-mappings>
<action attribute="helloForm"
input="/WEB-INF/form/hello.jsp"
name="helloForm"
path="/hello"
scope="request"
type="com.mc.struts.action.HelloAction">
<forward name="success" path="/WEB-INF/form/success.jsp" />
</action>
</action-mappings>

</struts-config>


6、添加JSP页面

在WEB-INF下新建form包,添加hello.jsp和success.jsp



hello.jsp代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<html>
<head>
<title>Hello JSP</title>
</head>
<body>
<html:form action="/hello">
<h2>Please input your name here: <html:text property="name" /><br />
<html:submit /></h2>
</html:form>
</body>
</html>


success.jsp代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<html>
<head>
<title>Success JSP</title>
</head>
<body>
<h2>Hello, ${ helloForm.name }. Welcome to Struts World!</h2>
</body>
</html>


7、运行

到现在为止一个简单的Struts项目就搭建好了,启动Tomcat服务器。



在浏览器栏输入http://localhost:8080/TestStruts/hello.do,展示hello.jsp页面。



在输入栏输入名字,点击Submit,展示success.jsp页面。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: