java 问题汇总
2020-12-22 本文已影响0人
Mr菜头
1、将字符串的首字母大写
//首字母大写
public static String captureName(String name) {
//低效的
// name = name.substring(0, 1).toUpperCase() + name.substring(1);
// return name;
//大佬写的
char[] cs=name.toCharArray();
cs[0]-=32;
return String.valueOf(cs);
}
2、java Consumer (函数式接口) 运用
public static void main(String[] args) {
hello(w->{
System.out.println("lameda");
});
}
public static void hello(Consumer<Void> c) {
System.out.println("helloMethod");
c.accept(null);
System.out.println("hellEnd");
}
执行结果
image.png
3、int 转 16进制字符串
String hex = String.formart("%02x",101);
4、将 JSON 串转换为 java 对象
BaseResponse<List<VO>> baseVO = JSON.parseObject(ResponStr,new TypeReference<BaseResponse<List<VO>>>() {}.getType());
5、获取当前运行程序所在的根目录
System.getProperty("user.dir");
6、eureka 报 java.net.UnknownHostException
eureka.client.fetch-registry=true
eureka.client.register-with-eureka=true
# 下面这行是重点
eureka.instance.prefer-ip-address=true
spring cloud feign 发送 get请求 但目标服务器 返回post https://blog.csdn.net/justry_deng/article/details/80785973
7、mybatis-plus 进行根据传入信息排序
@Override
public BasePageVO<BaseVO> listPage(DTO dto, Integer page,
Integer pageSize,String orderBy) {
IPage<BaseVO> iPage = new Page(page, pageSize);
iPage.orders().add(OrderItem.asc("delivery_order_state"));
if(orderBy == null) {
iPage.orders().add(OrderItem.desc("create_time"));
}else {
String column = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, orderBy);
iPage.orders().add(column.startsWith("-") ? OrderItem.desc(column.substring(1)) : OrderItem.asc(column));
}
IPage<BaseVO> pageResult = BaseMapper.selectPage(iPage, dto);
return new BasePageVO<BaseVO>((int) pageResult.getTotal(), pageResult.getRecords());
}
8 redis 获取过期时间
/**
* 从redis中获取key对应的过期时间;
* 如果该值有过期时间,就返回相应的过期时间;
* 如果该值没有设置过期时间,就返回-1;
* 如果没有该值,就返回-2;
* @param key
* @return
*/
public long expire(String key) {
return redisTemplate.opsForValue().getOperations().getExpire(key);
}