Ebean ORM功能介绍

本文介绍了Ebean ORM框架,它是一个快速且易于使用的Java ORM工具,支持原生SQL、分页、大型查询、DB加密、JSON处理、自动查询优化等功能。还详细讲解了如何进行批量操作、事件监听、二级缓存以及ElasticSearch集成,并通过实例演示了如何创建首个Ebean程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ebean ORM功能介绍


一、简单介绍

Ebean是一个Java实现的开源ORM框架,具有快速访问、易使用等特点。

二、主要功能

  • 原生SQL:可以方便的使用原生SQL,并以懒加载的方式返回全属性的bean
  • 结果分页:使用findRowCount()或findPageList()很容易处理结果分页
  • 支持大型查询:使用findIterate()分批处理大量数据,不必全部加在到内存
  • 批量插入:通过设置JDBC batch size可以调整每个事务中的批量插入数
  • DB加密:使用@Encrypt可以透明的实现DB加密
  • JSON:内置JSON支持
  • 自动查询优化:支持自动查询(autofetch),查询自动优化
  • 无状态更新:填充一个bean,不必查询直接更新数据
  • 批量更新/删除:可以使用批量更新/删除语句,大大提升效率
  • 事件监听:Ebean从4.0.1开始支持JPA的EntityListener注解:
    • PostLoad
    • PostPersist
    • PostRemove
    • PostUpdate
    • PrePersist
    • PreRemove
    • PreUpdate
  • 阅读审计:ReadAudit功能是当数据被读取时记录日志(可用于审计)
  • 二级缓存(可显著提升性能)
  • 监控:监控性能,识别N+1和缓慢查询等问题
  • ElasticSearch集成


三、第一个Ebean程序

1、创建项目EbeanDemo

2、引入jar,pom文件如下

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>EbeanDemo</groupId>
    <artifactId>EbeanDemo</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <!-- https://mvnrepository.com/artifact/io.ebean/ebean -->
        <dependency>
            <groupId>io.ebean</groupId>
            <artifactId>ebean</artifactId>
            <version>11.3.1</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.39</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>
3、配置ebean.properties(在这个demo中properties文件名必须是ebean.properties),内容如下

datasource.default=h2
datasource.h2.username=用户名
datasource.h2.password=密码
datasource.h2.databaseUrl=jdbc:mysql://127.0.0.1:3306/test
datasource.h2.databaseDriver=com.mysql.jdbc.Driver
4、编写TestDBConnection.java文件,代码如下:

import io.ebean.Ebean;
import org.junit.Test;

public class TestDBConnection {
    @Test
    public void test() {
        System.out.println("cnt : " + Ebean
                .createSqlQuery("select count(0) as cnt from t_user").findOne()
                .getInteger("cnt"));
    }
}
输出结果如下(cnt : 39):




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值