- 浏览: 52424 次
- 性别:
- 来自: 深圳
最新评论
一、首先找hibernate.properties文件
hibernate.dialect=org.hibernate.dialect.MySQLDialect hibernate.connection.driver_class=com.mysql.jdbc.Driver hibernate.connection.url=jdbc:mysql://192.168.18.184:3306/SAMPLEDB hibernate.connection.username=root hibernate.connection.password= hibernate.show_sql=true
二、其次找类配置文件 例如:Monkey.hbm.xml
<?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> <class name="mypack.Monkey" table="MONKEYS"> <id name="id" column="ID" type="long"> <generator class="increment"/> </id> <property name="name" column="NAME" type="string" not-null="true"/> <property name="age" column="AGE" type="int"/> <property name="gender" column="GENDER" type="character"/> </class> </hibernate-mapping>
三、使用Service类 备注:经过改造后笔记
public static SessionFactory sessionFactory;
static {
try {
Configurationconfig = new Configuration();
config.addClass(Monkey.class);
sessionFactory =config.buildSessionFactory();
} catch (RuntimeException e) {
// TODO: handle exception
e.printStackTrace();
throw e;
}
}
public void findAllMonkeys() {
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx =session.beginTransaction();
//
Query query = session
.createQuery("from Monkey as morder by m.id asc")
@SuppressWarnings("unchecked")
List<Monkey> monkeys= query.list();
//
s.save(m);
//
Monkey m = (Monkey)session.get(Monkey.class, monkey_id);
m.setAge(age);
//
session.delete(monkey);
tx.commit();
} catch (RuntimeException e) {
// TODO: handle exception
if (tx != null) {
tx.rollback();
}
throw e;
} finally {
session.close();
}
}
四、升级配置文件 Monkey.hbm.xml
1.dynamic-insert="true" dynamic-update="true" 动态版插入更新 2.access="field" 不是要get set直接采用属性 3.formula 无属性也可以直接查数据库组装数据 4.在class中声明mutable=”false” 或 @Immutable 这意味着对该类的更新将会被忽略,不过不会抛出异常,只允许有增加和删除操作。 在class中声明mutable=”false”:insert=允许,delete=允许,update=不允许 在集合中声明mutable=”false” 或 @Immutable 这意味着在这个集合中插入记录或删除孤行是不允许的,否则会抛出异常。只允许更新操作。 不过,如果启用级联删除的话,当父类被删除时,其所有子类也将被删除,即使它是mutable的。 在集合中声明mutable=”false”:insert=不允许,孤行删除=不允许,delete=允许,update=允许
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/HibernateMapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="mypack.Monkey" table="MONKEYS" dynamic-insert="true" dynamic-update="true" > <!-- mutable="ture" --> <id name="id"> <generator class="increment"/> </id> <property name="name" column="NAME" /> <property name="gender" column="GENDER" access="field" /> <property name="age" column="AGE" /> <property name="avgAge" formula="(select avg(m.AGE) from MONKEYS m)" /> <property name="description" type="text" column="`MONKEY DESCRIPTION`"/> </class> </hibernate-mapping>
五、升级配置hibernate.properties --》hibernate.cfg.xml 不过需显示调用
Service类
public static SessionFactory sessionFactory; static { try { Configuration config = newConfiguration(); config.configure(); sessionFactory = config.buildSessionFactory(); } catch (RuntimeException e) { // TODO: handle exception e.printStackTrace(); throw e; } }
<?xml version="1.0"encoding="utf-8" ?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/HibernateConfiguration DTD//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory > <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/sampledb</property> <property name="connection.username">root</property> <property name="connection.password">1234</property> <property name="show_sql">true</property> <mapping resource="mypack/Monkey.hbm.xml" /> </session-factory> </hibernate-configuration>
六、高级综合版 Spring中dao-config.xml xml引用sqlResource.properties
//配置文件配置 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location"> <value>classpath:sqlResource.properties</value> </property> </bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName"> <value>${database.driverclassname}</value></property> <property name="url"><value>${database.url}</value></property> <property name="username"><value>${database.username}</value></property> <property name="password"><value>${database.password}</value></property> <property name="maxActive"><value>10</value></property> <property name="maxWait"><value>3000</value></property> <property name="maxIdle"><value>5</value></property> </bean>
七、高级综合版 直接配置Spring中dao-config.xml
//直接配置
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://192.168.18.184:3306/moniter?characterEncoding=UTF-8" />
<property name="username" value="root" />
<property name="password" value="" />
</bean>
发表评论
-
Tomcat与Jetty插件 配置根路径指定项目
2013-04-16 19:16 2876Tomcat config/service.xml ... -
Struts2注解(旧&新)
2013-04-01 11:24 938旧版本使用注解: 开始使用注解使用的是 struts2-c ... -
Hibernate学习笔记(九)【高级篇】并发、Session管理
2012-11-06 17:30 1007数据库事务级别 以及对应 Hibernate事务码 先查 m ... -
Hibernate学习笔记(八)【映射实体关系】
2012-11-06 15:34 652本文只简略的介绍关系,详细标签描述参考http://blog. ... -
Hibernate学习笔记(七)【映射值类型集合】
2012-10-31 21:02 767Set <hibernate-mapping & ... -
Hibernate学习笔记(五)【映射组成关系】
2012-10-30 21:24 684标配BASE <hibernate-mapping & ... -
Hibernate学习笔记(六)【映射继承关系】
2012-10-30 22:34 707场景有个User类,然后扩展出了Student类和Te ... -
Hibernate学习笔记(二)【标识符及基本级联配置】
2012-09-30 15:16 962标识符 increment 用于代理主键.由Hibernat ... -
Hibernate学习笔记(三)【配置详解】
2012-09-30 15:20 811Hibernate配置翻译 <hibernate-ma ... -
Hibernate学习笔记(四)【操纵对象篇】
2012-09-30 16:05 972A Session的缓存作用 1 ...
相关推荐
4 hibernate基础配置(重点) 5 ID生成策略(重点 AUTO) 6 Hibernate核心开发接口介绍(重点) ... 风格 1 先脉络,后细节 2 先操作,后原理 3 重Annotation,轻xml配置文件 ... 性能优化 1 注意...
Hibernate学习笔记(java的) 包括基础的使用和配置,有Hibernate的控制事务,映射关系等内容。 可快速入门,也可当手册使用。 更多:http://download.csdn.net/user/daillo/all
第10课 模拟Hibernate原理(OR模拟) 第11课 Hibernate基础配置 第16课 关系映射(重点 Annotation注解)
第11课 Hibernate基础配置 15 一、 提纲 15 二、 介绍MYSQL的图形化客户端 16 三、 Hibernate.cfg.xml:hbm2ddl.auto 16 四、 搭建日志环境并配置显示DDL语句 16 五、 搭建Junit环境 16 六、 ehibernate.cfg.xml : ...
4 hibernate基础配置(重点) 5 5 ID生成策略(重点 AUTO) 5 6 Hibernate核心开发接口介绍(重点) 5 7 对象的三种状态(了解) 5 8 关系映射(重点) 5 9 Hibernate査询(HQL) 5 10 在Struts基础上继续完善BBS200 5...
Hibernate学习笔记..........180 第一章 Hibernate入门.....................180 第二章 对象/关系映射基础.............183 第三章 关联关系映射......................185 第四章 操纵持久化对象....................
Hibernate学习笔记..........180 JavaEE@xuxiang 3 Java/JavaEE学习笔记Jonny xuxiang5612@sina.com 第一章 Hibernate入门.....................180 第二章 对象/关系映射基础.............183 第三章 关联关系映射....
Appfuse是Matt Raible 开发的一个指导性的入门级J2EE框架,它对如何集成流行的Spring、Hibernate、iBatis、Struts、xDcolet、Junit、Taperstry、JSF等基础框架给出了示范。在持久层,AppFuse采用了Hibernate O/R映射...
Appfuse是Matt Raible 开发的一个指导性的入门级J2EE框架,它对如何集成流行的Spring、Hibernate、iBatis、Struts、xDcolet、Junit、Taperstry、JSF等基础框架给出了示范。在持久层,AppFuse采用了Hibernate O/R映射...
{1}Java基础}{17}{chapter.1} {1.1}基本语法}{17}{section.1.1} {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{subsection.1.3.1} {1.4}数据类型}{23}{section.1.4} {...
2 jcs学习笔记 3 关于Hibernate的Cache问题 4 用缓冲技术提高JSP应用的性能和稳定性 5 SwarmCache入门 <br> 源代码研究 1 Jive中的全局配置 2 Jive源代码情景分析-index....