当前位置: 首页 > news >正文

JPA測试实例

依赖架包


实体

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
/**
 * 持久化实体类使用注解配置
 * @author Administrator
 *
 */
@Table
@Entity
public class Customer {
    private int id;
    private String username;
    private int age;
    private String email;
    @Column(name="id")
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Id
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
//其它数据可能和实体实体属性相应的能够不加注解
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Transient
public String getInfo(){
return "name:"+username+",age"+age+",email"+email;
}


測试类

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


public class TestOrm {
    public static void main(String[] args){
    //创建EntityManagerFactory
    String str="jpa";
    EntityManagerFactory factory=Persistence.createEntityManagerFactory(str);
    //创建EntityManager
    EntityManager manager=factory.createEntityManager();
    //声明事务
    EntityTransaction transation=manager.getTransaction();
    transation.begin();
    //持久化操作
    Customer cus=new Customer();
    //cus.setId(1);
    cus.setUsername("xxxx");
    cus.setAge(23);
    cus.setEmail("12122121@qq.com");
   
    manager.persist(cus);//保存
    //提交事务
    transation.commit();
        //关闭EntityMnager
    manager.close();
    //关闭EnetityManagerFactory
    factory.close();
    }
}

相关文章:

  • Shiro随笔(2:探讨FilterChainManager)
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • SonarQube 安装
  • Spark RDDs vs DataFrames vs SparkSQL
  • CS61B LAB1
  • mysql HA 负载均衡
  • linux下如何判断oracle数据库tns是否设置正常
  • bzoj 2038 [2009国家集训队]小Z的袜子(hose) 莫队算法
  • VS2008让Release配置也能调试起来~
  • 图解Activity启动流程,进阶高级
  • 面向对象原则之一 迪米特法则
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 关于TRIM的优化技巧
  • 切换tab页
  • 哈希算法 加密算法
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • Github访问慢解决办法
  • GraphQL学习过程应该是这样的
  • Hexo+码云+git快速搭建免费的静态Blog
  • JavaScript 一些 DOM 的知识点
  • Javascript编码规范
  • Java多态
  • JS变量作用域
  • js学习笔记
  • k8s 面向应用开发者的基础命令
  • Python打包系统简单入门
  • Redis中的lru算法实现
  • Spring Boot快速入门(一):Hello Spring Boot
  • SQLServer插入数据
  • Vue学习第二天
  • 区块链技术特点之去中心化特性
  • 协程
  • 写给高年级小学生看的《Bash 指南》
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • C# - 为值类型重定义相等性
  • scrapy中间件源码分析及常用中间件大全
  • #laravel 通过手动安装依赖PHPExcel#
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (Mirage系列之二)VMware Horizon Mirage的经典用户用例及真实案例分析
  • (二)正点原子I.MX6ULL u-boot移植
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (五)关系数据库标准语言SQL
  • (转)重识new
  • .form文件_一篇文章学会文件上传
  • .net core webapi 大文件上传到wwwroot文件夹
  • .NET(C#、VB)APP开发——Smobiler平台控件介绍:Bluetooth组件
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • @Autowired和@Resource装配
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • @configuration注解_2w字长文给你讲透了配置类为什么要添加 @Configuration注解
  • @RequestParam,@RequestBody和@PathVariable 区别
  • @serverendpoint注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)
  • [ 2222 ]http://e.eqxiu.com/s/wJMf15Ku
  • [BJDCTF2020]The mystery of ip