俗话说今日事今日毕今日事不毕就推给明天也没什么不对
酷我真是他么各种弹窗,
以前我初三时候刚用酷我看蔡依林和周杰伦的mv多好玩
给的文件又没有word文档好烦躁
还要自己想
今天学的是个啥
hibernate
封装了数据库
从头开始
代码倒是不难
就是步骤有点多
1
先导包,9个包,运行,
9个包,
hibernate3.jar一个
lib里面:jpa里面一个,required里面6个
数据库链接:1一个
ok,正好9个
顺便运行了,变成小奶瓶才能用
2
在实体类底下创建xml文件
(对了我想建一个很大的,特别大的数据库)
名字叫 啊不对不是数据库的名字
举个栗子吧 User_hbm.xml
user hibernate mapping的意思~
约束dtd文件呢,在 hibernate3.jar包下 最后一个
hibernate-mapping-3.0.dtd 下~
jar包导入完成嘤嘤嘤
然后开始写文件了
<hibernate-mapping>
<class name=”com.domain.User” table=”user”>
<!--数据库就这么被用了一点也没有啊喂~!-->
<id name=”id” colunm=”id>
<generator class=”native”></generatro>
</id>
<!-- 哦对我想写一个没主键约束的试一试-->
<property name=”username” column=”username”></property>
</class>
</hibernate-mapping>
3
ok 写第二个xml文件
约束文件也是在倒数第二个,在src下建立这个xml文件
这个xml名字很固定~ 叫
hibernate.cfg.xml
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">admin</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hbm2</property>
<!-- 显示由hibernate生成的sql语句 -->
<property name="hibernate.show_sql">true</property>
<!-- 显示格式化之后的sql语句 -->
<property name="hibernate.format_sql">true</property>
<!-- hibernate 默认不会自动提交事务,希望自动提交事务,需要设置 -->
<!-- <property name="hibernate.connection.autocommit">true</property> -->
<!-- 数据库表的生成策略 -->
<property name="hibernate.hbm2ddl.atuo">update</property>
<!-- 获取和当前线程绑定的Session对象 -->
<property name="hibernate.current_session_context_class">thread</property>
<!-- 指明映射文件的位置和名称 -->
<mapping resource="com/qianfeng/domain/User_hbm.xml"></mapping>
</session-factory>
</hibernate-configuration>
嘿,格式刷依旧好用~~
3
好了 最后开始写东西了
写东西也不太难,
Configuration config = new Configuration().configure();
SessionFactory factory = config.buildSessionFactory();
Session session =factory.openSession();
session.beginTransaction();
session.getTransaction().commit();
session.save(user);//增加
User user=(User )Session.get(User.class,1);
session.update(user);//修改
User user=(User )Session.get(User.class,1);
session.delete(user);//删除
查询!查询很多哦少年~
get
load(延迟查询)
Query query = session.createQuery(“from com qianfeng.domain.User where id=1”);
User user = (User)query.uniqueResult();
不想写了 等会写吧
一颗想创建大表的心扑通扑通的在跳动~