• web 08 struts2入门 struts2配置 struts包


    电影网站:www.aikan66.com 

    项目网站:www.aikan66.com 
    游戏网站:www.aikan66.com 
    图片网站:www.aikan66.com 
    书籍网站:www.aikan66.com 
    学习网站:www.aikan66.com 
    Java网站:www.aikan66.com 
    iOS网站:www.aikan66.com

    ----

    1、下载Struts2的jar包
    下载地址:http://archive.apache.org/dist/struts/binaries/
    我用的是struts-2.3.8-all.zip这个版本

    ----

    2、创建一个web project项目
    下面给出所有文件均创建完成后的工程师图。

    ----

    3、导入Struts2所需jar包

    第1步骤中下载的文件解压,apps>>struts2-blank>>WEB-INF>>lib目录中的文件

    拷贝到项目的lib目录下面

    ----

    4、配置web.xml,在其中注册过滤器
    web.xml完整代码

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
      <display-name>5</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
        <!-- 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>
    </web-app>

    注意:上面的代码是Struts2.1之后的配置方法。如果你是Struts2.0需要更换一行代码

    org.apache.struts2.dispatcher.FilterDispatcher

    ----

    5、写action类(HelloWorld.java)

    这个类主要用于struts2跳转到这个action后。默认执行execute()方法。并根据结果返回字符,然后struts.xml根据返回的字符跳到相应的页面。

    package tutorial;
    import com.opensymphony.xwork2.ActionSupport;
    
    public class HelloWorld extends ActionSupport
    {
        public final static String MESSAGE = "Struts is up and running !";
        private String message;
    
        public String getMessage(){
            return message;
        }
        /**
         * @pram message the message to set
         */
        public void setMessage(String message){
            this.message=message;
        }
        
        public String execute() throws Exception
        {
            setMessage(MESSAGE);
            return SUCCESS;
        }
    }

    ----

    6、配置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>
            <package name="struts2" extends="struts-default">
                <action name="HelloWorld" class="tutorial.HelloWorld">
                    <result>/HelloWorld.jsp</result>
                </action>
            </package>
        </struts>

    其中,package元素,作用类似于Java包的机制,他是用于分门别类的一个工具,extends属性如他的名字一样,它继承了struts-default这个包的所有信息,一般我们自己创建一个包最好都继承它,因为他为我们提供了绝大部分的功能,你可以在struts2-core的jar包中的struts-default.xml文件中找到这个包。action元素对应与你的表单,例如你的表单的action="welcome",那么该表单提交后就会将参数交予action的name="welcome"的实现类处理。result元素为action的结果,它由动作类返回的控制字段选择。

    ----

    7、写jsp页面(HelloWorld.jsp)

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    <%@ taglib prefix="s" uri="/struts-tags" %>  
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'HelloWorld.jsp' starting page</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">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
    
      </head>
      
      <body>
       <h2><s:property value="message" /></h2>  
      </body>
    </html>

    ----

    8、部署运行

    http://localhost:8080/Struts2Demo/HelloWorld

    --

    完毕

    注意的是

  • 相关阅读:
    设计模式
    常用数据结构及复杂度 array、LinkedList、List、Stack、Queue、Dictionary、SortedDictionary、HashSet、SortedSet
    在 ASP.NET MVC 项目中使用 WebForm、 HTML
    二分法 数据必须是排序好的
    location.href IE6 下不起作用的罪魁祸首
    leetcode 372. Super Pow
    turple list dict 互相转换
    Pandas之Dropna滤除缺失数据
    模型选择---KFold,StratifiedKFold k折交叉切分
    xgb, lgb, Keras, LR(二分类、多分类代码)
  • 原文地址:https://www.cnblogs.com/zhaixing/p/5716027.html
Copyright © 2020-2023  润新知