首页 > 技术文章 > spring+struts+hibernate (ssh)开发梳理

mind-virtual 2013-12-01 21:21 原文

以下仅代表初学者的观点,拍砖请轻点

spring 通过IOC 对beans的管理,即由spring对java中的类创建实例以及销毁的管理,实现一定程度的解耦。
struts 是非常完善的mvc框架,一定成都上面实现modle view control 分离。
hibernate beans(class)和关系数据库的映射,使人能够从繁琐的sql语句中解脱出来。

1.每一个ssh框架单独使用都可以照葫芦画瓢,但整合可能会花很大的时间

 spring structs hibernate 每一个框架的使用可能都会有很多配置文件,整合使用需要将这些配置文件进行整合。

整合的原理:
1.spring 的原始配置不需要改变
2.spring 管理原hibernate 的相应配置文件
3.spring 管理structs action类,structs配置文件原来的action配置class路径属性,由原对应的类完整路径变为spring配置文件里面的beans id。 

2.项目组织层次
view->model(entity)-> action->service->DAO

1.view 是视图即用户可以看到的界面。
2.model(entity)即实体建立模型 ,也就是实体类,和关系数据库表一一对应
3.action 即控制层,通过filter实现url导向具体的服务(services)
4.service 即业务层,面向实现具体功能,每个功能的实现都是由具体的DAO函数注入
5.DAO 即数据操作层,面向具体DB的具体数据操作,不会包含具体的业务逻辑,如add、delete、update、find等等

3.相关类和数据表设计
1.model(entity) 符合传统的java beans 规范
2.services 和 dao  采用面向接口设计,即设计出来相应的接口底层统一使用
3.数据表和hibernate的对应,hibernate虽然可以完善的映射到相应的数据库,但是完善配置参数比较复杂。应当直接定义相应的数据表结构,同时配置相应的映射。这里的映射只用来数据操作时使用,而数据结构的定义不直接使用hibernate映射。这里需要特别注意数据锁的设置粒度(一般时面向业务层(具体功能),即services)。

推荐阅读