我现在服务的系统是struts+spring整合的框架的,数据库层面大量应用存储过程。
前几天去面试,面试的人问我我当前系统持久层是怎么实现的?
我问你是说Hibernate之类的吗,我们系统没有用这个
面试的人很诧异?电信系统没有持久层?全是拼sql串?
我说系统大量应用存储过程,他才释然。我问问大家,hibernate之类的东西,就是所谓的持久层到底是做什么的呢?
我感觉我们当前系统应用存储过程的模式也挺好的,业务逻辑都在存储过程里,阅读极其方便。而且java只需简单调用存储过程,过程返回处理状态和处理说明,应该算是松耦合吧。比较方便。
我不清楚hibernate之类的持久层和存储过程的实现方式有什么优缺点呢?

解决方案 »

  1.   

    持久层是官话~~说白了就是CRUD~~~Hibernate框架不适合做存储过程的持久化操作,它本身就是用来对关系型数据库与Java对象之间的映射,这才是Hibernate该干的事,优势都集中在ORM了。Hibernate也是要看用在什么地方最合适,盲目的用会适得其反。
      

  2.   

    hibernate 也就是ORMmapping了,也就是实体关系映射了
      

  3.   


    表关系复杂的地方使用。非常不错。个人感觉使用人数不很多,内部单位使用,数据复杂,那么用H非常好!面向网络,感觉还是iBatis,写的累点,但可以逐渐修改适应速度!
      

  4.   

    Hibernate是持久层应用最广泛的框架了,真正的面向对象,就是所谓的“SSH”里的“H”了,其实Hibernate的底层实现就是JDBC。 在搭建大型系统时  使用Hibernate对比使用JDBC的好处是显而易见的。
      

  5.   

    ORM对象关系映射,持久层实现的就是这个功能来实现数据持久化,说白了就是程序与数据库的数据交互。在开发程序的过程中,最好不要单一的存储过程或持久化,对程序来讲,最好实现存储过程与持久化互相转换使用,以达到最好的开发效率及实际物理访问速度。回答不好,请多指教!!!
      

  6.   

    原来ORMMapping就是Hibernate的引用呀