java的orm框架 ebean 手动生成query bean

如果使用ebean的Type safe queries (Query Beans) 查询方式,ebean会通过enhancement方式通过插件自动生成Q开头的基于编写的entity的query bean
StudentEntity —>生成 QStudentEntity ,做类型检查

query bean的生成位置在

//resources/ebean.mf
querybean-packages: web.entity.query

没有ebean enhence插件, 可能会报错

Bean class web.entity.StudentEntity is not enhanced?

可以自己手动生成query bean

//pom.xml
<dependency>
    <groupId>io.ebean.tools</groupId>
    <artifactId>finder-generator</artifactId>
    <version>4.2.1</version>
</dependency>

需要一个java的类,执行main

import io.ebean.typequery.generator.Generator;
import io.ebean.typequery.generator.GeneratorConfig;

import java.io.IOException;


public class QueryBeanGenerator {

    //Manual generate query bean
    //first it compile the entity.java to .class then use ASM to generate query bean
    //only used for Ebean Type safe queries (Query Beans)
    public static void main(String[] args) throws IOException{
        GeneratorConfig config = new GeneratorConfig();

        //entity package
        //path:ebean.mf  querybean-packages
        config.setEntityBeanPackage("web.entity");

        Generator generator = new Generator(config);
        generator.generateQueryBeans();
    }
}

会在指定位置生成query bean和assoc目录(QAssoc开头的映射文件)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaORM框架有很多,其中比较流行的有Hibernate、MyBatis、JPA、Ebean等。下面是Ebean框架的使用方法: 1. Ebean是一个Java实现的ORM框架,可以通过注解的方式将Java对象映射到数据库表中,从而实现对象和关系数据库之间的映射。 2. 首先需要创建一个Maven工程,并在pom.xml文件中引入Ebean的依赖: ```xml <dependencies> <dependency> <groupId>io.ebean</groupId> <artifactId>ebean</artifactId> <version>12.1.6</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.31</version> </dependency> </dependencies> ``` 3. 创建一个连接数据库的工具类,可以使用JDBC或者连接池技术来实现。下面是一个使用JDBC连接MySQL数据库的示例: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBUtil { private static final String URL = "jdbc:mysql://localhost:3306/test"; private static final String USER = "root"; private static final String PASSWORD = "123456"; public static Connection getConnection() { Connection conn = null; try { Class.forName("com.mysql.cj.jdbc.Driver"); conn = DriverManager.getConnection(URL, USER, PASSWORD); } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } return conn; } } ``` 4. 在Java类中使用注解来映射数据库表和字段。下面是一个使用Ebean框架的示例: ```java import io.ebean.Model; import io.ebean.annotation.NotNull; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name = "user") public class User extends Model { @Id private Long id; @NotNull @Column(name = "name") private String name; @Column(name = "age") private Integer age; // getter和setter方法省略 } ``` 5. 使用Ebean框架进行数据访问。下面是一个使用Ebean框架查询用户信息的示例: ```java import io.ebean.Ebean; import io.ebean.EbeanServer; import java.util.List; public class UserDao { private static final EbeanServer ebeanServer = Ebean.getDefaultServer(); public List<User> findAll() { return ebeanServer.find(User.class).findList(); } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值