# jdcl **Repository Path**: tianchaohongyu/jdcl ## Basic Information - **Project Name**: jdcl - **Description**: java数据清洗器 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2019-03-17 - **Last Updated**: 2023-03-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # jdcl #### 介绍 java数据清洗器,目前已完成核心逻辑并已完成spring-boot-starter打包,可尝试小范围内使用。 #### 软件架构 ```java /** * 内置清理注解一览 */ // 注意为简化代码,引入了lombok来自动生成getter/setter,IDEA需要先安装lombok插件才能正常编译本项目r,详见百度。 @Data //lombok 注解,代表自动生成的getter/setter/toString等方法 public class Demo{ @BlankAsNull //将空字符串(都是空格,即:" ")视为null @EmptyAsNull //将空(没有字符,即"")视为null @NullAs("你好") //将null视为"你好" @NullAsEmpty //将null视为空 @Trim //去首尾空格 @TrimAll //去全部空格 @UndefinedAsEmpty //将null、"null"、"undefined"视为空 @UndefinedAsNull //将null、"null"、"undefined"视为null private String str; @NullAs("0") //将null视为0 @Round(2) //四舍五入保留两位小数 private Double number; } ``` #### 安装教程 1. 下载本项目,使用maven install 2. 项目中引入依赖 ```xml com.gitee.tianchaohongyu jdcl 0.1.0 ``` 3. 使用 @CleanParams 标注要对参数进行清洗的方法或者类。 4. 使用 @CleanReturns 标注要对返回值进行清洗的方法或者类。 5. 使用 @EnableRequestMappingParamsClean 标注在spring boot 的启动类上,则开启对所有控制器参数进行清洗。 6. 代码效果: ```java @Service public class TestService { /** * 获取小孩 * * @param father 父亲 * @param age 小孩年龄 * @return 返回这个父亲的小孩 */ @CleanParams @CleanReturns public TestUser getChild(TestUser father, @Round(0) Double age) { TestUser child = new TestUser(); child.setFather(father); child.setName(father.getName() + "的儿子"); child.setAge(age.intValue()); return child; } } ``` #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)