官方网址:https://ebean.io/
创建maven项目
pom.xml
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.16</version> <scope>test</scope> </dependency> <dependency> <groupId>io.ebean</groupId> <artifactId>ebean</artifactId> <version>11.41.1</version> </dependency> <!-- Optional: query bean support --> <dependency> <groupId>io.ebean</groupId> <artifactId>ebean-querybean</artifactId> <version>11.41.1</version> </dependency> <!-- Optional: query bean generation via APT --> <dependency> <groupId>io.ebean</groupId> <artifactId>querybean-generator</artifactId> <version>11.41.1</version> <scope>provided</scope> </dependency> <!-- Test dependencies --> <!-- includes docker test database container support --> <dependency> <groupId>io.ebean.test</groupId> <artifactId>ebean-test-config</artifactId> <version>11.41.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.25</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.8.7</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> <showWarnings>true</showWarnings> <showDeprecation>true</showDeprecation> </configuration> </plugin> <plugin> <groupId>io.repaint.maven</groupId> <artifactId>tiles-maven-plugin</artifactId> <version>2.12</version> <extensions>true</extensions> <configuration> <tiles> <tile>org.avaje.tile:java-compile:1.1</tile> <tile>io.ebean.tile:enhancement:11.41.1</tile> </tiles> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.19.1</version> <!--<configuration>--> <!--<argLine>--> <!----add-modules java.xml.bind--> <!----illegal-access=deny--> <!--</argLine>--> <!--</configuration>--> <executions> <execution> <id>default-test</id> <phase>test</phase> <goals> <goal>test</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
ebean.mf 文件配置
entity-packages: org.example.domain transactional-packages: org.example querybean-packages: none
或
profile-location: true entity-packages: org.example.domain transactional-packages: org.example querybean-packages: org.example
https://ebean.io/docs/introduction/manifest
然后在写一个application.yml文件 增加数据库配置信息
datasource: db: username: test password: test url: jdbc:mysql://127.0.0.1:3306/test driver: com.mysql.cj.jdbc.Driver
接下来就是编写一个bean类继承Model
编写一个finder 继承自Finder
旧EbeanServer 和新DataBase,获取方法参考:https://ebean.io/docs/introduction/
public static EbeanServer getEbeanServer(){ EbeanServer server = null; ServerConfig config = new ServerConfig(); config.setName("test"); config.loadFromProperties(); config.setDefaultServer(true); config.setDdlRun(true); config.setDdlCreateOnly(true); try { server = EbeanServerFactory.create(config); } catch (Exception e) { config.setDdlRun(false); server = EbeanServerFactory.create(config); } return server; } public static Database getDataBase(){ // configuration ... DatabaseConfig config = new DatabaseConfig(); config.setName("test"); config.loadFromProperties(); config.addPackage("mode包名"); // create database instance return DatabaseFactory.create(config); }