Struts2教程--第一章 搭建Struts2开发环境

在Struts的官方网站上,写着下面两段话:

Apache Struts 2 is an elegant, extensible framework for creating enterprise-ready Java web applications. The framework is designed to streamline the full development cycle, from building, to deploying, to maintaining applications over time.

Apache Struts 2 was originally known as WebWork 2. After working independently for several years, the WebWork and Struts communities joined forces to create Struts2. This new version of Struts is simpler to use and closer to how Struts was always meant to be.

其大意为:Apache Struts2是一个为企业级应用打造的优秀的、可扩展的WEB框架,该框架旨在充分精简应用程序的开发周期,从而减少创建、发布直到应用所花费的时间。

Apache Struts2原本就是举世闻名的Webwork2,在各自经历几年的发展之后,Struts和WebWork社区决定合二为一,也就是今天的Struts2。

Struts是一个基于Model2的MVC框架,为应用程序的WEB层提供了良好的结构严谨的实现。Struts发展较早,早期的Struts1.X已被很多J2EE程序员熟悉,经过多年来的发展,这支队伍变得越来越大,很多企业级应用程序都是基于Struts开发的。

Struts2与Struts1.X已经不能再放到一起比较,虽然都是对MVC架构模式的实现,本质却完全不同。Struts2的前身是WebWork,其实现方式和功能都要优于Struts1.X,但是,Struts先入为主,很多应用程序都基于Struts,其生命力和普及度使得WebWork落于下风。随着新思想和新架构的不断涌入,特别是WEB2.0被大量提及,Struts1.x显然无法跟上日新月异的变化,在很多应用上显得力不从心,最终催生了Struts2.0。可以说Struts2.0是为变而变。

很大程度上,Struts2.0无法避开投机取巧的嫌疑。不过,借助Struts的名声,加上WebWork构建良好的框架,二者取长补短,确实不失为一种黄金组合和一种绝佳的宣传方式。

笔者杜撰此文时,可以下载到的最新版本为2.1.0,但他的魅力已初露尖角,应该会有很好的前途。

Struts2的新特征

如果读者熟悉Struts1.X,会发现Struts2比Struts1.X有了巨大的变化:

Action 类:

• Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。

• Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现常用的接口。Action接口不是必须的,任何有execute标识的POJO对象都可以用作Struts2的Action对象。

线程模式:

• Struts1 Action是单例模式并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略限制了Struts1 Action能作的事,并且要在开发时特别小心。Action资源必须是线程安全的或同步的。

• Struts2 Action对象为每一个请求产生一个实例,因此没有线程安全问题。(实际上,servlet容器给每个请求产生许多可丢弃的对象,并且不会导致性能和垃圾回收问题)

时间: 2024-09-11 10:51:43

Struts2教程--第一章 搭建Struts2开发环境的相关文章

Java之路第一步——搭建Java开发环境

本来刚开始应该介绍一下Java的,标题都想好了--Java的前世今生,但是为了节省是时间,就直接切入主题了,感兴趣的可以上网查一下. 要进行Java开发,首先要安装JDK(Java Development Kit)[Java开发工具包].   JDK 是编译Java源码.运行Java程序所必需的,例如JVM[Java虚拟机].JRE[Java运行环境],基础类库.打包工具等.所以学会JDK的配置是学好 Java 的第一步.   JDK的下载 JDK有不同的版本(J2SE.J2EE.J2ME),初

在Eclipse下搭建Android开发环境教程

我们昨天向各位介绍了<在NetBeans上搭建Android SDK环境>,前不久也介绍过<在MyEclipse 8.6上搭建Android开发环境>,都受到了读者的欢迎.但是很多朋友都认为NetBeans在中国用户不多,MyEclipse又是收费产品,都没有Eclipse好,很多读者都希望我们介绍一下Eclipse下搭建的Android开发环境,本文将全程演示Android开发环境的搭建过程,无需配置环境变量.所有软件都是写该文章时最新版本,希望大家喜欢. 一 相关下载 (1)J

利用adt-bundle轻松搭建Android开发环境与Hello world(Windows)

