Annotation版本的HelloWorld

hiberante 的 annotation历史:

在hibernate3以后,开始支持Annotation;

先有hiberante再有JPA,有了JPA标准之后,hibernate写了Annotation来支持JPA;
所以 hibernate的annotation是JPA标准之下的,一般都直接用JPA的annotation,hibernate的annotation只有在极少的情况下才使用。

1、创建teacher表,create table teacher(id int primary key, name varchar(20),title varchar(10));
2、创建 Teacher 类

3、在 hibernate lib 中加入 annotation 的 jar 包

在 hibernate 这个 User Libaray 中添加支持annotation的jar包:

  a) hibernate annotations jar


  b) ejb3 persistence jar
  c) hibernate common annotations jar
  d) 注意文档中没有提到 hibernate common annotations jar 文件

4、参考 Annotation 文档建立对应的注解

为 Teacher 类添加注解

 1 package com.bjsxt.hibernate.model;
 2
 3 import javax.persistence.Entity;
 4 import javax.persistence.Id;
 5 import javax.persistence.Table;
 6
 7 @Entity
 8 @Table(name="teacher")
 9 public class Teacher {
10
11     private Integer id;
12
13     private String name;
14
15     private String title;
16
17     @Id
18     public Integer getId() {
19         return id;
20     }
21
22     public void setId(Integer id) {
23         this.id = id;
24     }
25
26     public String getName() {
27         return name;
28     }
29
30     public void setName(String name) {
31         this.name = name;
32     }
33
34     public String getTitle() {
35         return title;
36     }
37
38     public void setTitle(String title) {
39         this.title = title;
40     }
41
42 }

注意:类属性的注解一般都写在该属性的get方法上,约定俗成:如id属性的注解写在getId()上。

5、在 hibernate.cfg.xml 建立对应映射 <mapping class=... />

  Teacher的映射:<mapping class="com.bjsxt.hibernate.model.Teacher" />

6、参考文档进行测试(注意文档中缺少 configure()的小bug)

 1 import org.hibernate.Session;
 2 import org.hibernate.SessionFactory;
 3 import org.hibernate.cfg.AnnotationConfiguration;
 4 import org.hibernate.cfg.Configuration;
 5
 6 import com.bjsxt.hibernate.model.Teacher;
 7
 8 public class TeacherTest {
 9
10     public static void main(String[] args) {
11         Teacher t = new Teacher();
12         t.setId(1);
13         t.setName("t1");
14         t.setTitle("中级");
15
16         //改为new AnnotationConfiguration()
17         Configuration cfg = new AnnotationConfiguration();
18         SessionFactory sf = cfg.configure().buildSessionFactory();
19         Session session = sf.openSession();
20         session.beginTransaction();
21
22         session.save(t);
23
24         session.getTransaction().commit();
25         session.close();
26         sf.close();
27     }
28
29 }

注意 Configuration cfg = new AnnotationConfiguration();

链接: http://pan.baidu.com/s/1eSvHWbg 密码: 63cy

所需jar包:链接: http://pan.baidu.com/s/1dEDKHln 密码: s4bq

FAQ:@不给提示
a) content assist - activation - 加上@

时间: 2024-10-27 07:17:32

Annotation版本的HelloWorld的相关文章

hibernate Annotation版本的helloworld

经过第一次的 hibernate  我发现每一个数据库表都对应了一个类,并且每一个类都要新建一个文件进行配置 很麻烦!  于是便出现了Annotation版本的hibernate. 具体如下: 1.同样的 先新建一个java project. 2.导入hibernate插件(选中项目单击鼠标右键-->my eclipse-->project  facets-->hibernate-->next-->新建一个包选中-->next-->去掉上面那个勾-->fin

陶顺利 建立annotation版本的helloworld

1.在前一个项目的基础上新建一个实体类teacher,属性有id,name,title. import javax.persistence.Id;@Entitypublic class Teacher { private int id; private String name; private String title;  @Id public int getId() {  return id; } public void setId(int id) {  this.id = id; } 2.建

Hibernate---第一个helloworld程序 (XML版本, annotation版本)

Hibernate作为JPA的一种实现,jpa的注解已经是hibernate的核心,hibernate只提供了一些补充,而不是两套注解.hibernate对jpa的支持够足量,在使用hibernate注解建议使用jpa XML版本过程: 新建工程, 导入hibernate包, 数据库包, 建立数据库表, 新建model类, 测试类, 新建src下hibernate.cfg.xml, model 类下 Student.hbm.xml annotation版本过程: 新建工程, 导入hibernat

EJB2.0版本的HelloWorld

EJB2.0版本的HelloWorld 虽然EJB3.1已经出来了,可是EJB2.0的项目还需要维护啊.下面写个简单EJB2.0的HelloWorld程序,练练手. 环境: JBoss 4.0.2 JDK1.5 IDEA8.1.4 一.开发EJB组件 1.开发Bean类 package lavasoft.testejb20; import javax.ejb.SessionBean; import javax.ejb.SessionContext; /** * Bean类 * 所有具体的业务逻辑

Nginx版本的“helloworld”

Nginx模块概述 Nginx的模块不能够像Apache那样动态添加,所有的模块都要预先编译进Nginx的二进制可执行文件中. Nginx模块有三种角色: (1)Handlers(处理模块)–用于处理HTTP请求并输出内容. (2)Filters(过滤模块)–用于过滤Headler输出的内容. (3)Load-balancers(负载均衡模块)–当有多台服务器供选择时,选择一台后端服务器并将HTTP请求转发到该服务器. hello world模块编写与安装 (1)执行以下命令,在该目录内编写我们

马士兵hibernate(原始笔记)

马士兵hibernate(原始笔记) 课程内容 1        HelloWorld a)   Xml b)   annotation 2        Hibernate原理模拟 - 什么是O/R Mapping以及为什么要有O/R Mapping 3        常见的0/R框架(了解) 4        hibernate基础配置(重点) 5        ID生成策略(重点 AUTO) 6        Hibernate核心开发接口介绍(重点) 7        对象的三种状态(了

hibernate入门知识

课程内容 1        HelloWorld a)   Xml b)   annotation 2        Hibernate原理模拟 - 什么是O/R Mapping以及为什么要有O/R Mapping 3        常见的0/R框架(了解) 4        hibernate基础配置(重点) 5        ID生成策略(重点 AUTO) 6        Hibernate核心开发接口介绍(重点) 7        对象的三种状态(了解) 8        关系映射(重点

Hibernate学习笔记_helloworld

一,Hibernate结构图 二,HelloWorld 1,建立hebernate配置文件hibernate.cfg.xml <--hibernate.cfg.xml--> <?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http:/

从字节码层面看“HelloWorld”

一.HelloWorld 字节码生成 众所周知,Java 程序是在 JVM 上运行的,不过 JVM 运行的其实不是 Java 语言本身,而是 Java 程序编译成的字节码文件.可能一开始 JVM 是为 Java 语言服务的,不过随着编译技术和 JVM 自身的不断发展和成熟,JVM 已经不仅仅只运行 Java 程序.任何能编译成为符合 JVM 字节码规范的语言都可以在 JVM 上运行,比较常见的 Scala.Groove.JRuby等.今天,我就从大家最熟悉的程序“HelloWorld”程序入手,