Hibernate学习篇01——Hibernate基础

来源:互联网 发布:手机阿里云系统 编辑:程序博客网 时间:2024/05/29 14:48

第一篇就演示下最简单的例子。

目录结构



表结构

drop table user1;create table USER1(  ID       VARCHAR2(32) primary key,  USERNAME VARCHAR2(32),  PASSWORD VARCHAR2(32),  NAME     VARCHAR2(32));insert into user1 (id,username,password,name) values ('8a8703de51d2e86e0151d2e870690000','zhangsan','111111','zs');insert into user1 (id,username,password,name) values ('8a8703de51d2e45c0151d2e45de00000','lisi','222222','ls');commit;
hibernate.cfg.xml
<?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>     <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>    <property name="connection.url">jdbc:oracle:thin:@localhost:1521:ZELS</property>    <property name="connection.username">LEARNING</property>    <property name="connection.password">LEARNING</property>    <property name="dialect">org.hibernate.dialect.Oracle10gDialect</property><property name="show_sql">true</property><!-- <property name="hibernate.hbm2ddl.auto">update</property> --><mapping resource="com/masteringhibernate/a01base/User.hbm.xml" />  </session-factory></hibernate-configuration>
User.hbm.xml
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"><hibernate-mapping package="com.masteringhibernate.a01base"><class name="User" lazy="true" table="USER1"><id name="id"><generator class="uuid"/></id><property name="username" /><property name="password" /><property name="name" /></class></hibernate-mapping>
User.java

package com.masteringhibernate.a01base;public class User {private String id;private String username;private String password;private String name;//getter and setter}

Test.java

package com.masteringhibernate.a01base;import java.util.List;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;public class Test {private static SessionFactory sessionFactory;public static void main(String[] args) {init();selectAll();System.out.println("========================");update();selectAll();System.out.println("========================");insert();selectAll();System.out.println("========================");delete();selectAll();}private static void init(){Configuration configuration = new Configuration().configure("com/masteringhibernate/a01base/hibernate.cfg.xml");sessionFactory = configuration.buildSessionFactory();}private static void selectAll(){Session session = sessionFactory.openSession();Query query = session.createQuery("from User");List<User> list = query.list();for(User user:list){System.out.println("id:"+user.getId()+"\t\tusername:"+user.getUsername()+"\t\tpassword:"+user.getPassword()+"\t\tname:"+user.getName());}session.close();}private static void update(){Session session = sessionFactory.openSession();session.beginTransaction();////User user = (User)session.get(User.class, "8a8703de51d2e86e0151d2e870690000");User user = (User)session.createQuery("from User where username='zhangsan'").list().get(0);user.setPassword("123456");session.update(user);session.getTransaction().commit();session.close();}private static void insert(){Session session = sessionFactory.openSession();session.beginTransaction();User user = new User();user.setUsername("abc");user.setPassword("123");user.setName("abc123");session.getTransaction().commit();session.close();}private static void delete(){Session session = sessionFactory.openSession();session.beginTransaction();User user = (User)session.createQuery("from User where username='abc'").list().get(0);session.delete(user);session.getTransaction().commit();session.close();}}
下面是log

Hibernate: select user0_.id as id0_, user0_.username as username0_, user0_.password as password0_, user0_.name as name0_ from USER1 user0_
id:8a8703de51d2e86e0151d2e870690000 username:zhangsanpassword:111111name:zs
id:8a8703de51d2e45c0151d2e45de00000 username:lisipassword:222222name:ls
========================
Hibernate: select user0_.id as id0_, user0_.username as username0_, user0_.password as password0_, user0_.name as name0_ from USER1 user0_ where user0_.username='zhangsan'
Hibernate: update USER1 set username=?, password=?, name=? where id=?
Hibernate: select user0_.id as id0_, user0_.username as username0_, user0_.password as password0_, user0_.name as name0_ from USER1 user0_
id:8a8703de51d2e86e0151d2e870690000 username:zhangsanpassword:123456name:zs
id:8a8703de51d2e45c0151d2e45de00000 username:lisipassword:222222name:ls
========================
Hibernate: select user0_.id as id0_, user0_.username as username0_, user0_.password as password0_, user0_.name as name0_ from USER1 user0_
id:8a8703de51d2e86e0151d2e870690000 username:zhangsanpassword:123456name:zs
id:8a8703de51d2e45c0151d2e45de00000 username:lisipassword:222222name:ls
========================
Hibernate: select user0_.id as id0_, user0_.username as username0_, user0_.password as password0_, user0_.name as name0_ from USER1 user0_ where user0_.username='zhangsan'
Hibernate: delete from USER1 where id=?
Hibernate: select user0_.id as id0_, user0_.username as username0_, user0_.password as password0_, user0_.name as name0_ from USER1 user0_
id:8a8703de51d2e45c0151d2e45de00000 username:lisipassword:222222name:ls

0 0
原创粉丝点击