hibernate初入门2--Annotation

零基础接触hibernate,在学习的过程中接触到了Annotation(翻译过来“注释”)。在学习过程中, 并不知道annotation怎么发展来的,但通过对比操作,发现了Annotation在编码中简化了对映射文件的编写(虽然很大程度上是copy过来的)!!话不多上,直接将编码过程贴上(菜鸟,写不出高大上的东西,此乃无奈之举)!!

创建数据库

创建实体类Teacher.java

 1 package com.hibernate.Exp150704;
 2
 3 import javax.persistence.Entity;
 4 import javax.persistence.Id;
 5
 6 @Entity//Annotation的特别之处,由于注明此类为实体类
 7 public class Teacher {
 8     //@Id 此处亦可放置注释,用于指代主键,但如果get方法为非标准方式定义的,如通过getSid()获取Id 则可能出现问题!!
 9     private int id;
10     private String name;
11     private String title;
12
13     @Id//表示此为获得实体类所对应的数据库的主键
14     public int getId() {
15         return id;
16     }
17     public void setId(int id) {
18         this.id = id;
19     }
20     public String getName() {
21         return name;
22     }
23     public void setName(String name) {
24         this.name = name;
25     }
26     public String getTitle() {
27         return title;
28     }
29     public void setTitle(String title) {
30         this.title = title;
31     }
32
33
34 }

将实体类添加到配置文件hibernate.cfg.xml中

 1 <?xml version=‘1.0‘ encoding=‘utf-8‘?>
 2 <!DOCTYPE hibernate-configuration PUBLIC
 3         "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
 4         "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
 5 <hibernate-configuration>
 6   <session-factory>
 7     <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
 8     <property name="connection.url">jdbc:mysql://localhost:3306/hibernate</property>
 9     <property name="connection.username">root</property>
10     <property name="connection.password">TAN19911104</property>
11
12     <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
13
14     <property name="cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property>
15
16     <property name="show_sql">true</property>
17
18     <mapping resource="com/hibernate/Exp150702/Student.hbm.xml"/>
19     <mapping class="com.hibernate.Exp150704.Teacher"/>  /*此处为使用Annotation时,配置文件对映射的定义形式  为class = "实体类" */
20   </session-factory>
21 </hibernate-configuration>

测试类 TestDemo.java

 1 package com.hibernate.Exp150704;
 2
 3 import org.hibernate.Session;
 4 import org.hibernate.SessionFactory;
 5 import org.hibernate.cfg.AnnotationConfiguration;
 6 import org.hibernate.cfg.Configuration;
 7 import org.junit.Test;
 8
 9
10 public class TestDemo {
11
12     @Test
13     @SuppressWarnings("deprecation")
14     public void test(){
15
16         Teacher t = new Teacher();
17         t.setId(1);
18         t.setName("小元");
19         t.setTitle("proffessional");
20         //只有AnnotationConfiguration能够获取实体类中使用的Annotation映射
21         Configuration cfg = new AnnotationConfiguration();
22         SessionFactory sf = cfg.configure().buildSessionFactory();
23         Session session = sf.openSession();
24         session.beginTransaction();
25         session.save(t);
26         session.getTransaction().commit();
27         session.close();
28     }
29 }

至此,实验结束!!当然在使用Annotation之前,需加入与Annotation相关的jar包!!本人使用了如下jar包!!最后,有错请指出!!菜鸟一枚还需努力!!

时间: 2024-10-16 10:02:40

hibernate初入门2--Annotation的相关文章

hibernate初入门3--hibernate的简易实现

