
Java
Java学习道路上的一些总结和问题
刘华鹏0304
00后Java工程狮一枚,喜欢瞎琢磨
展开
-
swagger上传图片请求报错
swagger2.0版本会存在request的content-type。②:用了网上百度的各种方法。各种加header注解等等。③:灵机一动,用了很久没用的postman,。①:用了各种浏览器,怀疑是浏览器的问题。sawgger执行一直报错,获取不到file文件。建议使用postman原生请求,干净利落。原创 2025-03-27 16:56:19 · 319 阅读 · 0 评论 -
传入一个list map,寻找最大的key和对应的vlaue
然后,代码对List中的每个Map进行迭代,然后再对每个Map中的每个键值对进行迭代。如果值的类型是BigDecimal,那么就进行比较,找出最大值,并更新maxValue和maxField。首先,代码初始化了一个maxField和maxValue变量,用于记录最大值对应的键和最大值本身。最后,方法返回一个新建的Map.Entry对象,其中包含最大值对应的键和最大值本身。我们经常遇到需要从一个list map中获取最大的金额。原创 2025-02-19 17:41:05 · 349 阅读 · 0 评论 -
传入一个日期获取这个日期当前所在的自然周区间
【代码】传入一个日期获取这个日期当前所在的自然周区间。原创 2024-07-09 10:40:47 · 975 阅读 · 0 评论 -
List.jsonobject 取里面某个字符串进行排序
需要正序obj1和obj2调换方向就可以。原创 2024-06-06 16:45:22 · 388 阅读 · 0 评论 -
判断某个日期是否在某个时间段内【包含起止时间】
【代码】判断某个日期是否在某个时间段内【包含起止时间】原创 2024-04-11 09:21:28 · 463 阅读 · 0 评论 -
easyexcel加粗边框
【代码】easyexcel加粗边框。原创 2024-02-29 16:26:17 · 671 阅读 · 0 评论 -
easyexcel字体加粗
【代码】easyexcel字体加粗。原创 2024-02-29 14:43:35 · 1199 阅读 · 0 评论 -
Object转List
工作中经常会遇到一个map存key为string类型 value存object,方便我们下文代码获取数据。上述这种情况就是,一个map存在多个类型。下文获取需要将object转为list。原创 2024-02-22 09:46:47 · 1192 阅读 · 0 评论 -
Java正则只取中文和英文
【代码】Java正则只取中文和英文。原创 2024-02-19 13:33:14 · 300 阅读 · 0 评论 -
获取两个时间之间的所有日期
【代码】获取两个时间之间的所有日期。原创 2024-01-11 14:23:41 · 586 阅读 · 0 评论 -
mybatis as 后可以用占位符吗
先说结论 肯定是可以的。原创 2024-01-08 17:32:49 · 451 阅读 · 0 评论 -
获取起止时间内的所有自然周
【代码】获取起止时间内的所有自然周。原创 2024-01-08 17:30:11 · 525 阅读 · 0 评论 -
MybatisPlus saveBatch报空指针
根据源码 发现报错是一个类型校验,Java bean是string 表里是decimal类型。使用mybatisPlus的saveBatch批插,结果报空指针。以为是批插的list有空对象,经过排查没有空对象。原创 2023-12-22 09:40:06 · 993 阅读 · 0 评论 -
数据库日期类型dateTime,java用Date接收结果多一个.0
MySQL数据库表里数字段时date类型的字段,Java用string接收会莫名多一个.0。2.用substring截取。1.字段换成date。原创 2023-12-04 16:38:50 · 493 阅读 · 0 评论 -
easyExcel校验上传的文件表头
【代码】easyExcel校验上传的文件表头。原创 2023-09-18 13:25:16 · 1861 阅读 · 0 评论 -
springboot+java email发送邮箱报错javax.mail.MessagingException: Can‘t send command to SMTP host
一般这种报错如果不是配置问题,那就是邮箱发送频繁了。具体的邮箱发送上限限制也没有查到。也没时间去问企业微信客服,仅供参考~原创 2023-09-12 18:01:45 · 3914 阅读 · 1 评论 -
BigDecimal加减乘除工具类
【代码】BigDecimal加减乘除工具类。原创 2023-09-12 13:52:47 · 277 阅读 · 0 评论 -
inputStream重复使用消费easyExcel
【当然我也可以每个线程多次下载,但是每次都要连接ftp服务器,自己没有测试过性能,但是觉得不太雅观】但因为是多线程去跑同一个excel 解析多个sheet。就导致流被一个线程消费后别的线程无法使用。从FTP服务器上下载的文件流只能被easyexcel消费一次。clone流,或者把流放到缓存里。我这里采用的是clone多个流出来。方法使用很简单,就不多赘述。原创 2023-06-28 15:48:14 · 1324 阅读 · 0 评论 -
Map的map.get(Object key)方法传入数据类型 坑
我有一个map 是 string object 类型,另一个map是 integer object 类型。然后根据stirng的map去匹配integer的map。map.get 发现不是一个类型 不会报错,但是会影响最后结果。改成object,object 或者转成integer再去比较。原创 2023-06-27 17:57:52 · 1180 阅读 · 0 评论 -
快来 ,一起复习一下反射
反射是在运行状态中,对于任意一个类,都能获取该类的所有属性和方法;对于任意一个对象,都能调用它的任意一个方法和属性,这种动态获取类信息以及动态调用对象内容就称为Java的反射机制。原创 2023-06-01 10:44:40 · 2022 阅读 · 0 评论 -
快来,一起复习一下乐观锁悲观锁
乐观锁和悲观锁 只是用来形容并发的侧重程度,并不是具体到某个具体的锁。更侧重于一种思想参考。原创 2023-05-31 16:33:34 · 171 阅读 · 0 评论 -
快来,一起复习一下分布式
分布式系统指的是通过网络连接让多台计算机协同解决单台计算机所不能解决的计算、存储等问题,多台计算机之间通过 RPC 方式通信。总体来说,还是利大于弊的。不像之前的单体服务发布需要等到凌晨三四点。现在微服务可以各自负责各自的模块,发布速度也会很快。原创 2023-05-31 14:33:36 · 1413 阅读 · 0 评论 -
快进来,一起复习一下松耦合紧耦合
个人感觉耦合不单单指代码,也可以用来形容服务间的耦合程度。比如:单体服务:客户端请求进来直接就是服务器。(这就是服务商的紧耦合),这样虽然方便,快捷,减少了开发投入。但是可控性以及稳定性都会下降很多。可以在服务器和客户端之间加一层代理层,这样可以分发请求,也可以提高服务的稳定性以上皆是鄙人的拙见,如有误导,非有意,请指出。原创 2023-05-30 14:19:10 · 2278 阅读 · 0 评论 -
SimpleDateFormat线程不安全问题
在多线程中使用全局变量时一定要考虑到线程安全问题,若不确定是否存在线程安全问题的公共变量,则不要冒然使用,可以做一些测试和资料分析,或者使用局部变量。原创 2023-02-28 09:57:45 · 576 阅读 · 0 评论 -
@DateTimeFormat@JsonFormat注解详解
JASKSON在序列化时间时是按照国际标准时间GMT进行格式化的,而在国内默认时区使用的是CST时区,两者相差8小时,因为我们是东八区(北京时间),所以我们在格式化的时候要指定时区(timezone)。解析后存入DB中的则为:2023-02-23 09:46:12,查询时返回的数据则为:“2023年02月23日 09时46分12秒”@JsonFormat注解是属于Jackson的一个时间格式化注解,用于格式化时间。中国时间(Asia/Shanghai) = 格林尼治时间(GMT)+ 8。原创 2023-02-23 10:02:42 · 1108 阅读 · 0 评论 -
CSV导出报错input length=1
导出的时候报错 input length = 1。但是这个报错是编码报错 很奇怪。新的写法加了一个缓存区。到处百度大概意思是 内存缓存区太小,导出。csv导出报错 input length =1。原创 2022-12-29 11:53:39 · 2405 阅读 · 0 评论 -
MySQL varbinary类型字段 java怎么取
最近遇到,从MySQL取出二进制后string接收乱码。查了半天资料,处理方式如下:如下:,A是 byte[]类型原创 2022-12-29 11:43:18 · 466 阅读 · 0 评论 -
使用自定义注解校验list的大小
这样使用后,如果前端传递过来的listsize大小超出限制,会给提示。自定义注解实现类(可以自行修改maxSize的取值大小)原创 2022-07-27 09:40:43 · 1541 阅读 · 2 评论 -
MySQL varbinary类型字段 java怎么取
最近遇到,从MySQL取出二进制后string接收乱码。查了半天资料,处理方式如下:如下:,A是 byte[]类型原创 2022-06-23 17:07:11 · 763 阅读 · 0 评论 -
SpringBoot如何配置多数据源?
导入依赖spring依赖<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.9.RELEASE</version> <relativePath/> <!-- lookup parent fr原创 2022-05-26 10:26:22 · 1368 阅读 · 0 评论 -
java Map key-value 反转
1.Stream工具处理集合问题,如果开发环境是Java 8+,多使用Stream,Stream 是用函数式编程方式在集合类上进行复杂操作的工具。1.List转MapMap<String, String> collect = list.stream().collect(Collectors.toMap(obj -> obj.getXXX(), obj -> obj.getYYY()));2.Map的Key,Value翻转Map<String, String&原创 2022-05-18 09:25:46 · 11530 阅读 · 1 评论 -
Java MD5加密
/** * MD5 加密 * @param text * @return */ public static String encrypt(String text) { StringBuilder sb = new StringBuilder(""); try { MessageDigest md = MessageDigest.getInstance("MD5"); md.upd.原创 2022-03-24 15:13:58 · 664 阅读 · 0 评论 -
Java post 表单请求和json请求第三方接口
1、表单请求public final <Q, R> R getRequest(HttpExecutor httpExecutor, String uri, Class<R> clazz) { R response = null; List<NameValuePair> headers = new ArrayList<NameValuePair>(); headers.add(new BasicNameValu原创 2022-03-24 11:41:17 · 2644 阅读 · 2 评论 -
List之list数组使用List<String[]>
想要的结果“result”:[[ “列1”,“列2”,“列3”],[“列1”,“列2”,“列3” ]] public static void main(String[] args) { String[] array = {"java", "c"}; String[] array1 = {"java", "c"}; String s = Arrays.toString(array); System.out.println(s);原创 2022-03-23 15:29:05 · 3883 阅读 · 0 评论 -
Java 使用Fastjson将Json字符串转为泛型对象
1、导入依赖<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.62</version></dependency>2、泛型类/** * 返回泛型类 * @author liuhuapeng * @version 1.0 * @date 2022原创 2022-03-23 10:36:38 · 5786 阅读 · 0 评论 -
Lists.partition集合分组使用以及注意事项
1.介绍Lists.partition是com.google.common.collect包下的一个方法。作用是将目标集合按照传入的size分组。2.使用场景一般用于固定大小的集合处理,比如:我有两百个商品类型,要求前一百个一种处理方式,后一百个一种处理方式。3.用法pom文件<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</原创 2022-02-15 10:18:56 · 18863 阅读 · 0 评论 -
@Valid注解作用,为什么@NotNull会失效呢
作用@Valid,主要是用来校验绑定的参数是否符合预订的要求用法:通常用于controller层,入口处bean校验,如:非空校验下面这个例子,就是用于非空校验 @PostMapping("/queryStoreList") @ApiOperation(value = "查询店铺列表") @RequireLogin public Response<List<HapiQueryStoreListResp>> queryStoreList(@Req原创 2022-01-18 13:50:42 · 3800 阅读 · 0 评论 -
apollo配置用map接收
apollo配置如下。用key value接收Java代码@Value("#{${agent.partner.storeGroup}}")private Map<Integer,Integer> storeMap;这样获取就可以取到了。原创 2021-12-29 17:01:47 · 2406 阅读 · 0 评论 -
HashMap使用containsKey问题
背景:从map中匹配到一个key值,取到他对应的value使用: public static void main(String[] args) { Map<Integer, Integer> integerMap = new HashMap<>(); Integer bb = 1000; Long cc = 1000L; integerMap.put(bb,111); System原创 2021-12-29 16:36:00 · 1463 阅读 · 0 评论 -
Java 内部类详解
什么是内部类?在Java中,可以将一个类的定义放在另外一个类的定义内部,这就是内部类。内部类本身就是类的一个属性,与其他属性定义方式一致。内部类的分类有哪些内部类可以分为四种:成员内部类、局部内部类、匿名内部类和静态内部类。静态内部类定义在类内部的静态类,就是静态内部类。public class Outer { private static int radius = 1; static class StaticInner { public void vis原创 2021-12-23 09:22:18 · 496 阅读 · 0 评论