-
创建session对象的2种方法:sessionFactory.openSession()、sessionFactory.getCurrentSession(),前者相当于多例,后者相当于单例。前者创建的session对象要手动关闭,不关闭的话,再次创建session时,就会创建新的session,两个session的hashCode不同;后者创建的session会在事务提交后自动关闭,不需要手动关闭,再次创建的session与已关闭的session是一致的,hashCode相同。查看全部
-
hibernate.cfg.xml常用配置查看全部
-
hibernate增删改查查看全部
-
最简单暴力的方法就是在提交事务之后用System.out.println(session);分别输出session1和session2。如果关闭了会输出SessionImpl(<closed>),未关闭会输出一大长串信息。查看全部
-
@墨上清:不知道你有没有看到hibernate打印的日志,如果你没有设置数据库连接池,那么初始连接池的大小是20,最小是1,也就是说当你启动hibernate的时候,hibernate就初始化了一个connection对象放在你的数据库连接池里面了。如果你第一次调用openSession的时候,hibernate直接就把连接池里面的connection对象给你了,但是如果你没有关闭session,那么这个connection对象就没有被释放,所以当你再次调用openSession的时候,hibernate就会创建一个新的connection对象,如果一直这样,连接池就溢出了查看全部
-
java的原则 1.公有的类 2.提供公有的不带参数的默认构造方法 3.属性私有 4.属性setter、getter封装查看全部
-
失败了无数次,原来错在这 hibernate.cfg.xml文件中的url元素要改为实际的:(不然无法正常写入) <property name="connection.url">jdbc:mysql://127.0.0.1:3306/hibernate?useUnicode=true&characterEncoding=UTF-8</property>查看全部
-
对象类型查看全部
-
<session-factory> <property name="connection.username">root</property> <property name="connection.password">1149754829</property> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://hibernateuseUnicode=true&characterEncoding=UTF-8</property> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <property name="show_sql">true</property> <property name="format_sql">true</property> <property name="hbm2ddl.auto">create</property> </session-factory>查看全部
-
Hibernate 对象类型查看全部
-
hibernate 执行流程查看全部
-
各种基本类型查看全部
-
Hibernate查看全部
-
session与connection是多对一或一对一的关系。查看全部
-
session可理解为操作数据库的对象。查看全部
举报
0/150
提交
取消