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

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

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

    Ordinary hut

    人間一福地,勝似天仙宮
    posts - 61, comments - 50, trackbacks - 0, articles - 1

    用netbean6 通過數據庫生成 entity,jpa采用hibernate實現

    Posted on 2009-04-08 08:49 landor 閱讀(1144) 評論(0)  編輯  收藏 所屬分類: jpa
    jpa簡化了持久化的開發,目前的開源實現是hibernate,商業的是toplink(也已經開源了),其中 toplink是jpa的標準實現,所以netbean默認支持的是toplink,下面說一下如何用netbean6.1來生成hibernate實現 的jpa
    1 數據庫采用的是sqlserver2000,補丁sp4,數據庫名叫test4,表名叫Users
        use test4
        
    go
        
    CREATE TABLE [Users] (
            
    [username] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
            
    [password] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
            
    [name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
            
    [id] [int] IDENTITY (11NOT NULL ,
            
    CONSTRAINT [PK_User] PRIMARY KEY CLUSTERED
            (
                
    [id]
            ) 
    ON [PRIMARY]
        ) 
    ON [PRIMARY]
        
    GO


    2 創建一個Java Application 名字叫JavaApplication2,主類默認為Main.java

    3 添加相應的hibernate包到系統,右鍵library,Add Library,選擇hibernate,點擊Add Library(如果hibernate庫不存在,則可以安裝進來,Tools--Plugin,選擇hibernate3.2.5,點擊 Install);還要把hibernate-entitymanager-3.3.2.GA下的hibernate- entitymanager.jar,以及lib下的那三個ejb3-persistence.jar、hibernate- annotations.jar、hibernate-commons-annotations.jar加進來;注意還要把hibernate- 3.2\lib\javassist.jar包也加進來,驅動包要加進來jtds-1.2.jar

    4 右鍵項目名稱--New--Entity Class from Database,對話框中Database Connection中選擇數據庫的鏈接,如果沒有就new Database Connection,我的配置如下:
        name:                jtds12
        Driver Class:        net.sourceforge.jtds.jdbc.Driver
        Driver File(s):      jtds-1.2.jar
        Database URL:        jdbc:jtds:sqlserver://locahost:1433/test4
        User Name:           sa
        Password:            123456
       
    5 連接成功之后,如下圖所示
       

       
    6 選擇Users表后,next,把Users的Class Name改成User,如果想生成@NamedQueries,則選中下面的Generate Named Query Annotations for ...

    7 點擊Create Persistence Unit來創建持久化單元,在彈出對話框的Persistence Library 中選擇hibernate,表生成策略中選擇None(其中Create表示當系統重新運行的時候,會根據實體創建或者更新數據庫表;Drop and Create表示刪除再創建表)

    8 點擊finish,生成了User實體類和在META-INF目錄下生成了persistence.xml,通常生成的entity會把數據庫主鍵自動生 成策略也生成出來,但是我這里沒有生成出來,所以還需手工編輯一下,打開User類,在id屬性上增加 @GeneratedValue(strategy=GenerationType.AUTO)注釋,表示采用數據庫生成主鍵的規則,即
            
        @GeneratedValue(strategy
    =GenerationType.AUTO)
        
    private Integer id;
            


    9 在Main里面測試jpa,打開Main類,在代碼編輯區右鍵--persistence--User Entity Manager,netbean會自動生成persist函數,然后修改Main函數,代碼如下:
        package javaapplication2;
       
        
    import javax.persistence.EntityManager;
        
    import javax.persistence.EntityManagerFactory;
       
        
    public class Main {
       
            
    /**
             * 
    @param args the command line arguments
             
    */
            
    public static void main(String[] args) {
                Main m 
    = new Main();
                User user 
    = new User();
                user.setName(
    "haha");
                user.setUsername(
    "aaaaaaaa");
                m.persist(user);
            }
       
            
    public void persist(Object object) {
                EntityManagerFactory emf 
    = javax.persistence.Persistence.createEntityManagerFactory("JavaApplication2PU");
                EntityManager em 
    = emf.createEntityManager();
                em.getTransaction().begin();
                
    try {
                    em.persist(object);
                    em.getTransaction().commit();
                } 
    catch (Exception e) {
                    e.printStackTrace();
                    em.getTransaction().rollback();
                } 
    finally {
                    em.close();
                }
            }
       
        }
       
        運行程序,到數據庫中查看是否插入成功;完畢!

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 四虎影视在线永久免费观看| 国产免费播放一区二区| 中文字幕免费在线| 亚洲天堂男人天堂| 嫩草影院在线播放www免费观看| 亚洲一区二区三区在线观看精品中文| 午夜成人无码福利免费视频| 国产精品免费小视频| 美女又黄又免费的视频| 亚洲免费日韩无码系列| 日韩在线观看视频免费| 中文字幕在线亚洲精品| 久久久久久AV无码免费网站| 精品日韩亚洲AV无码一区二区三区 | 五月婷婷免费视频| 亚洲日韩乱码中文无码蜜桃臀网站| 中文在线观看永久免费| 久久精品国产亚洲AV大全| 在人线av无码免费高潮喷水| 亚洲av成人一区二区三区观看在线| 免费国产小视频在线观看| 国产精品美女久久久免费| 亚洲黄色片在线观看| 成年免费大片黄在线观看岛国| 精品亚洲国产成人av| 亚洲日本一区二区三区在线| 91短视频免费在线观看| 日韩亚洲人成在线综合| 亚洲一区二区三区AV无码| 久久久久久精品免费免费自慰| 亚洲gay片在线gv网站| 国产成人综合亚洲亚洲国产第一页| 久久久精品免费视频| 2020久久精品亚洲热综合一本| 免费看男女下面日出水视频| 日韩免费高清播放器| 国产精品亚洲专区在线观看| 亚洲精品美女久久久久99小说| 免费在线看黄网站| 亚洲av纯肉无码精品动漫| 久久久久无码精品亚洲日韩|