对hibernate的几天学习大概了解了hibernate的工作原理,本着作为程序员的严谨(为了记忆而已),在此就重现hibernate简易实现的全过程!! 首先,我们知道hibernate是符合ORM对象关系映射的!!所以我们从测试类出发,默认简易的hibernate已实现: 代码如下 1 package com.hibernate.Exp150705; 2 3 import org.junit.Test; 4 5 public class TestDemo { 6 7 8 @Test 9 p

Hibernate初入门1

刚开始接触hibernate,顿时对ORM(对象关系映射 Object Relational Mapping )有了几分崇拜之情,但心也是够累的!!不说太多,直接贴图!! 看到这里,内心也是崩溃的!!一万只尼玛奔过,过时的方法不能用(能力问题,没看懂异常)?!!! 通过千百次的测试,尼玛,网上的资料也太不负责了!!直接copy的hibernate.cfg.xml竟然是错的!!这尼玛<hibernate-configuration>标签也害的我挣扎了那么久!! 1 <?xml versio

Hibernate初入门4--hbm2ddl

在hibernate的配置文件中,存在如下一段代码!! 1 <!-- Drop and re-create the database schema on startup --> 2 <property name="hbm2ddl.auto">create/create-drop/update/validate</property> 在学习当中,完全不知道其中属性标签的值所代表的含义!!标签值有如下四种: (1)create (2)create-dro

Spring MVC注解配置结合Hibernate的入门教程及其代码实例

原文:Spring MVC注解配置结合Hibernate的入门教程及其代码实例 源代码下载地址:http://www.zuidaima.com/share/1787210045197312.htm 1.概述 本文旨在搭建Spring MVC+Hibernate开发框架,通过一个简单的demo讲解Spring MVC的相关配置文件,以及通过注解方式实现简单功能. 开发框架:Spring+Spring MVC+Hibernate(Spring所用的版本为3.0.5). 数据库:MySQL(数据库名称

SpringBoot 初入门

SpringBoot 初入门 关于介绍什么之类的就不讲了,主要做一下学习记录. 1. 启动方式 IDEA 启动 命令行启动: mvn spring-boot:run 部署到服务器启动: 先进行打包, mvn clean package 移动到项目的 target 目录下,可以看到一个后缀名为 jar 的文件,便是刚刚我们打包的 jar 包, 使用命令行启动: java -jar target/luckymoney-0.0.1-SNAPSHOT.jar 传参方式启动: java -jar -Dsp

Hibernate中,基于Annotation的简单树形结构的实现

在系统设计中,经常用到递归性质的树形结果,比如菜单.多级分类等,一般是在同一个表中定义父子关系实现这种结构. 下面是在Hibernate中,基于Annotation的简单树形结构的实现: 第一步:创建Entity类,并添加注解实现关联关系    ps: 主要是利用@ManyToOne 和 @OneToMany 配置在同一个Entity类中实现树形递归的结构.hibernate注解形式比在xml配置更加简洁 TreeNode.java 1 package com.hfut.hibernate; 2

JSON初入门

JSON:Javascript Object Notation 轻量级的数据交换格式 语法规则:(js对象表示语法的子集) 1.数据在名称/值对中 2.数据由逗号分隔 3.花括号{}保存对象 4.中括号[]保存对象 JSON名称/值 数据书写格式:名称/值 包括字段名称(双引号""),中间:隔开 "firstName":"John"     易理解,相当于js中  firstName="John" JSON值 数字(整数/浮点

mybatis初入门

昨天刚接触mybatis,感觉吧. 对于我这个菜鸟来说,能学什么就是什么,完全没有感觉... 还是说说mybatis吧. mybatis的配置xml,实体类,dao. configuration.xml <?xml version="1.0" encoding="UTF-8" ?>      <!DOCTYPE configuration          PUBLIC "-//mybatis.org//DTD Config 3.0//E

【C#Windows 服务】 《一》初入门

[C#Windows 服务] <一>初入门 一.工具: VS2015+NET Framework4.5. 二.操作: 1.新建windows服务的项目: 2.修改windows服务相关内容: 3.预览windows服务代码结构: 4.windows服务生成与发布: 三.代码: 1.测试代码: using ClassLibrary1; using System; using System.Collections.Generic; using System.ComponentModel; usin