首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活、易于扩展的多层Web应用程序。
集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层(实体层)。
Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持。Spring一方面作为一个轻量级的IoC容器,负责查找、定位、创建和管理对象及对象之间的依赖关系,另一方面能使Struts和Hibernate更好地工作。
今天我们首先接触SSH中的struts2,而什么是struts2呢?简单的来说:它通过采用 Java Servlet/JSP 技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产品。
多的就不说了,直接进入今天的主题,struts2环境搭建。使用的工具:eclipse,tomcat8,struts2版本为2.3.24.
第一步:打开eclipse新建一个web project.
第二步:将struts2的jar包导入到刚建好的项目中的WebContent下的WEB-INF下的lib中。struts2的jar包可自己在它的官网下载http://struts.apache.org/download.cgi
第三步:在项目中的Java Resources下的src中新建一个Pageage,取名为com.action.在com.action中新建一个class,叫做LoginAction。
第四步:打开LoginAction,继承ActionSupport这个类,实现execute这个默认方法,方法中返回一个SUCCESS(枚举值),你可以选中这个值,按住ctrl建点击进入,查看到其他的枚举值。
第四步:同样在src下建立一个struts.xml的配置文件。而xml文件需要引入dtd的规范,而这个规范可以在处于src文件夹同级的Libraries中的Web App Libraries下的struts2-core-2.3.24.jar中的struts-default.xml中找到。找到后copy到struts.xml中即可。
这个时候你就可以开始配置这个xml文件了。不过在这之前,你可能会发现一个问题,就是在配置的时候竟然没有提示!那么你还得先把提示给整出来,当然你也可以纯手动输入。配置提示步骤如下:首先,选择eclipse上面菜单栏的window然后preferences,直接输入catalog,然后点击Add,再选择左边的Catalog Entry,然后开始右边操作。要填Location那个框框的路径,那你得找到你的struts2-core-2.3.24.jar这个jar包,然后把它解压,你会发现解压后有几个后缀名为dtd.文件,因为我用的2.3这个版本,所以我导的是2.3这个文件的路径,将Key type 改成URI,key的话你就把你struts.xml配置文件引入的dtd规范上面的http://struts.apache.org/dtds/struts-2.3.dtd复制进去,点击OK即可。然后把struts.xml重新打开即可有提示。
接着开始配置struts.xml吧。步骤如图。
其中要注意一个地方,<result>节点当中name属性不要因为LoginAction中返回的是一个大写,就写大写,注意要小写!
最后一步,需要在项目中的WebContent下的WEB-INF下的web.xml中进行过滤器的配置。如图
其中的 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>可以使用快捷键ctrl+shift+t,输入strutsp进行查找。
到此struts2的环境就搭建好了。你可以启动服务,打开谷歌浏览器,输入localhost:8080/你的项目名/你的地址名.action进行尝试。
本章结束!