科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道spring中对hibernate的支持是非常强大的

spring中对hibernate的支持是非常强大的

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

spring中对hibernate的支持是非常强大的,从一个简单的例子就看得出来,从这个例子中我们还将对所谓的轻量级容器做一些讨论。

作者:Imain 来源:CSDN 2008年2月29日

关键字: java Hibernate Spring

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)

假设我们有一张student表,结构很简单:
  1. id      自动增长
  2.   name     varchar(40)
  3.   password   varchar(32)
  4.   grade        int(4)      年级
  5.   sex     Boolean      性别(true为男,false为女)

  设计一个Student类来映射这张表:

  1. /*
  2.  * 创建日期 2005-3-17
  3.  */
  4. package net.bromon.spring.examer.pojo;
  5. /**
  6.  * @author Bromon
  7.  */
  8. public class Student 
  9. {
  10.     private int id;
  11.     private String name;
  12.     private String password;
  13.     private int grade;//年级
  14.     private boolean sex;
  15.     
  16.     getset方法……….
  17. }

  编写Student.hbm.xml,让hibernate知道如何去关联student表和Student类,该文件和Student.java在同一目录:

  1. <hibernate-mapping>
  2.   <class name="net.bromon.spring.examer.pojo.Student" table="student">
  3.     <id name="id" column="id">
  4.       <generator class="identity"/>
  5.     </id>
  6.         
  7.     <property name="name" column="name" />
  8.     <property name="password" column="password" />
  9.     <property name="grade" column="grade" />
  10.     <property name="sex" column="sex" />
  11.   </class>
  12. </hibernate-mapping>

  然后我们可以在spring中配置sessionFactory:

  1. <bean id="sessionFactory" class="org.springframework.orm.hibernate.LocalSessionFactoryBean">
  2.   <property name="dataSource">
  3.     <ref bean="dataSource"/>
  4.   </property>
  5.         
  6.   <property name="hibernateProperties">
  7.     <props>
  8.       <prop key="hibernate.dialect">net.sf.hibernate.dialect.MySQLDialect</prop>
  9.     </props>
  10.   </property>
  11.         
  12.   <property name="mappingDirectoryLocations">
  13.     <list>
  14.       <value>classpath:/netbromonspringexamerpojo</value>
  15.     </list>
  16.   </property>
  17. </bean>

  其中引用了我们之前注册过的dataSource,mappingDirectoryLocations属性指明了.hbm.xml文件在哪里路径,该文件夹下面的.hbm.xml文件会被全部加载。

  一切都准备就绪,现在我们要加入一个StudentManager类,来进行增删查改的操作:
  1. /*
  2.  * 创建日期 2005-3-17
  3.  */
  4. package net.bromon.spring.examer.student;
  5. import net.bromon.spring.examer.pojo.Student;
  6. import org.springframework.orm.hibernate.HibernateTemplate;
  7. import org.springframework.orm.hibernate.LocalSessionFactoryBean;
  8. import org.springframework.orm.hibernate.support.HibernateDaoSupport;
  9. /**
  10.  * @author Bromon
  11.  */
  12. public class StudentManager extends HibernateDaoSupport
  13. {
  14.     private LocalSessionFactoryBean sessionFactory;
  15.     private HibernateTemplate ht;
  16.     public StudentManager()
  17.     {
  18.         this.ht=super.getHibernateTemplate();
  19.     }
  20.     
  21.     public void add(Student s)
  22.     {   
  23.         ht.save(s);//插入一条数据只需要这一行代码
  24.     }
  25. }
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章