<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的漫漫程序之旅

    專(zhuān)注于JavaWeb開(kāi)發(fā)
    隨筆 - 39, 文章 - 310, 評(píng)論 - 411, 引用 - 0
    數(shù)據(jù)加載中……

    基于JPA的Hibernate->CRUD(簡(jiǎn)單應(yīng)用)(原創(chuàng))

    數(shù)據(jù)庫(kù)用的是mysql5.0;
    腳本如下:
    use test;
    create table person
    (
     id 
    int AUTO_INCREMENT primary key,
     username 
    varchar(20),
     password 
    varchar(20)
    );

    insert into person values(null,'ts','ts');
    實(shí)體類(lèi)用Annotation映射,代替hbm.
    package com.vo;

    import java.io.Serializable;

    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.Table;

    @SuppressWarnings(
    "unchecked""serial" })
    @Entity 
    //標(biāo)識(shí)是一個(gè)實(shí)體
    @Table(name="person"//映射表
    public class Person implements Serializable
    {
        
    //主鍵映射
        @Id
        
    //主鍵自增
        @GeneratedValue(strategy=GenerationType.AUTO)
        
    private Integer id;
        
    //@Column(name="username"),對(duì)于列,可映射也可以不映射.注意保持列名和屬性名一致就行 
        private String username;
        
    private String password;

        
    public Integer getId()
        
    {
            
    return id;
        }


        
    public void setId(Integer id)
        
    {
            
    this.id = id;
        }


        
    public String getUsername()
        
    {
            
    return username;
        }


        
    public void setUsername(String username)
        
    {
            
    this.username = username;
        }


        
    public String getPassword()
        
    {
            
    return password;
        }


        
    public void setPassword(String password)
        
    {
            
    this.password = password;
        }

    }


    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="dialect">org.hibernate.dialect.MySQLDialect</property>
            
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
            
    <property name="connection.url">jdbc:mysql://localhost:3306/test</property>
            
    <property name="connection.username">root</property>
            
    <property name="connection.password">root</property>
            
    <property name="show_sql">true</property>
            
    <!-- 實(shí)體類(lèi)映射 -->
            
    <mapping class="com.vo.Person"/>
        
    </session-factory>
    </hibernate-configuration>    
    測(cè)試類(lèi):
    package com.test;

    import java.util.List;

    import org.hibernate.Session;
    import org.hibernate.Transaction;
    import org.hibernate.cfg.AnnotationConfiguration;
    import org.junit.After;
    import org.junit.Before;
    import org.junit.Test;
    import static org.junit.Assert.*;
    import com.vo.Person;

    public class PersonTest
    {
        
    private Session session;
        
    private Transaction tx;

        @Before
        
    public void before()
        
    {
            session 
    = new AnnotationConfiguration().configure()
                    .buildSessionFactory().openSession();
            tx 
    = session.getTransaction();
        }


        @After
        
    public void after()
        
    {
            session.close();
        }


        @Test
        
    public void testSave()
        
    {
            tx.begin();
            Person person 
    = new Person();
            person.setUsername(
    "zdw");
            person.setPassword(
    "admin");
            session.save(person);
            tx.commit();
        }

        
        @Test
        
    public void testUpdate()
        
    {
            tx.begin();
            Person person 
    = (Person) session.load(Person.class1);
            person.setPassword(
    "test");
            session.update(person);
            tx.commit();
        }

        @SuppressWarnings(
    "unchecked")
        @Test
        
    public void testQueryAll()
        
    {
            List
    <Person> persons = session.createCriteria(Person.class).list();
            assertNotNull(persons);
        }

        
        @Test
        
    public void testDelete()
        
    {
            Person person 
    = (Person) session.load(Person.class1);
            session.delete(person);
        }

    }

    經(jīng)測(cè)試,增刪改查全部正常.
    這樣的確很方便了.
    源碼可以在我的網(wǎng)盤(pán)下載. 點(diǎn)此下載

    posted on 2007-11-29 09:08 々上善若水々 閱讀(1888) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Hibernate

    主站蜘蛛池模板: 亚洲伊人精品综合在合线| 国产免费av片在线无码免费看 | 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 中文字幕人成人乱码亚洲电影| 免费观看日本污污ww网站一区| 国产精品免费电影| 国产精品免费一级在线观看| 小小影视日本动漫观看免费| 日本一线a视频免费观看| 日本免费人成黄页在线观看视频| 日韩视频免费一区二区三区| 日韩毛片无码永久免费看| 日韩精品免费电影| 免费成人av电影| 国产av无码专区亚洲国产精品| 亚洲综合色在线观看亚洲| 狠狠亚洲婷婷综合色香五月排名| 国产亚洲精品拍拍拍拍拍| 亚洲中文字幕无码日韩| 亚洲成A∨人片在线观看不卡 | 永久免费bbbbbb视频| 国产又黄又爽又猛的免费视频播放| 国产精品美女自在线观看免费| 国产jizzjizz视频免费看| 亚洲国产天堂久久久久久| 日本亚洲国产一区二区三区| 日韩亚洲一区二区三区| 午夜亚洲AV日韩AV无码大全| 亚洲校园春色小说| 亚洲高清乱码午夜电影网| 老司机福利在线免费观看| 成人免费一区二区三区| 蜜桃成人无码区免费视频网站| 97热久久免费频精品99| 浮力影院第一页小视频国产在线观看免费 | 丝瓜app免费下载网址进入ios| 日韩免费在线视频| 久久精品无码一区二区三区免费| 在线观看91精品国产不卡免费| 亚洲综合色在线观看亚洲| 久久久亚洲裙底偷窥综合|