最近开发了一套基于SSH框架的OA系统,凭借小小的开发经验,写一篇总结SSH框架开发的文章,欢迎补充~~
假如把我们的整个项目比作一个工厂,那么用户的请求就是订单,Structs就是前台,Service是策划部,Hibernate是制造车间,DataBase是库存车间,而Spring则是人事部。前台structs收到用户的订单后,分析该请求属于哪个部门的职责,将请求传递给对应部门(Action),部门收到请求后,交给部门内部的策划部(Service)策划分析需求,形成行动规划,给制造车间(Hibernate)传达生产指令,制造车间于是从库存车间(DataBase)取出原材料,加工出产品,前台收到产品后,经过包装呈现给用户(jsp)。
下面再具体介绍SSH的分工。
Struts
指定Action处理请求
调用Service准备数据
转到jsp页面
利用ongl回显数据
用户的请求过来之后,首先会经过Struts拦截器,如果请求属于structs要处理的请求,则会转入structs框架。每个请求对应一个Action,请求来了之后会执行相应Action的相应方法,通常我们会在Action的方法中调用Service层代码,为即将转入的jsp页面准备数据。准备完数据后即转到相应jsp页面。在jsp页面中我们还会利用ongl表达式来调用对象栈和Map集合中的数据,在页面中回显。
Hibernate
通过设计实体hbm.xml文件自动创建数据库表
操作数据库
对于SSH框架,在完成了设计实体(javaBean)之后,就要配置对应的hbm.xml文件来创建相对应的表。Hibernate提供了hql语言来操作数据库,这种语言会自动转换为用户所使用的数据库语言,解决了不同的数据库要写不同的sql操作语言的麻烦。
Spring
工厂,生产对象
通常为了方便,我们会使用自动扫描+注解的方式来让Spring创建对象。
例如:
@Resource protected RoleService roleService; @Resource private SessionFactory sessionFactory;
以上就是本人总结的关于SSH分工的一点小心得,欢迎补充。
本人热爱编程,尤其喜欢Java语言,欢迎志同道合者与本人结交为友~~