【ssh2】配置,新手入门级——Struts2配置(大牛勿喷)

来源:互联网 发布:壁虎网络 编辑:程序博客网 时间:2024/06/05 00:30
我本不是学习javaEE的,本打算只是简单了解一下javaWeb,毕竟是企业及开发嘛,想着以后工作能用到,没想到慢慢学起来了。好了废话不多说,我的东西也都是自己学的,ssh、ssm(看了点不是很懂,但能理解)、最近看了spring boot(感觉很不错,个人认为比之前的好学)。介绍一下我的配置:

我用的IDE: myeclipse GA 2014(虽然集成了好多工具,但是好多jar包需要后期手动升级,比较麻烦,后期打算用eclipse)
WEB服务器:tomcat-8.5.16(这个版本至少要比8.0.45高,因为要支持Struts2)
Struts版本是:2.5.12(这个版本我也不是很清楚,可能只是为了追求新版本吧)

    接下来开始 Struts2 配置的第一步:首先要准备Struts的jar包:Struts2下载完整jar包的下载:struts-2.5.12-all.zip(包括以下所有东西)官方给的例程:struts-2.5.12-apps.zip (35MB)搭建Struts2需要的最小配置:struts-2.5.12-min-lib.zip (4MB)Struts2的所有依赖包:struts-2.5.12-lib.zip (19MB)Struts2的DOC文档:struts-2.5.12-docs.zip (13MB)Struts2的源码包:struts-2.5.12-src.zip (7MB)建议新手还是下载最全的jar包,毕竟有时候需要查看一下大牛们是怎么写的代码。这个是我下载完整包的解压结果

这个是我们需要的jar包依次是:commons-fileupload-1.3.3.jarcommons-io-2.4.jarcommons-lang3-3.6.jarfreemarker-2.3.23.jarjavassist-3.20.0-GA.jarlog4j-api-2.8.2.jarognl-3.1.12.jarstruts2-core-2.5.12.jar

现在我们可以打开IDE,来创建一个Web Project了(我用的me)
file→new→Web Project


我们将刚才那个需要的jar包复制到/WEB-INF/lib目录下
选中并选择“add to build path”
即完成了导入jar包的工作

我们需要配置的文件有web.xml位于(/WEB-INF/目录下)和struts.xml(/src/目录下)
没有的话需要新建一个在该目录下进行新建
/**
************web.xml************
*这里面的filter就是要让我们的struts2起作用
*filter:是定义一个filter
*filter-name:这个是filter的名字,可以自定义
*filter-class:指定你filter的java类
*filter-mapping:定义一个filter映射
*url-pattern:指定filter过滤的条件,“*”代表全部过滤
*/

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xmlns="http://xmlns.jcp.org/xml/ns/javaee"         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee             http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"         version="3.1">  <display-name>ssh2</display-name>  <filter>    <filter-name>struts2</filter-name>    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>  </filter>  <filter-mapping>    <filter-name>struts2</filter-name>    <url-pattern>*.action</url-pattern>  </filter-mapping></web-app>

/**
************struts.xml************
*!DOCTYPE:可以在struts2-core-2.5.12.jar下找到对应的*.dtd文件中复制
*package:定义一个包名,可以定义多个,但name必须唯一,namespace是访问的路径(默认值为”“),extends继承其他包(默认值:”struts-default”,继承多个父包时逗号隔开)
*action:定义一个action,name是访问的子路径(必须唯一),class是你action所对应的java类,method是java类中所对应的方法(默认值:”execute”)。
*result:是java action所对应类中定义的 方法返回的结果,result的值就是你要跳转的页面地址(也可以是action)
*/

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"    "http://struts.apache.org/dtds/struts-2.5.dtd"><struts>    <package name="default" namespace="/" extends="struts-default">        <action name="hello"         class="com.ssh2.web.action.HelloAction"         method="say">            <result name="err">/WEB-INF/err.jsp</result>            <result name="hi">/WEB-INF/hello.jsp</result>        </action>

这是HelloAction.java的代码,他的默认值执行方法是execute方法,
这里编写的say()方法是与struts.xml中action的method相对应。

import com.opensymphony.xwork2.ActionSupport;public class HelloAction extends ActionSupport {    /**     *      */    private static final long serialVersionUID = 1L;    /**     * 这个是我创建的say方法,是与     * @return String      *///  @Override//  public String execute() throws Exception {//      // TODO Auto-generated method stub//      return super.execute();//  }    public String say() {            return "hi";    }}

到这里配置就全部结束了,我们可以开始测试了!

我准备了两个jsp页面index.jsp和hello.jsp
index.jsp中添加一个a标签
${pageContext.request.contextPath} 这个是获取你当前的项目名称的el表达式

<a href="${pageContext.request.contextPath}/配置的action的name值.action">进入我的世界</a>

hello.jsp

 <h1>It's my world!</h1>

启动tomcat-8.5.16,在地址中输入“http://localhost:8080/你的项目名称/ ”即可。