Memory 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Memory 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Memory 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache
开发语言 Java 查看源码 »
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 时与光
适用人群 未知
收录时间 2015-05-17

软件简介

memory : 一个比dbutils更小巧、好用的的持久化工具。

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);
 }
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(19)
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
19 评论
288 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部