[Java]ssh网上商城总结

简介: [Java]ssh网上商城总结

     前几日敲完了ssh网上商城,虽然现在已经敲完了整个系统,却发现自己对于ssh,了解的一点都不多,什么是struts2,什么是spring,什么是hibernate,自己都是稀里糊涂,然后看了一下后面的学习资料,都是对于struts2,jsp啊,hibernate的这些讲解,突然觉得课程安排的果然是很合理,不过在开始后面的学习之前,也需要总结一下自己前面的学习。


      ssh这个词,是由struts+spring+hibernate缩写而成的,ssh是目前较流行的一种Web应用程序开源框架。下面咱们来了解一下这个框架。


      集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理struts和hibernate。


      上面这段是百度百科的内容,其实我还看不太懂,不过这个不妨碍我会用,从上面这段话可以看出来,ssh框架其实相当于以前学过的.net三层架构,但是用到了反射,而且是面向对象的(目前我能看出这么多。。。)。


Struts2


      在网上商城的项目中,我能感觉到的跟struts2有关的就是项目一开始,引入了一些jar包,然后创建了一个struts2的xml文件,每次需要页面跳转的地方,就到xml文件里面配置一下,感觉好像用到了反射。


Spring


      struts2的jar包中包括了spring的包。spring在SSH框假中spring充当了管理容器的角色。简单来说就是解耦用的。


Spring的Ioc(控制反转和依赖注入)


      控制反转:就是由容器控制程序之间的(依赖)关系,而非传统实现中,由程序代码接操控。


      依赖注入:组件之间的依赖关系由容器在运行期决定 ,由容器动态的将某种依赖关系注入到组件之中。


Hibernate


      hibernate是用来操作数据库的,像这种.hbm.xml文件都归他管。当然vo中的文件也都归他管。


总结


      在ssh中,对象的调用流程是jsp→Action→Service→DAO→Hibernate。


      数据的流向是ActiongFormBean接收用户的数据,Action将数据从ActionFromBean中取出,封装成VO或者PO,然后调用业务层的Bean类,完成各种业务处理后再 forward 。而业务层 Bean 收到这个 PO 对象之后,会调用 DAO 接口方法,进行持久化操作。


目录
相关文章
|
6月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——DeptDaoImpl.java
ssh(Spring+Spring mvc+hibernate)——DeptDaoImpl.java
|
6月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——BaseDaoImpl.java
ssh(Spring+Spring mvc+hibernate)——BaseDaoImpl.java
|
Java 关系型数据库 MySQL
JSP SSH公车拍卖系统myeclipse开发mysql数据库bs框架java编程网结构
JSP SSH公车拍卖系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
77 0
|
6月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——Dept.java
ssh(Spring+Spring mvc+hibernate)——Dept.java
|
5月前
|
监控 Java 网络安全
java获取ssh连接时报错com.jcraft.jsch.JSchException: Packet corrupt如何处理?
【6月更文挑战第5天】java获取ssh连接时报错com.jcraft.jsch.JSchException: Packet corrupt如何处理?
945 5
|
6月前
|
网络安全
ssh报错java.lang.ClassCastException: com.sun.proxy.$Proxy6 cannot be cast to org.service.impl.EmpServi
ssh报错java.lang.ClassCastException: com.sun.proxy.$Proxy6 cannot be cast to org.service.impl.EmpServi
|
6月前
|
安全 JavaScript Java
Java连接SSH的库
Java连接SSH的库
114 0
|
6月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——EmpServiceImpl.java
ssh(Spring+Spring mvc+hibernate)——EmpServiceImpl.java
|
6月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——DeptServiceImpl.java
ssh(Spring+Spring mvc+hibernate)——DeptServiceImpl.java
|
6月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——DeptController.java
ssh(Spring+Spring mvc+hibernate)——DeptController.java
下一篇
无影云桌面