TopLink EJB 保存

本文介绍如何在Java SE环境下利用TopLink Essentials进行基本的持久化操作,包括导入所需库、创建实体类、配置持久化单元以及执行CRUD操作。通过示例代码展示了如何创建和保存News实体,并在最终提交事务前关闭EntityManager。

在java se 下面进行一个简单的测试,需要准备的工作是:
1:导入toplink-essentials,toplink-essentials-agent 还有 数据库对应jdbc的jar 还有ejb的jar包

下面语句直接照抄就OK 了

本环境使用的glassfish ,你可以添加glassfish的JEE库



package com.hjc;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

public class JpaQs {
    static final EntityManagerFactory emf = Persistence.createEntityManagerFactory("qs");
    public static void main(String[] args) {
       final EntityManager em = emf.createEntityManager();
       News news  = new News();
       news.setTitle("this is Title");
       news.setContent("this is content");
       try
       {
           //开启事务
           em.getTransaction().begin();
           //保存实体
           em.persist(news);
           //提交事务
           em.getTransaction().commit();
       }
       finally
       {
           em.close();
       }
    }

}


    package com.hjc;
    import javax.persistence.*;
    @Entity
    @Table(name="new_table")
    public class News {

        @Id
        @GeneratedValue(strategy=GenerationType.IDENTITY)
        private int id;

        @Column(name="news_title",length=50)
        private String title;

        @Column(nullable=true)
        private String content;

        public int getId() {
            return id;
        }

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


        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }

        public String getContent() {
            return content;
        }

        public void setContent(String content) {
            this.content = content;
        }
    }

<?xml version="1.0" encoding="GBK"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
 
    <persistence-unit name="qs" transaction-type="RESOURCE_LOCAL">
        <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider>
        <class>com.hjc.News</class>
        <properties>
            <property name="toplink.jdbc.driver" value="oracle.jdbc.OracleDriver"/>
            <property name="toplink.jdbc.url" value="jdbc:oracle:thin:@localhost:1521:hjc"/>
            <property name="toplink.jdbc.user" value="scott"/>
            <property name="toplink.jdbc.password" value="tiger"/>
            <property name="toplink.target-database" value="Auto"/>
            <property name="toplink.ddl-generation" value="create-tables"/>
            <property name="toplink.logging.level" value="FINE" />
            <property name="toplink.logging.timestamp" value="false" />
            <property name="toplink.logging.session" value="false" />
            <property name="toplink.logging.thread" value="false" />
            <property name="toplink.logging.exceptions" value="true" />
            <property name="toplink.dll-generation" value = "create-tables"/>       
        </properties>
    </persistence-unit>
</persistence>

            <property name="toplink.dll-generation" value = "create-tables"/>

这行语句在插入的时候,如果表中没有内容的话,会自动建表,所以加上这句

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值