Apache Struts 2入门指南

Apache Struts 2入门指南

作者:chszs,版权所有,未经同意,不得转载。博主主页:http://blog.csdn.net/chszs

本文使用最新的Struts 2.3.24.1版,演示了怎样用Apache Struts 2构建最基本的Web应用。

项目的基本需求:

1)Maven 3.3.3
2)Eclipse Mars.1 Release (4.5.1)
3)Struts 2.3.24.1

一、项目的主体结构

1、新建一Maven项目

Group Id:com.ch.common
Artifact Id:Struts2Example
Packaging:war

2、解决Maven Web项目的一个错误

这里写图片描述

鼠标右键点击项目,选择”Java EE Tools”->”enerate Deployment Descriptor Stub”,会自动产生WEB-INF子目录和web.xml配置文件。

3、导入Struts 2依赖包

项目pom.xml内容如下:


    4.0.0
    com.ch.common
    Struts2Example
    0.0.1-SNAPSHOT
    war
    
        
            org.apache.struts
            struts2-core
            2.3.24.1
        
        
            junit
            junit
            4.12
            test
        
    
    
        Struts2Example
        
            
                maven-compiler-plugin
                3.0
                
                    1.8
                    1.8
                
            
        
    

4、项目的主体结构如下图所示

Apache Struts 2入门指南_第1张图片

二、JSP页面

1、编写JSP登录页面

包括输入用户名和密码的输入框、提交按钮等。
login.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>



    

Struts 2 Hello World Example

2、编写JSP欢迎页面

登录成功后,进入欢迎页面。
welcome_user.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>



    

Struts 2 Hello World Example

Hello

3、编写业务逻辑Action类

Struts 2的Action类,负责所有的业务逻辑。
WelcomeUserAction.java

package com.ch.user.action;
public class WelcomeUserAction {
    private String username;
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    // Struts业务逻辑放这里
    public String execute(){
        return "SUCCESS";
    }
}

在Struts 2中,Action类无需实现任何借口或继承任何类,唯一的要求就是它必须创建一个execute()方法来放置所有的业务逻辑,并且此方法必须返回String类型的字符串,告知用户它要重定向到哪里。
注意:有些开发者实现了com.opensymphony.xwork2.Action类,这取决于你的需求和应用场景,这个类提供了常用的常量值。

4、Struts 2的配置文件

Struts 2的配置文件名必须是struts.xml。




    
        
            login.jsp
        
        
            welcome_user.jsp
        
    

Struts配置文件声明了一个包(Package)和封装的Action类,Action类是自解释的,下面对配置中的一些内容做一说明:

1)package name=”user”
仅仅定义了一个包名,无需关心它。

2)namespace=”/pages”
这用于匹配URL为“/”的访问路径。

3)extends=”struts-default”
意思是此包继承自struts-default包组件和拦截器,而这些是在struts-default.xml文件中声明的,这个配置文件位于struts2-core.jar文件中。

5、web.xml配置

Web应用描述符web.xml文件的配置如下:



    Struts 2 Web Application
    
        struts2
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
    
    
        struts2
        /*
    
    
        pages/login.jsp
    

6、运行项目

对于Struts 2 Web项目,可以通“.action”后缀直接访问Action。
浏览器访问:http://localhost:8080/Struts2Example/pages/Login.action
或者是访问:http://localhost:8080/Struts2Example/pages/login.jsp
Apache Struts 2入门指南_第2张图片
任意输入用户名和密码,
Apache Struts 2入门指南_第3张图片
可以看到,访问正常!

你可能感兴趣的:(JavaEE开发,Web开发)