欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

struts2配置文件详解(struts2和springMVC的区别)

程序员文章站 2023-11-18 09:47:46
—应用struts2框架,开发一个加法器,采用两个页面,一个页面输入数据,另一个界面输出结果。一、新建maven项目1.选择菜单file—new—maven project,勾选“crea...

—应用struts2框架,开发一个加法器,采用两个页面,一个页面输入数据,另一个界面输出结果。

一、新建maven项目

1.选择菜单file—new—maven project,勾选“create a &simple project (skip archetype selection)”项:

struts2配置文件详解(struts2和springMVC的区别)

2.新建maven项目,设置项目属性如下:

1.配置web.xml

maven项目最重要的配置文件是pom.xml,pom是“项目对象模型”的意思。现在pom.xml中有一个错误,提示缺少web.xml:

struts2配置文件详解(struts2和springMVC的区别)

展开目录src—main—webapp,在里面新建文件夹“web-inf”,在“web-inf”中创建web.xml。

web.xml内容如下:

<?xml version="1.0" encoding="utf-8"?>
<web-app>
    <welcome-file-list>
        <welcome-file>add.jsp</welcome-file>
    </welcome-file-list>

    <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>

web.xml

里面定义了主页名称,并将页面处理交给struts。

2.实现控制器action(代码如下)

package com.cqvie.action;

import com.opensymphony.xwork2.actionsupport;

public class addaction extends actionsupport {

    private int n1;
    private int n2;
    private int sum;

    public int getn1() {
        return n1;
    }


    public void setn1(int n1) {
        this.n1 = n1;
    }


    public int getn2() {
        return n2;
    }


    public void setn2(int n2) {
        this.n2 = n2;
    }


    public int getsum() {
        return sum;
    }


    public void setsum(int sum) {
        this.sum = sum;
    }


    /**
     * 鐧诲綍
     * @return
     */
    public string add() {
        
        sum=n1+n2;
        //system.out.println(sum);
        return "success";
    }
}

addaction.java

3.配置struts.xml(代码如下)

在编写好action(控制器)的代码后,还需要进行配置才能让struts2识别action。在src下创建文件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>
    <constant name="struts.i18n.encoding" value="utf-8"></constant>
    <constant name="struts.multipart.maxsize" value="20971520" />
    <constant name="struts.devmode" value="true" />

    <package name="p_user" namespace="/" extends="struts-default">
    
    <!-- 计算 -->
        <action name="add" class="com.cqvie.action.addaction"
            method="add">
            <result name="success">
                /add_success.jsp
            </result>        
        </action>
        
    </package>

</struts>   

struts.xml

4.编写jsp(代码如下)

本例共有两个页面add.jsp以及add_success.jsp

<%@ page language="java" contenttype="text/html; charset=utf-8"
    pageencoding="utf-8"%>
    
 <%@ taglib prefix="s" uri="/struts-tags" %> 
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8">
        <title>计算页面</title>
    </head>
    
    <body>
        <%-- <s:form action="add" method="post">
            n1:<s:textfield name="login.n1" />
            n2:<s:textfield name="login.n2" />
            <s:submit value="等于"/>
        </s:form> --%>
        
        <form action="add" method="post">
            n1:<input type="text" name="n1" /><br>
            +<br>
            n2:<input type="text" name="n2" /><br>
            
            <input type="submit" value="等于" />
        </form>
    </body>
</html>

add.jsp
<%@ page language="java" contenttype="text/html; charset=utf-8"
    pageencoding="utf-8"%>
    
 <%@ taglib prefix="s" uri="/struts-tags" %> 
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8">
        <title>计算结果</title>
    </head>
    
    <body>
        <%-- <s:form action="login" namespace="/" method="post">
            <s:textfield name="name" label="name"></s:textfield>
            <s:password name="password" label="password"></s:password>
            <s:submit value="login"></s:submit>
        </s:form> --%>

<s:property value="n1"/>+<s:property value="n2"/>=<s:property value="sum"/><br>

结果等于:<s:property value="sum"/>
    </body>
</html>

add_success.jsp

5.运行项目

选择菜单“run”—“run configurations”,设置如下图:

struts2配置文件详解(struts2和springMVC的区别)

4.在浏览器中查看结果

地址栏输入“http://localhost:9527/struts-test/”查看结果