介绍 Lazy Jpa 是 lazy orm 框架衍生出类似 Spring JPA 框架


介绍Lazy Jpa 是lazy orm框架衍生出类似Spring JPA 框架

非Spring项目使用

安装

<dependency>
<groupId>top.wu2020groupId>
<artifactId>wu-database-lazy-jpaartifactId>
<version>1.2.6-JDK17-SNAPSHOTversion>
dependency>

声明接口

public interface TestLazyJpaRepository extends LazyJpaRepository<SysUser,Long> {
}

接口调用(基础CRUD)

public static void main(String[] args) {
LazyLambdaStream lazyLambdaStream = LazyLambdaStreamFactory.createLazyLambdaStream("jdbc:mysql://127.0.0.1:3306/wu_database_lazy_simple?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai",
"root", "wujiawei");
TestLazyJpaRepository lazyJpaRepository = LazyRepositoryFactorySupport.createLazyJpaRepository(lazyLambdaStream, TestLazyJpaRepository.class);

// 统计数据库数量
long count = lazyJpaRepository.count();
// 获取所有数据
Iterable<SysUser> all = lazyJpaRepository.findAll();
for (SysUser sysUser : all) {
System.out.println(sysUser);
}
}

Spring 项目使用

安装

<dependency>
<groupId>top.wu2020groupId>
<artifactId>wu-framework-lazy-orm-spring-starterartifactId>
<version>1.2.6-JDK17-SNAPSHOTversion>
dependency>

声明接口

@LazyRepository
public interface TestLazyJpaRepository extends LazyJpaRepository<SysUser,Long> {
}

接口配置

@LazyRepositoryScan(scanBasePackages = "com.wu.xxx.mapper")// 扫描你使用的repository接口
@SpringBootApplication
public class WuDatabaseLazyStarterSimpleApplication {

public static void main(String[] args) {
SpringApplication.run(WuDatabaseLazyStarterSimpleApplication.class, args);
}
}

接口使用

@LazyRepository
public interface SysMenuLazyJpaRepository extends LazyJpaRepository<SysMenu, Integer> {

// 自定义查询
@LazySelect("select * from sys_menu where parent_id={parentId}")
List<SysMenu> findListByParentId(Integer parentId);


@LazySelect("select * from sys_menu where id ={id}")
SysMenu findMenuById(@LazyParam("id") Integer menuId);


@LazySelect("select * from sys_menu where id ={id}")
List<Map ?>> findListMapByParentId(@LazyParam("id") Integer menuId);

@LazyInsert("INSERT Ignore INTO `sys_menu` ( `id`, `name`, `url`, `icon`, `parent_id`,`parent_name`,`sort`,`status`) VALUES ({id},{name},{url},{icon},{parentId},{parentName},{sort},{status});")
void insert(Integer id,
String name,
String url,
String icon,
Integer parentId,
String parentName,
Integer sort,
Integer status
);

@LazyUpdate("UPDATE `sys_menu` SET`name` = {name} WHERE `id` = {id};")
void updateNameById(Integer id, String name);


@LazyDelete("DELETE FROM sys_menuWHERE `id` = {id};")
void removeById(int id);
/**
 * 执行sql select * from sys_menu where id={id}
 * 根据ID获取数据
 * @param id 数据ID
 */
SysMenu findById(int id);

/**
 * 执行sql select id,name,url,icon from sys_menu where id={id}
 * 获取ID、名称、url、icon
 * @param id 主键ID
 * @return 查询信息
 */
SysMenu findIdAndNameAndUrlAndIconById(int id);
}

当前项目地址

测试案例地址


相關推薦

2024-05-07

1.2.6-JDK7-SNAPSHOT - Lazy ORM 适配 Solon框架 - 基本crud 使用 - 数据库schema自动治愈 - 数据库表自动治愈 - [使用样例](https://gitee.com/wujiawei1207537021/wu-lazy-orm-solon-starter-simple)   lazy orm 框架地址 样例地址 感谢体验使用issues

2024-01-17

- ```java @Data @LazyTable(tableName = "lazy_table_user", comment = "lazy 框架跨表映射 用户") public class LazyTableUser { @LazyTableFieldId(value = "id", idType = LazyTableFieldId.IdType.AUTOMATIC_ID) private Integer id; @LazyTableFieldUnique(value = "username") private String username;

2023-11-08

mongodb 所有基于 sql 和 jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、

2023-11-18

mongodb 所有基于 sql 和 jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、

2023-10-28

mongodb 所有基于 sql 和 jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、

2023-08-12

<parent> <groupId>com.nbsaas.boot</groupId> <artifactId>nbsaas-boot</artifactId> <version>1.0.15-2023</version> </parent> 本次更新内容 1.后台模块增加shiro权限注解,前台添加菜单的时候需要配置权限标签,不然会报40

2023-05-01

ai driver-class-name: com.mysql.cj.jdbc.Driver 注解 ::: tip 本文将介绍 wu-database-lazy-starter 注解包相关类详解(更多详细描述可点击查看源码注释) ::: 描述 使用位置对象 @LazyTable @LazyTable(tableName="sys_user") public class User { private Long

2023-11-25

mongodb 所有基于 sql 和 jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、

2024-08-03

mongodb 所有基于 sql 和 jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、

2023-10-25

h、mongodb 所有基于sql和jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update

2023-04-23

ot 可以帮助我们进行快速应用开发。   最新功能介绍: V2.1.4.20(2023·谷雨) 26)mongodb bean定义为可插拔组件,与其它不同类型的DB使用互不影响   使用说明: 在application.properties添加配置,即可: #for init mongodb bean with spring

2024-09-21

mongodb 所有基于 sql 和 jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、

2024-09-27

mongodb 所有基于 sql 和 jdbc 各类数据库查询 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、

2023-05-12

ot 可以帮助我们进行快速应用开发。   最新功能介绍: V2.1.5.1(2023·劳动节) 27)Mongodb面向对象操作打印原生语句日志 28)可直接执行原生语句(MongodbRawSql) 29)广播表批量插入 30)更多数据库分页默认支持:MsAccess,Cubrid,HSQL,Derby,F