Bootstrap

hutool常用的工具类


前言

hutool愿称之为java小宝库


一、引入依赖?

代码如下(示例):

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.3.7</version>
</dependency>

二、常用方法

1.Convert方法

代码如下(示例):

int a = 1;
        //aStr为"1"
        String aStr = Convert.toStr(a);

        String date = "2024-01-12";
        Date value = Convert.toDate(date);

2.StrUtil方法

代码如下(示例):

String template = "{}爱{},就像老鼠爱大米";
        String str = StrUtil.format(template, "我", "你");

3.ObjectUtil方法

代码如下(示例):

String string = null;
        String string1 = "2";
        String enums = ObjectUtil.defaultIfNull(string, "1");
        String enums1 = ObjectUtil.defaultIfNull(string1, "1");

4.MapUtil方法

代码如下(示例):

Map<Object, Object> colorMap = MapUtil.of(new String[][]{
                {"RED", "#FF0000"},
                {"GREEN", "#00FF00"},
                {"BLUE", "#0000FF"}
        });

5.JSONUtil方法

userDto

@Data
public class User {
    private Integer id;
    private String name;
}

代码如下(示例):

//json
        SortedMap<Object, Object> sortedMap = new TreeMap<Object, Object>() {
            private static final long serialVersionUID = 1L;

            {
                put("attributes", "a");
                put("b", "b");
                put("c", "c");
            }
        };
        JSONUtil.toJsonStr(sortedMap);

        // JSONObject
        String jsonStr = "{\"b\":\"value2\",\"c\":\"value3\",\"a\":\"value1\"}";
        //方法一:使用工具类转换
        JSONObject jsonObject = JSONUtil.parseObj(jsonStr);
        //方法二:new的方式转换
        JSONObject jsonObject2 = new JSONObject(jsonStr);
        //JSON对象转字符串(一行)
        jsonObject.toString();
        // 也可以美化一下,即显示出带缩进的JSON:
        jsonObject.toStringPretty();


        //JSONArray
        String jsonArr = "[{\"id\":111,\"name\":\"test1\"},{\"id\":112,\"name\":\"test2\"}]";
        JSONArray array = JSONUtil.parseArray(jsonArr);
        List<User> userList = JSONUtil.toList(array, User.class);
        // 111
        userList.get(0).getId();

6.ZipUtil方法

代码如下(示例):

@PostMapping("unzip")
    public ApiResult<?> fileUnZip(MultipartFile file) {
        if (null == file) {
            return ApiResult.fail("文件为空!");
        }
        //解压
        File uploadFile = FileUtil.getFile(file);
        // 参数是压缩包路径和编码
        // GBK是为了解决中文解压缩乱码的问题
        File unFile = ZipUtil.unzip(uploadFile.getAbsolutePath(), Charset.forName("GBK"));
        List<File> fileList = FileUtil.loopFiles(unFile.getAbsolutePath());
        log.info("解压之后的文件:{}", JSONUtil.toJsonStr(fileList));
        //调用上传方法上传oss拿到url或者做其他处理
        return ApiResult.ok(fileList);
    }

总结

hutools方法还很多 很实用的工具类

;