超轻量级 Java 持久化工具 Memory

码农软件 · 软件分类 · ORM/持久层框架 · 2019-09-23 19:42:02

软件介绍

JDBC的规范上看,其对数据访问层有相当简洁的抽象:1、连接(connection) 2、语句(statement)、3结果集(result set),我们对数据库做的事情无非:连接数据库,执行语句,拿到结果。因此,持久化工具的目的不言自明:进一步简化连接的管理、语句的执行、结果集提取等操作。

Memory在设计与实现上,都借鉴了Dbutils,其相对于hibernate,mybatis这些庞然大物,已经是一个极其小巧的工具。 但是Memory的类和接口更少(不超过10个),体积更小(只有二十几K),数目和体积都约为dbutils的1/3,却添加了非常实用的功能:

  • 将简单的POJO对象直接持久化到数据库中;

  • 打印运行时出错的SQL语句,其可以直接拷贝到数据库客户端上进行调试;

  • 直截了当的分页查询。

代码示例:

 public static void testCrud() {
     /**
     * 创建一条记录
     */
     Product product = new Product();
     product.setName("apple");
     product.setStock(10);
     product.setStatus(true);
     product.setCreatedDate(new Date());
     System.out.print("入库之前Product没有ID:");
     System.out.println(product);
     memory.create(Product.class, product);

     /**
     * 读取这条记录
     */
     product = memory.read(Product.class, product.getId());
     System.out.print("使用CRUD的read方法读取:");
     System.out.println(product);

     /**
     * 换一种方式读取
     */
     product = memory.query("select * from product where id = ?",
         new BeanHandler<Product>(Product.class), product.getId());
     System.out.print("使用CQRS的query方法读取:");
     System.out.println(product);

     /**
     * 更新这条记录
     */
     product.setStock(15);
     product.setStatus(true);
     product.setCreatedDate(new Date());
     memory.update(Product.class, product);
     // 查看结果
     product = memory.read(Product.class, product.getId());
     System.out.print("查看更新结果:");
     System.out.println(product);

     /**
     * 删除一条记录
     */
     memory.delete(Product.class, product.getId());
     // 查看结果
     product = memory.read(Product.class, product.getId());
     System.out.print("查看删除结果:");
     System.out.println(product);
 }

详细可运行的例子,在这里可以看到和下载。

本文地址:https://codercto.com/soft/d/15251.html

商业的常识

商业的常识

申音 / 山西经济出版社 / 2011-7-1 / 35.00元

★为什么美国没有史玉柱,中国没有乔布斯? ★什么是“对的行业”、“错的行业”? ★我们需要什么样的营销? ★老板为什么要读商学院? ★山寨公司还需要管理吗? ★资源问题是个“伪问题”? ★别把商业模式当成葵花宝典 ★给海归技术创业兄弟的九个忠告 ★在一个不伟大的行业里,做一个伟大的公司 ★是什么让互联网遭遇了有史以来最鸡犬不宁的一战?一起来看看 《商业的常识》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换