很多初学 SSH 框架的人,都很想自己动手搭建一个 SSH 集成框架,但总会碰到各种各样的错误,网上的很多资料,看着挺详细,可按照步骤搭建的过程中,总得不到正确的结果。因此,下载了目前最新的包和开发环境,搭建一个 SSH 集成框架。

为什么说是集成框架,而不直接说是 SSH 框架,是因为本身 SSH 中的 Struts、Spring 和 Hibernate 就是框架,把三个框架整合到一起做开发,也就是框架的集成,所以是 SSH 集成框架。

在 MyEclipse 环境中搭建 SSH 集成框架,会更加便捷,这里先不说它,先来说说如何在 Eclipse 中搭建 SSH。

本教程是在 Win10 专业版 64 位操作系统中测试完成的,所以下载的很多包也是 64 位的,顺便分享(百度云下载)。如果想在 32 位系统中尝试搭建,有些安装包分享中也有,当然文章中也会把官网下载链接贴出来的。

另外,搭建过程中所有的环境都是安装或解压在 F 盘中,所以文章中出现的盘符是 F 盘。

这一篇主要说一说整合 Struts2 部分。

第一步,如果系统没有 Java 编译环境,请先安装 JDK。如果有,略过此步。

JDK 官网下载地址为​​http://www.oracle.com/technetwork/java/javase/downloads/index.html​​​,我这里下载的是最新版本的 jdk-8u66-windows-x64.exe,下载后双击安装,我这里安装到 F 盘下。别忘了配置环境变量。具体安装配置可参考《​​在 Windows 系统上安装 JDK 或 JRE​​》一文。

第二步,既然要在 eclipse 中搭建 SSH 集成框架,当然首先需要下载 eclipse。

Eclipse 官网下载地址为:​​http://www.eclipse.org/downloads/​​,我这里下载的是 eclipse-jee-mars-1-win32-x86_64.zip,下载后解压到 F 盘下。

第三步,运行 WEB 项目,必须要服务器,这里选用开源好用的 Tomcat。

Tomcat 官网下载地址为​​http://tomcat.apache.org/download-80.cgi​​,本来想下载最新的 Tomcat9.0 试试,结果 Eclipse 中 Apache 只支持到 8.0,所以就选用了 apache-tomcat-8.0.30-windows-x64.zip,下载后解压到 F 盘下。

第四步,简单配置 Eclipse 环境,使得 Tomcat 可以正常启动。

这个配置,无外乎就是 JDK 的配置,Tomcat 的配置。另外,每个人也有自己一些独特的强迫症,比如设置字体,添加、删除或者排版 View 面板等,这个根据自己的爱好,自己设置吧。如果想参考,可以看看《​​Eclipse开发工具基础配置​​》一文。

第五步,新建一个 WEB 工程。

Eclipse 中 SSH 项目搭建图文教程(一)_eclipse


第六步,导入 Struts 所需要的包,并添加 web.xml。

首先需要到官网下载 Struts 框架,下载地址为​​http://struts.apache.org/download.cgi#struts23241​​,我这里下载的版本是 struts-2.3.24.1,下载后解压到 F 盘下。

依次打开 F盘 -> struts-2.3.24.1 -> apps -> struts2-blank.war -> 解压 –> 进入struts2-blank -> WEB-INF。

把 web.xml 复制到项目的 WebContent/WEB-INF 下,把 lib 中的包复制到项目的 WebContent/WEB-INF/lib 下,如图。

Eclipse 中 SSH 项目搭建图文教程(一)_框架搭建_02

修改 web.xml,修改后如下。


<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>SSH Framework</display-name>
<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>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>

第七步,导入 Tomcat 包。

依次打开 F盘 -> apache-tomcat-8.0.30\lib,把所有包复制到 WebContent/WEB-INF/lib 下。

第八步,创建 jsp 页面,包,Action 类,并配置 struts.xml,项目结构如下图。

Eclipse 中 SSH 项目搭建图文教程(一)_图文教程_03




依次创建下列文件,代码如下。

login.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>Login</title>
</head>
<body>
<s:form action="login">
<s:textfield name="user.username" label="用户名"></s:textfield>
<s:password name="user.password" label="密 码"></s:password>
<s:submit value="登陆"></s:submit>
</s:form>
</body>
</html>

success.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>
恭喜你,登陆成功。
</body>
</html>

error.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>
很遗憾,登陆失败。。。
</body>
</html>

LoginAction.java


package com.menglanglang.ssh.demo.action;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport {
private static final long serialVersionUID = 1L;
@Override
public String execute() throws Exception {
return SUCCESS;
}
}


UserDto.java



package com.menglanglang.ssh.demo.dto;
public class UserDto {
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;
}
}

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>
<!-- Add packages here -->
<package name="default" extends="struts-default" namespace="/">
<action name="login" class="com.menglanglang.ssh.demo.action.LoginAction">
<result name="success">/success.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package>
</struts>


第八步,测试。

发布项目,启动 Tomcat,访问登陆页面http://localhost:8080/SSH_Framework/login.jsp,如图。




Eclipse 中 SSH 项目搭建图文教程(一)_ssh_04

点击“登陆”按钮,弹出成功页面,则说明 struts 配置成功,如图。

Eclipse 中 SSH 项目搭建图文教程(一)_struts2.0_05