Android开发环境有三种方式,分别是JDK+SDK+Eclipse+ADT.JDK+adt-bundle与JDK+Android Studio. 不要使用JDK+SDK+Eclipse+ADT这种方式,不是说什么太复杂的,是因为郭嘉的网络你懂的,打开SDK工具之后就根本就下载不了.Android Studio也是不行的,说好集合大量打开环境.安装的时候却还是需要联网. 建议使用JDK+adt-bundle这种方式来搭建Android开发环境.同时adt-bundle认准20131030版本.

搭建Cocos2d-JS开发环境

使用Cocos2d-JS引擎开发游戏,主要的程序代码是JavaScript语言,因此,凡是能够开发JavaScript语言工具都适用于Cocos2d-JS游戏开发.本书我们推荐WebStorm和Cocos Code IDE工具. 搭建WebStorm开发环境我们在以往使用了WebStorm开发工具,它是非常优秀的JavaScript开发工具,WebStorm工具可以开发和调试基于Cocos2d-JS引擎的JavaScript程序代码,但是测试和调试时候只能运行在Web浏览器上.WebStorm安

Eclipse搭建Ruby开发环境

Eclipse搭建Ruby开发环境 1.环境搭建 1.1JDK安装配置 1)点击下面网址下载JDK5.0: http://java.sun.com/javase/downloads/index_jdk5.jsp 2)下载完成后,双击图标进行安装,安装过程中选择安装目录(例如:C:jdk1.5.0_11) 3)配置JDK环境变量: (1)右击"我的电脑",点击"属性",选择"高级"选项卡,点击"环境变量",出现环境变量属性窗口如

《我和PIC单片机:基于PIC18》——第2章 PIC的开发环境 2.1 PIC开发的硬件资源

第2章 PIC的开发环境 前面我们学习了PIC的内部资源配置和I/O口的基本结构,这一章我们重点要实现对I/O口的控制.单片机是软硬件结合的统一体,因此本章先介绍如何用简单的材料搭建起供学习使用的最小系统板,之后要学习MPLAB IDE集成开发环境,并且在该环境下使用C语言编写程序点亮一个发光二极管. 2.1 PIC开发的硬件资源 学习单片机贵在动手实践,这就要求我们需要有必要的硬件作为辅助才能达到预期的学习效果.作为初学者,可以购买成品的PIC开发板,这样做的好处是可以节约一些时间,让你更加专

《libGDX移动游戏开发从入门到精通》一1.2 搭建libGDX开发环境

1.2 搭建libGDX开发环境 在本节中,我们将介绍搭建libGDX的开发环境.本节是大家使用libGDX进行游戏开发的基本准备工作.需要注意的是,在此之前应该把JDK下载.安装并配置好.同样的,eclipse下的开发环境也需要配置好. 1.2.1 libGDX下载 (1)登录官网:http://libgdx.badlogicgames.com/,单击红色框选中的"Download",如图1.6所示. (2)单击"Download"选项后你会看到以下界面,单击其中

Android应用开发(一):Android平台搭建与开发环境配置

本文从自身经历的角度分享了Android应用开发的第一步,即Android平台搭建与开发环境配置,主要包括平台的选择与安装及其安装过程中经常遇到的问题,最后给出一个实例,即第一个Android软件"Hello World!". 1.Android Studio软件下载 可以在百度上直接下载Android Studio,或者到官网www.android.com上直接下载(中国大陆资源可能会受限). 注意:这里推荐使用Android Studio,并不推荐使用Eclipse或者IDEA开发

《深入理解Android》一第1章 搭建源代码编译环境

第1章 搭建源代码编译环境 本章主要内容 Android全源码开发环境: Android常用工具及相关技巧说明: WebKit代码目录结构及全书内容概要: WebKit源代码调试. 作为全书的第1章,首先要介绍的是Android系统以及WebKit全源码开发环境的背景信息.

React Native搭建iOS开发环境_IOS

一.写在前面 1. 什么是React-Native? React-Native是:Facebook 在2015年初React.js技术研讨大会上公布的一个开源项目.支持用开源的JavaScript库React.js来开发iOS和Android原生App.初期仅支持iOS平台,同年9月份,该开源项目同时支持Android平台. React Native的原理是:在JavaScript中用React抽象操作系统原生的UI组件,代替DOM元素来渲染,比如以<View>取代<div>,以&