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