- 浏览: 105704 次
- 来自: 北京
文章分类
最新评论
-
^=^:
原来是数字自动转换为对象的意思啊,这样岂不是重用内存变多了。
说说java的自动装箱(autoboxing)和拆箱(unboxing) -
qi90mufeng:
刚好我正需要,谢谢了
hibernate最初印象---helloworld的实现 -
mlc0202:
freedxz 写道好几个 WARN 不处理一下?这个只是当时 ...
hibernate最初印象---helloworld的实现 -
freedxz:
好几个 WARN 不处理一下?
hibernate最初印象---helloworld的实现 -
wzq6578702:
马哥,威武----
感觉路又清晰了
马士兵_JAVA自学之路
最近,由于种种原因,开始接触hibernate,今天实现了第一个hibernate的入门程序,也就是经典的helloworld,个人喜欢在框架学习的时候,把最基本的helloworld程序的开发过程详细的写下来,以备日后搭建环境时作为参考,步入正题,说说hibernate的helloworld的开发。
以贴图为主,先来看看hibernate工程的目录结构
目录的结构很清晰,额外说一句,我是采用的hibernate4的jar包,具体下载,详见hibernate官网的下载目录,还有我采用的是mysql的数据库,所以,mysql的连接jar文件必不可少
Studnet是一个model,具体实现,参见下面代码
package com.bjsxt.hibernate.model; public class Student { private int id; private String name; private int age; 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; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
hibernate的配置文件
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- Database connection settings --> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/hibernate</property> <property name="connection.username">root</property> <property name="connection.password">mlc</property> <!-- JDBC connection pool (use the built-in) --> <!-- <property name="connection.pool_size">1</property> --> <!-- SQL dialect --> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- Enable Hibernate's automatic session context management --> <!-- <property name="current_session_context_class">thread</property> --> <!-- Disable the second-level cache --> <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property> <!-- Echo all executed SQL to stdout --> <property name="show_sql">true</property> <!-- Drop and re-create the database schema on startup --> <!-- <property name="hbm2ddl.auto">update</property> --> <mapping resource="com/bjsxt/hibernate/model/Student.hbm.xml"/> </session-factory> </hibernate-configuration>
hibernate的映射关系配置文件
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.bjsxt.hibernate.model"> <class name="Student" table="student"> <id name="id"> </id> <property name="name"/> <property name="age"/> </class> </hibernate-mapping>
用于测试hibernate的java类
package com.bjsxt.hibernate.model; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class StudentTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Student stu = new Student(); stu.setAge(2); stu.setId(2); stu.setName("mlc"); Configuration cf = new Configuration(); SessionFactory sf = cf.configure().buildSessionFactory(); Session session =sf.openSession(); session.beginTransaction(); session.save(stu); session.getTransaction().commit(); session.close(); sf.close(); } }
运行结果
2011-12-22 10:34:13 org.hibernate.annotations.common.Version <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.0.CR2} 2011-12-22 10:34:13 org.hibernate.Version logVersion INFO: HHH000412: Hibernate Core {4.0.0.CR5} 2011-12-22 10:34:13 org.hibernate.cfg.Environment <clinit> INFO: HHH000206: hibernate.properties not found 2011-12-22 10:34:13 org.hibernate.cfg.Environment buildBytecodeProvider INFO: HHH000021: Bytecode provider name : javassist 2011-12-22 10:34:13 org.hibernate.cfg.Configuration configure INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml 2011-12-22 10:34:13 org.hibernate.cfg.Configuration getConfigurationInputStream INFO: HHH000040: Configuration resource: /hibernate.cfg.xml 2011-12-22 10:34:13 org.hibernate.internal.util.xml.DTDEntityResolver resolveEntity WARN: HHH000223: Recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide! 2011-12-22 10:34:13 org.hibernate.cfg.Configuration addResource INFO: HHH000221: Reading mappings from resource: com/bjsxt/hibernate/model/Student.hbm.xml 2011-12-22 10:34:13 org.hibernate.internal.util.xml.DTDEntityResolver resolveEntity WARN: HHH000223: Recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide! 2011-12-22 10:34:13 org.hibernate.cfg.Configuration doConfigure INFO: HHH000041: Configured SessionFactory: null 2011-12-22 10:34:13 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!) 2011-12-22 10:34:13 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000115: Hibernate connection pool size: 20 2011-12-22 10:34:13 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000006: Autocommit mode: false 2011-12-22 10:34:13 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000401: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost:3306/hibernate] 2011-12-22 10:34:13 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000046: Connection properties: {user=root, password=****} 2011-12-22 10:34:14 org.hibernate.dialect.Dialect <init> INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQLDialect 2011-12-22 10:34:14 org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService INFO: HHH000399: Using default transaction strategy (direct JDBC transactions) 2011-12-22 10:34:14 org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory <init> INFO: HHH000397: Using ASTQueryTranslatorFactory Hibernate: insert into student (name, age, id) values (?, ?, ?) 2011-12-22 10:34:14 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl stop INFO: HHH000030: Cleaning up connection pool [jdbc:mysql://localhost:3306/hibernate]
基本就这些了,做点备注吧
首先,本身的目录的结构是约定俗称的一种配置,包括文件的命名 其次,hibernate的映射文件,必须保证要数据库中要有相应的表与之对应,或者名称是对应的,或者,自行指定也可以 最后,hibernate的映射文件中,id是代表了表的主键值,property是其它的属性值 特别提醒: 对于配置文件,最好还是从原始的参考文档中直接复制粘贴,而不要自己敲或者其它什么的,没啥技术含量,而且容易出错
如果在细节上,有什么问题,可以针对性的交流
评论
3 楼
qi90mufeng
2012-10-19
刚好我正需要,谢谢了
2 楼
mlc0202
2012-05-18
freedxz 写道
好几个 WARN 不处理一下?
这个只是当时做的一个入门程序,跑起来看到效果就行
1 楼
freedxz
2012-05-18
好几个 WARN 不处理一下?
发表评论
-
Hibernate性能优化
2012-05-25 22:23 15091、针对Mysql数据库而 ... -
Hibernate 延迟加载的“秘密”
2012-05-25 22:17 1033Hibernae 的延迟加载是一个非常常用的技术,实体的 ... -
hibernate效率问题
2012-05-25 21:37 3225关于hibernate效率问题讨论的整理最近在csdn上看到一 ... -
hibernate+proxool
2012-05-14 09:58 873搞了一天的在hibernate ... -
Hibernate性能测试
2012-05-10 10:36 1152在向大家详细介绍Hiberna ... -
用jtds连接SQL2008的方法
2012-05-09 13:15 1792要点: 数据库URL:jdbc:jtds:s ... -
Hibernate 与 Spring 多数据源的配置
2012-05-05 11:34 1100Hibernate 与 Spring 多数据源的配置 S ... -
Hibernate JDBC比较及系统调优
2012-05-04 16:45 1093Hibernate与JDBC比较 ... -
jdbc与hibernate的优缺点比较(转载的精髓)
2012-05-04 16:41 1101一、 Hibernate是JDBC的 ... -
Hibernate访问多个数据库
2012-05-04 11:21 1067本文描述Hibernate访问多个数据库的操作步骤。思路就是, ... -
查询数据库的隔离级别
2012-04-16 11:48 761select @@tx_isolation; 可 ... -
在Hibernate配置文件中设置隔离级别
2012-05-03 21:24 904JDBC连接数据库使用的是默认隔离级别,即读操作已提交(Rea ... -
在Hibernate配置文件中设置隔离级别
2012-05-03 20:30 0JDBC连接数据库使用的是默认隔离级别,即读操作已提交(Rea ... -
hibernate对象的三种状态
2012-03-30 11:07 757Hibernate的透明持久化用起来非常舒服,有时甚至忘记了数 ... -
开发ssh框架程序推荐的目录结构
2012-03-18 06:57 1044开发ssh框架程序推荐 ... -
hibernate的Anotation的应用
2011-12-22 17:14 752A friend is never known till a ... -
hibernate执行流程
2011-12-22 16:13 1860"After you" is good ...
相关推荐
hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-4.1.12.Final.jar hibernate-ehcache-4.1.12.Final.jar hibernate-entitymanager-4.1.12.Final.jar hibernate-jpa-2.0-api-1.0.1.Final.jar ...
赠送jar包:hibernate-jpa-2.1-api-1.0.2.Final.jar; 赠送原API文档:hibernate-jpa-2.1-api-1.0.2.Final-javadoc.jar; 赠送源代码:hibernate-jpa-2.1-api-1.0.2.Final-sources.jar; 赠送Maven依赖信息文件:...
《深入理解Hibernate配置与映射:hibernate-configuration-3.0.dtd与hibernate-mapping-3.0.dtd解析》 在Java世界里,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。而`hibernate-...
赠送jar包:hibernate-jpa-2.1-api-1.0.2.Final.jar; 赠送原API文档:hibernate-jpa-2.1-api-1.0.2.Final-javadoc.jar; 赠送源代码:hibernate-jpa-2.1-api-1.0.2.Final-sources.jar; 赠送Maven依赖信息文件:...
hibernate-jpa-2.1-api-1.0.0.final-sources.jar 源码 hibernate-jpa-2.1-api-1.0.0.final-sources.jar 源码
很多人为了配置jpa找这个动态产生字节码的jar文件,hibernate-distribution-3.3.1.GA包太大,而hibernate-distribution-3.3.2.GA的jar没有这个jar文件,希望对大家有用
在本文中,我们将深入探讨`hibernate-commons-annotations-5.0.1.Final.jar`的源码,了解其内部结构和主要功能。 一、元数据注解 HCA的核心在于提供了一系列的注解,如`@Entity`、`@Table`、`@Column`、`@Id`等,...
hibernate-jpa-2.0-api-1.0.1.Final.jar
hibernate-jpa-2.0-api-1.0.1.Final-sources.jar hibernate jpa 源代码
hibernate-core-5.4.24.Final.jar
使用hibernate-validator 进行校验的jar包,里面包括了基础hibernate-validator-5.0.0.CR2.jar hibernate-validator-annotation-processor-5.0.0.CR2.jar 之外,还包括了el-api-2.2.jar javax.el-2.2.4等项目必不可...
`hibernate-jpa-2.1-api-1.0.0.final.jar`是Hibernate对JPA 2.1规范的实现库,它使得开发者能够使用Hibernate的高效功能同时遵循JPA规范。 **1. Hibernate与JPA的关系** Hibernate最初作为一个独立的ORM框架,后来...
Hibernate稳定版(hibernate-release-5.3.23.Final.zip),Hibernate ORM 是一个为应用程序、库和框架提供对象/关系映射 (ORM) 支持的库。它还提供了 JPA 规范的实现,这是 ORM 的标准 Java 规范。
hibernate-commons-annotations-4.0.1.Final.jar
hibernate-mapping-3.0.dtd 配置后,就会在xml中进行提示
hibernate-commons-annotations-5.1.0.Final.jar
javaEE框架Hibernate安装包 hibernate-release-5.0.7.Final
hibernate-jpa-2.1-api-1.0.0.Final.jar官方下载,请放心使用
hibernate-release-5.0.7.Final压缩包 -document -lib -project 内部Hibernate依赖库: antlr-2.7.7.jar dom4j-1.6.1.jar geronimo-jta_1.1_spec-1.1.1.jar hibernate-commons-annotations-5.0.1.Final.jar ...
【标题】"hibernate-release-4.1.4" 是Hibernate框架的一个版本发布,具体为4.1.4.Final。Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发人员在处理数据库时使用面向对象的概念,极大地简化了数据库...