Hibernate注解学习1

由于项目的原因目前需要一些简单注解,于是就做了个hibernate注解的小demo,来记录一下。

1、需要引入jar包
ejb3-persistence.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
slf4j-api-1.5.2.jar
slf4j-log4j-1.5.2.jar

2、hibernate.cfg.xml配置文件
<hibernate-configuration>

<session-factory>
    <!--方言:用于指定数据库类型,生成相应数据库的sql语句  -->
    <property name="dialect">
            org.hibernate.dialect.MySQL5Dialect
    </property>
    <property name="connection.url">
    jdbc:mysql://localhost:3306/eat
    </property>
    <property name="connection.username">root</property>
    <property name="connection.password">lp6163271</property>
    <property name="connection.driver_class">
        com.mysql.jdbc.Driver
    </property>
    <!-- 显示hibernate自动生成的sql语句 -->
    <property name="show_sql">true</property>
    <!-- 将显示出来的格式化一下 -->
    <property name="format_sql">true</property>
    
    <mapping class="test.Anno"/>    
</session-factory>

</hibernate-configuration>
其中配置文件还是基本和原来一致的,一定要加上 <mapping class="test.Anno"/> ,否则会找不到映射文件而报错。

3、实体类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package test;
 
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
 
@Entity
@Table(name="test")
public class Anno {
     
    private int id;
     
    private String name;
 
    @Id
    public int getId() {
        return id;
    }
 
    public void setId(int id) {
        this.id = id;
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    @Override
    public String toString() {
        return "Anno [id=" + id + ", name=" + name + "]";
    }
     
     
}

  

1
2
@Entity  实体类
@Table(name="test") 关联的表名<br>@id 主键<br><br>4、编写测试类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package test;
 
import java.util.List;
 
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;
import test.Anno;
 
public class Test {
 
    public static void main(String[] args) {
        SessionFactory sf=new AnnotationConfiguration().configure("/hibernate.cfg.xml").buildSessionFactory();
        Session session=sf.openSession();
        String hql=" from Anno";
        Query query=session.createQuery(hql);
        List<Anno> list=query.list();
        System.out.println(list);
    }
 
}

  

 
这要强调的是 得到SessionFactory 不再是 new一个configuration 而是 AnnotationConfiguration

5、配置好了之后,就可以调试成功了。

虽然这个demo简单,刚开始做jar包的问题搞了好大一会,还有后来编写测试类new的对象不对,每天进步一点点。 驾驾驾!


Hibernate注解学习1,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。