<轻量级Java EE企业应用实战>2:Struts 2 的基本用法

1 MVC 思想概述

2 Struts 2 的下载和安装

  添加 Struts 2 的 jar 到项目 lib 目录,修改 web.xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <!--定义 Struts 2 的核心 Filter-->
    <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>

  src 目录下增加 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>

    <constant name="struts.enable.DynamicMethodInvocation" value="false"/>
    <constant name="struts.devMode" value="true"/>
    <constant name="struts.custom.i18n.resources" value="mess"/><!--src/mess.properties-->

    <package name="struts2" namespace="/" extends="struts-default">
        <!--处理所有用户请求,直接呈现/WEB-INF/content下的同名JSP文件:
            请求:http://localhost/loginForm   访问:/WEB-INF/content/loginForm.jsp -->
        <action name="*">
            <result>WEB-INF/content/{1}.jsp</result>
        </action>
    </package>
</struts>
loginPage=登录页面
errorPage=错误页面
succPage=成功页面
failTip=登陆失败
succTip=欢迎,{0},登陆成功
user=用户名
pass=密码
login=登陆
<%--
  loginForm.jsp
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
    <title><s:text name="loginPage"/></title>
</head>
<body>
<s:form action="login">
    <s:textfield key="user" name="username"/>
    <s:textfield key="pass" name="password"/>
    <s:submit key="login"/>
</s:form>
</body>
</html>
public class LoginAction extends ActionSupport {

    private String username;

    private String password;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String execute() throws Exception {
        if (getUsername().equals("admin") && getPassword().equals("123456")) {
            ActionContext.getContext().getSession().put("user", getUsername());
            return SUCCESS;
        } else {
            return ERROR;
        }
    }
}

  在 struts.xml 增加一个 name 为“login的 action:

<action name="login" class="com.hundsun.action.LoginAction">
            <result name="success">/WEB-INF/content/welcome.jsp</result>
            <result name="error">/WEB-INF/content/error.jsp</result>
</action>

3 Struts 2 的流程

4 Struts 2 的常规配置

时间: 2024-10-26 21:06:26

<轻量级Java EE企业应用实战>2:Struts 2 的基本用法的相关文章

轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)

轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)(国家级奖项获奖作品升级版,四版累计印刷27次发行量超10万册的轻量级Java EE经典著作) 李刚 编著   ISBN 978-7-121-24253-3 2014年10月出版 定价:108.00元 824页 16开 编辑推荐 国内知名IT图书作家李刚老师基于曾荣获中国书刊发行业协会“年度全行业优秀畅销品种”大奖的<轻量级Java EE企业应用实战(第3版)>全新升级:

&lt;轻量级Java EE企业应用实战&gt;1:JSP/Servlet及相关技术详解(二)

7 Servlet 介绍 7.1 Servlet 的开发 @WebServlet(name = "helloServlet", urlPatterns = {"/helloServlet"}) public class HelloServlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws

SSH:Struts + Spring + Hibernate 轻量级Java EE企业框架

Java EE(Java Platform,Enterprise Edition)是sun公司(2009年4月20日甲骨文将其收购)推出的企业级应用程序版本.这个版本以前称为 J2EE.能够帮助我们开发和部署可移植.健壮.可伸缩且安全的服务器端Java应用程序.Java EE 是在 Java SE 的基础上构建的,它提供Web 服务.组件模型.管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0应用程序.

【阅读笔记】《Java EE企业应用实战》(第四版)第七章——Spring的基本用法

Spring的定义和相关知识点 Spring包括 基于依赖注入的核心机制(再也不用new一个对象啦) 基于AOP的声明式事物管理 与多种持久层技术的整合 Web MVC框架 Spring的优点 低侵入式设计,代码污染低 独立于各种应用服务器,基于Spring框架的应用,可以真正实现Write Once,Run Anywhere的承诺(合着以前Java说的Write Once,Run Anywhere到了这里才能实现呀) Spring的IoC容器降低了业务对象替换的复杂性,提高了组件之间的解耦.

Java EE学习之旅1——HeadFirstJavaEE

因为找到的实习是用Java开发的公司,所以来学习一下Java EE的知识. 首先找来了书<轻量级Java EE企业应用实战>. 啊不得不说学了Java之后直接看这个还是完全不行呢,好多名词看都没有看过啊哈哈. 首先来看看都些啥看不懂的词... 1.JSP.Servlet和JavaBean JSP和Servlet都是用在表现层的东西,而实质上JSP编译成Servlet才运行. 但Servlet开发成本太大,所以用JSP. JavaBean用来通信交换表现层和底层数据. 2.MVC和Struts

Spring+MYBatis企业应用实战pdf高清版免费下载

下载地址:网盘下载 备用地址:网盘下载 内容提要编辑<Spring+MyBatis企业应用实战>介绍了Java EE 领域的两个开源框架:Spring 的MVC 和MyBatis.其中Spring 的版本为4.2,MyBatis 的版本是3.4.本书的示例建议在Tomcat 8 上运行.<Spring+MyBatis企业应用实战>重点介绍如何整合Spring MVC 4+MyBatis 3 进行Java EE 开发,主要包括三个部分.第一部分详细介绍了Spring MVC 框架的用

重温Java EE

Java EE应用概述 今天我们说的Java EE应用,往往超出了Sun所提出的经典Java EE应用规范,而是一种更广泛的开发规范. 1.1.1Java EE应用的分层模型 Domain Object(领域对象)层:此层由系列的POJO(plain old java object)组成,这些对象是该系统的Domain Object,往往包含了各自所需实现的业务逻辑方法. DAO(数据访问对象)层:此层由系列的Dao组件组成,这些Dao实现了对数据库的创建.查询.更新和删除(CRUD)等原子操作

影响Java EE性能的十大问题

本文作者是一名有10多年经验的高级系统架构师,他的主要专业领域是Java EE.中间件和JVM技术.他在性能优化和提升方面也有很深刻的见解,下面他将和大家分享一下常见的10个影响Java EE性能问题. 1.缺乏正确的容量规划 容量规划是一个全面的和发展的过程标准,预测当前和未来的IT环境容量需求.制定合理的容量规划不仅会确保和跟踪当前IT生产能力和稳定性,同时也会确保新项目以最小的风险部署到现有的生产环境中.硬件.中间件.JVM.调整等在项目部署之前就应该准备好. 2.Java EE中间件环境

【Hibernate学习笔记】第一章节:Java EE应用和开发环境

1. Java EE应用的分层模型 1.1. Java EE架构模式大致可以分为以下几层: >> Domain Object(领域对象)层:此层由POJO(Plain Old Java Object,普通的.传统的Java对象)组成,这些对象是该系统的Domain Object,往往包含了各自所需要实现的业务逻辑方法. >> DAO(Data Access Object,数据访问对象)层:此层由一系列的DAO组件组成,这些DAO实现了对数据库的创建.查询.更新和删除等院子操作. &