• Hibernate个人学习笔记(1)


    连接池c3p0所需jar包:
    Hiberbate开发包-lib-optional-c3p0下全部Jar包

    Hiberbate连接池参数配置:
    Hiberbate开发包-project-etc-hibernate.properties

    hiberbate.cfg.xml参数(放在src下):
    <session-factory>
    <!--配置mysql数据库连接参数-->
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLialect</property>
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/test</property>
    <property name="hibernate.connection.username">root</property>
    <property name="hibernate.connection.password">root</property>
    <!--c3p0连接池参数-->
    <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvidr</property>
    <property name="hibernate.dialect">10</property>
    <property name="hibernate.dialect">5</property>
    <property name="hibernate.dialect">5000</property>
    <property name="hibernate.dialect">10</property>
    <!--打印方法执行sql与相关格式化操作-->
    <property name="hibernate.show_sql">true</property>
    <property name="hibernate.format_sql>true</property>
    <!--加载对象关系映射文件-->
    <mapping resource="com/.../.../.xml"/>
    </session-factory>

    <!--对象关系映射文件常见标记-->
    Xxxx.hbm.xml--放在同名同类包下
    hibernate-mapping根标记、在根标记下的属性可定义些全局的设置
    class--定义一个持久化的实体类 他的两个属性为name和table
    name="类路径" table=要实体化的表(数据库表)
    id--数据库表中的字段映射 他的两个属性为name和column
    name=上面class的name的实体化类中定义的变量 column表中的字段名
    id


    session缓存的作用:
    。减少访问数据库的频率
    。保证缓存中的对象与数据库中的数据同步
    。当缓存中的持久化对象之间存在循环关联关系时,session会保证不出血访问对象图的死循环,一级由死循环引起的JVM堆栈溢出异常

    。当应用程序调用Transaction的commit()方法时,commit()方法会清理缓存,然后再向数据库提交事务
    。当应用程序中显示调用session的flush()方法水,通过session的setFushMode(FlushMode fm)方法来设定清理缓存的时间点
    FlushMode.ALWAYS和FlushMode.AUTO(默认)会清理全部缓存

    持久化应用的生命周期
    。瞬时(Transient)状态
    。持久化(Persistent)状态
    。脱管(detached)状态
    。移除(removed)状态


    作者:冬瓜茶饮料
    出处:http://www.cnblogs.com/dongguacha/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    PHP的strtotime()函数2038年bug问题
    [转]MySQL常用字符串函数
    [转]MySQL日期与时间戳常用函数
    微信公众号开发的一点自我小结,怕自己过后忘了,总结于此。
    [转]去掉IOS下的input 和textarea的内阴影
    [转]Javascript removeChild()删除节点及删除子节点的方法(同样适用于jq)
    能够还原jQuery1.8的toggle的功能的插件
    xp sp3安装.Net 4.0提示严重错误,0x80070643,解决办法2017版
    thinkphp5访问sql2000数据库
    微信网页授权,错误40163,ios正确,安卓错误?
  • 原文地址:https://www.cnblogs.com/dongguacha/p/5274121.html
Copyright © 2020-2023  润新知