一个小项目带你了解Hibernate基础(二)

将“会员卡”信息保存到MySql数据库中的Card表中,进行查询和添加操作。
一个小项目带你了解Hibernate基础(二)_第1张图片

创建数据库的相关代码如下:

create database CardDB
go

use CardDB
go

create table card(
    Id int NOT NULL auto_increment  primary key,
    name varchar(10) ,
    sex varchar(2),
    department varchar(100),
    mobile varchar(11),
    phone varchar(13),
    email varchar(50),
    address varchar(100),
    flag varchar(10) NOT NULL 
)
insert into card values(1,'李逍遥','男','政府机关','13005381456','0538-12345678','[email protected]','中国山东','1');
insert into card values(2,'周伯通','男','银行','13105354321','0531-87654321','[email protected]','山东济南','1');
insert into card values(3,'丘处机','男','大学','123456789','123456789','123456@126com','中国','0');
insert into card values(4,'李莫愁','女','中学','11111111111','22222222','[email protected]','山东','0');
insert into card values(5,'周芷若','女','小学','55555555555','6666666666','[email protected]','泰安','0');

select * from card

create table users(
    Id int auto_increment primary key,
    username varchar(10) not null,
    userpassword varchar(10) not null,
    userrealname varchar(50)
)

insert into users values(1,'zhangsan','12345','张三丰');
insert into users values(2,'lisi','123456','李四');
insert into users values(3,'wangwu','123456789','大刀王五');
insert into users values(4,'zhaoliu','12345','赵柳');

select* from users

按开发过程,其实现步骤依次是:

  • 使用MyEclipse配置数据源
    (1)在MyEclipse中切换界面,选择MyEclipse Database Explorer。

    (2)在DB Browser窗口空白处右击,选择NEW
    一个小项目带你了解Hibernate基础(二)_第2张图片
    一个小项目带你了解Hibernate基础(二)_第3张图片

    (3)在New Database Connection Driver窗口中,Driver template选项选择MySQL Connector/J,依次填入连接字符串,用户名,密码等内容,并导入MySQL驱动包。
    一个小项目带你了解Hibernate基础(二)_第4张图片

    下图为SQL Server的配置:
    一个小项目带你了解Hibernate基础(二)_第5张图片

(4)在新建的mysqlconnect右击,选择Open connection选项。切换界面,回到MyEclipse Java Enterprise界面。
一个小项目带你了解Hibernate基础(二)_第6张图片
  • 新建WEB Project,并添加Hibernate的开发能力
    一个小项目带你了解Hibernate基础(二)_第7张图片
    一个小项目带你了解Hibernate基础(二)_第8张图片

    一个小项目带你了解Hibernate基础(二)_第9张图片
  • 配置C3P0数据库连接池。

    (1)添加c3p0数据库连接池所需jar文件。
    (2)在hibernate.cfg.xml文件中配置c3p0连接池所需参数,具体参数看下图所示图片。
    一个小项目带你了解Hibernate基础(二)_第10张图片
    一个小项目带你了解Hibernate基础(二)_第11张图片
    一个小项目带你了解Hibernate基础(二)_第12张图片

(3)在配置文件中添加如下语句,以保证在运行程序时,控制台显示出对应执行的SQL语句
true

  • 使用Myeclipse创建类和映射文件。

    (1)在src目录下新建包com.hnisc.entity,用于放置数据库Card表对应的Card.java类及Card.hbm.xml映射文件。
    一个小项目带你了解Hibernate基础(二)_第13张图片
    (2)切换到MyEclipse Database Explorer窗口,在Card表上右击,选择Hibernate Reverse Engineering。
    一个小项目带你了解Hibernate基础(二)_第14张图片
    一个小项目带你了解Hibernate基础(二)_第15张图片
    一个小项目带你了解Hibernate基础(二)_第16张图片
  • 测试代码

    (1)在项目上新建source folder,命名为org.test,在此包下新建CardDaoTest类,并包含main方法。
    一个小项目带你了解Hibernate基础(二)_第17张图片
    一个小项目带你了解Hibernate基础(二)_第18张图片

    (2)在CardDaoTest类中,新建如下代码。

import java.util.List;




import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import com.hnisc.entiy.Card;

import SessionFactory.HibernateSessionFactory;


public class CardDaoTest {
    private Session session;
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        CardDaoTest tu=new CardDaoTest();
        tu.queryCard();
        tu.savaCardz();
    
        
    }
    
    
    public void queryCard(){
        
        session=HibernateSessionFactory.getSession();
        try{
            Query query=session.createQuery("from Card");
            List list =query.list();
            for(Object o:list){
                Card card=(Card)o;
                System.out.println(card.getName());
                System.out.println(card.getAddress());
                System.out.println(card.getEmail());
            }
            
        }catch(Exception e){
            System.out.println(e);
        }
    }
    
    
    public void savaCardz(){
        session=HibernateSessionFactory.getSession();
        Transaction td=session.beginTransaction();
        Card card=new Card("张晓晓","女","公务员","11111","21343","11@qq,com","zhnag","1");
        try{
            session.save(card);
            td.commit();
            
        }
        catch(Exception e){
            td.rollback();
            
        }finally{
            HibernateSessionFactory.closeSession();
        }
    }
    
}

(3)运行java文件来进行测试结果。

hibernate.cfg.xml代码如下:







    
        org.hibernate.dialect.MySQLDialect
    
    
        jdbc:mysql://localhost:3306/carddb
    
    root
    qwe123
    
        com.mysql.jdbc.Driver
    
    
        mysqlconnect
    
    2
    8
    300
    
    
    



Card.hbm.xml代码如下:





    
        
            
            
        
        
            
        
        
            
        
        
            
        
        
            
        
        
            
        
        
            
        
        
            
        
        
            
        
    


注意:在整个过程中Card.hbm.xml和Card.java是自动生成的,且这两个必须在同一个包下面

你可能感兴趣的:(一个小项目带你了解Hibernate基础(二))