# SQLValueAndColumnUtil **Repository Path**: lwlspace/sqlvalue-and-column-util ## Basic Information - **Project Name**: SQLValueAndColumnUtil - **Description**: 帮助SQL语句编写的工具类,通过传入实体类的类信息来提供Value信息和Column信息 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://gitee.com/SQLValueAndColumnUtil - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-05-24 - **Last Updated**: 2023-05-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SQLValueAndColumnUtil #### 介绍 生成SQL语句的Column和对应的Value值,帮助SQL语句编写的工具类,通过传入实体类的类信息来提供Value信息和Column信息,从而不要手动的对SQL语句中的列名和属性名进行编写且还需要查看表和对象,在正确的场景下使用它可以节省时间和精力。 #### 使用说明 Mapper层框架需要设置驼峰命名法的规则 直接调用SQLValueAndColumnUtil的convert函数,需要传递五个参数: 1. 1.Class clazz 需要读取的类 1. 2.String prefix 拼接的前缀 可为null 1. 3.List ignoreVar 忽视类中的属性 可为null 1. 4.boolean isFile 是否要生成文件 可为null 1. 5.String pathParam 文件路径 可为null,默认路径为 D:\SQLValueAndColumnUtil.txt #### 实际使用测试 ``` public static void main(String[] args) { //忽视属性名为"username"的属性 List list = new ArrayList<>();list.add("username"); //读取Employee中的属性,生成Value和Column SQLValueAndColumnUtil.convert(Employee.class,null,list,true,"E:\\text.txt"); //读取Dish中的属性,生成Value和Column,并为Value加上dish前缀 SQLValueAndColumnUtil.convert(Dish.class,"dish",list,true,"E:\\text.txt"); } ``` 控制台打印结果如下:
columns = id,name,password,phone,sex,id_number,status,create_time,update_time,create_user,update_user
values = #{id},#{name},#{password},#{phone},#{sex},#{idNumber},#{status},#{createTime},#{updateTime},#{createUser},#{updateUser}
columns = id,name,category_id,price,image,description,status,create_time,update_time,create_user,update_user
values = #{dish.id},#{dish.name},#{dish.categoryId},#{dish.price},#{dish.image},#{dish.description},#{dish.status},#{dish.createTime},
#{dish.updateTime},#{dish.createUser},#{dish.updateUser}
文件打印如下:
com.sky.entity.Employee-columns:id,name,password,phone,sex,id_number,status,create_time,update_time,create_user,update_user
com.sky.entity.Employee-values:#{id},#{name},#{password},#{phone},#{sex},#{idNumber},#{status},#{createTime},#{updateTime},#{createUser},#{updateUser}
com.sky.entity.Dish-columns:id,name,category_id,price,image,description,status,create_time,update_time,create_user,update_user
com.sky.entity.Dish-values:#{dish.id},#{dish.name},#{dish.categoryId},#{dish.price},#{dish.image},#{dish.description},#{dish.status},#{dish.createTime},#{dish.updateTime},#{dish.createUser},#{dish.updateUser}