# querydsl-solon-plugin **Repository Path**: gson/querydsl-solon-plugin ## Basic Information - **Project Name**: querydsl-solon-plugin - **Description**: solon的querydsl和blaze-persistence适配插件 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-07-20 - **Last Updated**: 2024-07-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # querydsl-solon-plugin [solon](https://solon.noear.org/) 的`hibernate 6.x和querydsl及blaze-persistence`适配插件。 本项目是基于https://gitee.com/lingkang_top/hibernate-solon-plugin/tree/dev2.x进行改造而来 ## 快速开始 ```xml cn.gson querydsl-solon-plugin 1.0.2 com.zaxxer HikariCP 4.0.3 com.mysql mysql-connector-j 8.1.0 ``` `app.yml`配置 ```yaml db1: jdbcUrl: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=true driverClassName: com.mysql.cj.jdbc.Driver username: root password: 123456 minIdle: 1 maxPoolSize: 10 ``` `MyConfig.java` 配置数据库 ```java @Configuration public class MyConfig { @Bean public DataSource db1(@Inject("${db1}") HikariDataSource ds) { ds.setPoolName("db1"); ds.setMaximumPoolSize(10); return ds; } } ``` 定义Entity ```java /** *

****************************************************************************

* *

****************************************************************************

*/ @Getter @Setter @Entity @Table public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private String password; } ``` 使用 ```java @Slf4j @Import(profiles = "classpath:app.yml") @SolonTest public class TestSession { @InjectDsl private BlazeJPAQueryFactory factory; @InjectDsl private JPQLQueryFactory jqf; @InjectDsl private SessionFactory sessionFactory; private final QUser qUser = QUser.user; @Transaction @Test public void jpqlInsert() { jqf.insert(qUser) .columns(qUser.name, qUser.password) .values("jpql测试", "123456") .execute(); } @Transaction @Test public void hibernateInsert() { User user = new User(); user.setName("hibernate测试"); user.setPassword("123456"); sessionFactory.getCurrentSession().persist(user); } @Test public void select() { List userList = factory.selectFrom(qUser).fetch(); log.info("resultList: {}", userList); } } ```