Hutool API汇总(一)

发布于:2024-06-19 ⋅ 阅读:(141) ⋅ 点赞:(0)

有半年没写Java代码,嘿嘿~,这两天写了几个接口,用到了Hutool类库。这里做个总结。

MD5加密

md5加密32位小写用法 SecureUtil.md5();

String md5 = SecureUtil.md5("md5加密算法");
System.out.println(md5);

输出结果:

9eff81ff6a7672cd6138ba4642f0c618

Http请求工具

HttpUtil:提供了对Http请求的操作,例如发送GET请求、发送POST请求、下载文件等。

// 发送GET请求
String result = HttpUtil.get("https://www.baidu.com");

// 发送POST请求
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("username", "admin");
paramMap.put("password", "123456");
//String postResult = HttpUtil.post("https://www.example.com/login", paramMap);

String result= HttpUtil.createPost("https://www.example.com/login").form(paramMap).execute().body();
            

// 下载文件
FileUtil.writeBytes(HttpUtil.downloadBytes("https://www.example.com/file"), "D:/file.txt");

JSON数据处理

String result = "{ code : 200, message:'sucess',data:{value:20240618}}" ;
JSONObject resJSON= JSONUtil.parseObj(result);
Integer code = resJSON.get("code",Integer.class);
System.out.println(code);

输出结果:

200

Bean转Map

 实体类加注解Alias,实现转换map时key值自定义(属性别名)。

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import cn.hutool.core.annotation.Alias;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class User{
    /**
     * user_id
     */
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @Alias("user_id")
    @JsonProperty("user_id")
    private String userID;
    /**
     * user_name
     */
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @Alias("user_name")
    @JsonProperty("user_name")
    private String userName;
}

 BeanUtil.beanToMap测试代码如下:

User user = new User("u001","道徽");
Map<String,Object> map = BeanUtil.beanToMap(user);//bean转换成map
System.out.println(map);

user.setUserID(null);
map = BeanUtil.beanToMap(user, false, true);//属性值为空不传入map
System.out.println(map);

输出结果:

{user_id=u001, user_name=道徽}
{user_name=道徽}


网站公告

今日签到

点亮在社区的每一天
去签到