Ant -> Maven -> Gradle
- Info
- JDK 1.8
- Tomcat 8.5.5
- Intellij IDEA 2016.2.3
- macOS 10.12.1 beta
前言
熟悉 Android 开发的程序员都知道,Android Studio 是基于 Intellij IDEA 社区版所开发的,其默认使用 Gradle 构建项目。
与 Maven 不同,Gradle 的配置更为简单,两者的优劣这里略过。这次就体验一下使用 Gradle 构建最基本的 Struts 2 Web 应用。记录于此,便于往后查阅。
安装 Tomcat
下载并解压 Tomcat,将其置于 /usr/local
文件夹内,这里以 Tomcat 8.5.5 为例,因为其支持 Servlet 3.1 标准。
新建 Gradle Web 项目
菜单栏:File - New - Project...
选择左侧的 Gradle,勾选 Web 选项,因为要建立的是跑在服务器上的应用。点击 Next。
New Gradle输入 Group ID 以及 Artifact ID,建议输入真实,唯一的 ID。良好的习惯将减小未来发生错误的概率。继续点击 Next。
Group ID & Artifact ID勾选必要的选项,Next。
配置项目设置项目的放置目录,Finish。
项目的放置目录等待 Gradle 构建项目,可以在窗口下部看到当前状态,构建完毕时,则会消失。和 Maven 类似,Gradle 的构建过程也需要联网下载所需的依赖。
等待 Gradle 构建项目导入 Struts 2
Gradle 项目建立基本完毕,需要配置 Struts 2 的依赖。和 Maven 类似,可以搜索 Maven Repository,虽然名字是 Maven 仓库,但却提供了多种依赖的部署方式。
搜索 Maven Repository搜索 struts,我们能得到很多结果,我们需要选择 Struts 2 Core。
Struts 2 Core打开之后可以看到 Struts 2 的不同版本,Maven 和 Gradle 的方便之处在于,可以很简单的切换不同版本,而不用手动下载相关 JAR 包。对于版本的选择,首先可以优先选择 release 版。测试版(即 Beta 版)在网页上也有清晰的标注。另外通过阅览 Struts 官网我们得知,Struts 3 将基于 2.5 或更新版本,较大版本更迭会有较大不同,甚至是兼容性的差异。所以我们选择当前 2.3 的最高子版本 2.3.30。当然你也可以选择参考书等资料中的版本,但个人偏向较新的版本,不要沉溺于太过时的东西,限制你的思想。
Struts 2.3.30切换到 Gradle 标签,拷贝其中的内容。
拷贝 Gradle 依赖回到 IDEA,打开 build.gradle,将其粘贴到 dependencies 中。由于之前勾选过 auto-import,即可自动导入。
build.gradle如果忘记勾选,也可在此手动刷新,让其导入。
手动刷新导入至此,Struts 2 已经导入该项目,但距离使用还差一点距离。
配置 Tomcat
虽然我们安装了 Tomcat,也选择了 Web 应用,但并没有部署项目,所以无法运行。点击图中菜单的下三角,选择 Edit Configurations...。
Edit Configurations点击左上角加号。
点击左上角加号选择 Tomcate Server - Local。
Tomcate Server根据下图即可配置 Tomcat。
配置 Tomcat如果 IDEA Application server 为空,那么需要首先添加 Tomcat 服务器,点击 Configure...,点击新窗口的左上角的加号添加新的服务器,选择 Tomcat 的路径即可(图上已经拥有配置好的两个不同版本的 Tomcat 服务器)。
添加 Tomcat 服务器回到配置 Tomcat,切换到 Deployment 标签,点击图中的加号,选择 Aritifacts。
Deployment这里选择 exploded 结尾的 war 包,这是展开的 war,便于重载资源,在开发阶段建议选择此。
选择 exploded配置完成,点击 OK。
配置完成添加 web.xml & struts.xml
点击菜单栏的 Project Structure。
Project Structure选择左侧 Modules,当前 Web Gradle,点击加号。
Modules-Web Gradle选择创建 web.xml 的路径,注意在最后不要忘记 web.xml,否则并不会创建。
web.xml 路径配置 web.xml 完成,点击 OK。
配置完成struts.xml 可以直接在 resources 目录右键 - New - XML Configuration File - Struts Config,即可生成。
新建 struts.xml新建完成,IDEA 会检测到 struts.xml,提示配置,选择 Configure,勾选刚刚创建的 struts.xml 以及下面的 struts-default(图中漏掉了),点击 OK。
(注意:如果 IDEA 没有提示,那么可在选择 Web Gradle 界面,选择左侧的 Facets,点击加号,添加 Struts 2 并勾选上述文件)
配置完成,点击 OK。
配置完成添加完成这两个 xml 文件,但并没有进行内部的配置,web.xml 是必须配置的,可以按照如下配置 Struts 2 过滤器。
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<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>
测试
至此,Struts 2 基本配置已经完成,可以简单的在 index.jsp 中测试 Struts 2 的标签即可验证是否成功。
网友评论