要生成不需要连接信息的QueryDSL SQL bean,可以按照以下步骤进行操作:
com.querydsl
querydsl-sql
{querydsl-version}
com.querydsl
querydsl-sql-spring
{querydsl-version}
com.querydsl
querydsl-sql-mysql
{querydsl-version}
其中,{querydsl-version}应替换为您使用的QueryDSL版本。
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String username;
private String email;
// getters and setters
}
com.mysema.maven
apt-maven-plugin
1.1.3
process
target/generated-sources/java
com.querydsl.apt.jpa.JPAAnnotationProcessor
com.querydsl
querydsl-apt
{querydsl-version}
确保将{querydsl-version}替换为您使用的QueryDSL版本。
运行maven命令mvn clean compile
来生成QueryDSL SQL bean类。生成的类将保存在目录"target/generated-sources/java"下。
现在,您可以在您的代码中使用生成的QueryDSL SQL bean类。例如,假设我们要查询所有用户名以"admin"开头的用户:
JPAQueryFactory queryFactory = new JPAQueryFactory(entityManager);
QUser user = QUser.user;
List users = queryFactory.selectFrom(user)
.where(user.username.startsWith("admin"))
.fetch();
这样,您就可以使用QueryDSL SQL bean类来构建类型安全的查询,而不需要连接信息。
请注意,上述示例是使用JPA进行查询的示例,如果您使用其他ORM框架(如Hibernate),则需要相应地调整代码。