![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
小黑孩.
疯狂cv中...
展开
-
使用jsoup爬取网页资源(某东为例)
根据相应的标签找到对象的属性,最后输出我们需要的东西即可。其中JD是创建的一个实体类,来接收爬取到的资源。第二步,直接复制粘贴这个工具类即可。原创 2023-02-16 10:32:33 · 347 阅读 · 0 评论 -
Java调用WebService接口之利用hutool工具包实现
而且测试接口地址还是内网的,每改一处代码都要部署堡垒机去测试,光是一个登录接口就花了我两天时间很是无语(主要是接口文档地址不会看)相信看到这,大家都有点蒙,不知如何下手,今天就以我的亲身经历告诉大家如何解决这种问题(hutool)是个好东西。调用成功之后就会返回下图获取sessionId,我们还可以获取cookie等参数,具体要根据你们的业务来获取即可。到此处就算是调用成功了,后面如遇到其他问题还会继续更新此文章的!上面传参的内容可以参考图四,map是要传入的参数。接口的地址大就是这种,以wsdl结尾的。原创 2023-01-11 21:47:03 · 1863 阅读 · 5 评论 -
简单实现多线程的Demo
/ 最大线程数 非核心线程数=最大线程池数-核心线程池数。// 非核心线程池最大空闲时间单位。// 非核心线程池最大空闲时间。原创 2022-12-10 15:45:58 · 422 阅读 · 0 评论 -
一行代码快速取两个集合的交集,并集,差集
两个集合不去重的并集为:[张三, 李四, 王五, 赵六, 小红, 小黄, 小蓝, 王五]两个集合去重的并集为:[张三, 李四, 赵六, 小红, 小黄, 小蓝, 王五]两个集合的差集为:[张三, 李四, 赵六]ListUtils工具类来实现。s1.add("张三");s1.add("李四");s1.add("王五");s1.add("赵六");s2.add("小红");s2.add("小黄");s2.add("小蓝");s2.add("王五");两个集合的交集为:[王五]原创 2022-12-10 15:25:16 · 669 阅读 · 0 评论 -
Java实现文件上传与下载(后端)
作为刚踏入Java开发的我们,在接触到项目时,文件上传与下载是必不可少的功能点。up主刚入职那几天也是很懵,不知如何下手,今天给大家简单演示一下后端如何实现。大家可以拷贝直接就用了 文件上传成功 当然除了以上这种还有很多方式,还可以直接使用io流来完成,大家灵活变通应用在自己项目钟即可原创 2022-12-05 17:48:46 · 2110 阅读 · 0 评论 -
Mybatis-Plus中的and和or用法
先看Mybatis-Plus官网中对这两个关键字用法的介绍 数据库文件: 表数据: 最直接的方法: 也可以用下面的方法用mybatis-plus最直接的方法 也可以用以下方法原创 2022-12-05 17:00:39 · 5275 阅读 · 0 评论 -
今年世界杯预测(阿根廷队冠军)
2022年卡塔尔世界杯即将拉开帷幕,预测今年世界杯冠军是阿根廷国家队。作为南美双雄之一,阿根廷国家队一直以来便是足球界的强队之一,在近些年来,球队诞生了新的球王梅西,也是当今足坛最优秀的足球运动员之一,在梅西的带领下阿根廷队取得了很好的成绩,近年来更是达到了巅峰。去年的美洲杯赛场上阿根廷国家队击败巴西队获得美洲杯冠军,在今年的欧美超级杯上,阿根廷队面对欧洲杯新的冠军意大利队也不落下风。今年是三十四岁的梅西的最后一届世界杯之旅,已经保持了三十多场比赛连续不败的记录,阿根廷队本届世界杯夺冠概率最高。 但足球运动原创 2022-12-05 15:01:17 · 1036 阅读 · 1 评论 -
Java8用Stream流一行代码实现数据分组统计,排序,最大值、最小值、平均值、总数、合计
Java8对数据处理可谓十分流畅,既不改变数据,又能对数据进行很好的处理,今天给大家演示下,用Java8的Stream如何对数据进行分组统计,排序,求和等汇总统计方法找到汇总统计的方法。这些方法属于java 8的汇总统计类。getAverage(): 它返回所有接受值的平均值。getCount(): 它计算所有元素的总数。getMax(): 它返回最大值。getMin(): 它返回最小值。getSum(): 它返回所有元素的总和。看官可以根据自己的需求进行灵活变通。原创 2022-12-02 18:47:01 · 21217 阅读 · 1 评论 -
maven打包提示找不到符号
在用package打包自己模块时会提示找不到符号,我们install之后还是提示该错误。刚入职的小伙伴,在用maven打包部署时会遇到maven提示找不到符号等错误。等install完成之后,我们再去我们的模块下面进行打包即可。这时我们可以选择打包install整个项目。原创 2022-11-14 14:21:56 · 4953 阅读 · 3 评论 -
“JSON parse error: Cannot deserialize value of type `java.util.ArrayList<XXX>` from Object value ...
今天周末加班改bug时,用postman传参遇到上述一个错误,搞了我十分钟。今天分享给大家避免踩坑。可以看到enclosureList是一个集合形式的数据。因为enclosureList是一个集合,要在后面加上。EnclosureUploadDTO里面有这几个参数。乍一看没啥问题啊,一执行的时候就报告错误。大概能看出是我这个集合数据传参方式不对。好了,这就是我解决以上错误的方法。给大家看下我用postman传参方式。首先我的controller类如下。通过错误提示最后一句话。原创 2022-11-12 11:32:41 · 48386 阅读 · 3 评论 -
idea配置springBoot或者SpringCloud微服务多环境配置
一.在Edit Configurations里找到Program arguments:输入指令--nacos-ip=10.9.119.40:30848 --nacos-namespace=lq 如配置--spring.profiles.active=dev也可以指定dev文件。在SpringBoot项目中,我们可能需要配置环境变量来应对不同运行环境,例如我们需要在公司环境连nacos才可以跑本地项目,但是到甲方环境就是另外一种环境。本文章列出几种除了配置application.yml的方法。原创 2022-11-08 20:20:14 · 4421 阅读 · 0 评论 -
postman出现Required request part ‘file‘ is not present
Required request part 'files' is not present 所需的请求部分“文件”不存在。这里我写的是file,实际后台接收的是files。另外还要检查你的传参名字是否正确。原创 2022-11-08 16:01:58 · 3783 阅读 · 0 评论 -
postman错误提示“Current request is not a multipart request”
今天在写业务进行批量上传文件时,用postman测试发现报500错误----Current request is not a multipart request,翻译了一下大概意思是。需要把Content-Type设置成multipart/form-data或着去掉Content-Type即可,有问题欢迎大家留言。从错误提示看,报错的原因可能和Headers头文件信息有关,去查看Headers信息时如下。看到mutipart字样,大概出错原因和它有关系了。当前请求不是多部分请求。原创 2022-11-08 15:07:05 · 7566 阅读 · 0 评论 -
Mybatis-Plus判断数据是否存在,不存在则插入
因为是用的Mybatis-Plus所以直接用它来实现业务功能,起初是把要插入的数据放到mybatis-plus中,代码如下。就是把要插入的数据先在表中查出来是否存在,查出来的结果放到List集合中,但是在遍历时始终想不到合适的思路,起初是这样写的。然后判断这个结果是不是空的,如果是空的则说明数据库中没有该数据,则可以进行插入。今天写业务代码有这么一个场景,就是在数据库表中插入一条数据,并且这个表中只有这么一条。因为是周五,要着急下班,所以异常信息自己定义的一个,今天就说这么多吧。喜欢的话可以给个赞哦。原创 2022-11-04 20:25:33 · 8411 阅读 · 0 评论 -
MySQL去重中 distinct 和 group by 的区别
今天在写业务需要对数据库重复字段进行去重时,因为是去重,首先想到的是distinct关键字。于是我在distinct后面加上了id,distinct查出来的数据就是全部数据了,相当于distinct没起作用。而 group by 可以针对要查询的全部字段中的部分字段去重,它的作用主要是:获取数据表中以分组字段为依据的其他统计数据。distinct适合查单个字段去重,支持单列、多列的去重方式。即只有所有指定的列信息都相同,才会被认为是重复的信息。多列的去重则是根据指定的去重的列信息来进行,原创 2022-11-04 17:04:23 · 3837 阅读 · 0 评论 -
对象集合根据其中某个字段去重
写代码时经常遇到对集合中某个字段进行去重,用遍历的话既浪费时间又要写大量代码,今天给大家介绍借助jdk8的新特性--> Stream流进行处理listVOS.stream() .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(StageCheckListVO::getStackBatch))), ArrayList::原创 2022-10-25 18:30:27 · 1766 阅读 · 0 评论 -
@JsonFormat与@DateTimeFormat的区别
经过该注解会转化为2022/10/5,如果想加上时分秒的话可以@JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss") ,timezone="GMT+8",中国时区是东八区,所以加8小时即是中国时间。这样的话,就算前端传入了 2022-10-15 18:19这样的日期值,经过这个注解会转化成 2022/10/15。一、@JsonFormat,后台从数据库中取出时间数据,以@JsonFormat定义的格式传给前端进行展现。pattern的格式可以自定义。如果想加上时分秒的话,原创 2022-10-05 18:26:16 · 773 阅读 · 0 评论 -
Java实现统计文章中出现多少字,每个字出现的次数
一、我们使用谷歌提供的 Multiset 集合来实现。会显示q出现2次,a出现1次,s出现2次等。原创 2022-10-03 16:42:57 · 536 阅读 · 0 评论 -
Stream的方法说明
Java 8 API添加了一个新的抽象称为流Stream,它和集合的不同点在于 流是内部迭代的它类似于以SQL语句的方式来对集合进行流式处理,能够让我们的代码更简洁原创 2022-10-03 11:29:34 · 126 阅读 · 0 评论 -
JAVA字符串转日期及日期转字符串
【代码】JAVA字符串转日期及日期转字符串。原创 2022-09-30 21:02:45 · 3875 阅读 · 0 评论 -
Java生成二维码,简单上手
java生成二维码工具,拿来即可使用-Java文档类资源-CSDN下载原创 2022-08-19 00:53:45 · 130 阅读 · 0 评论 -
用Java实现Md5加密工具类
可以看到我们的密文被反向查询到了,为了提高密码的安全性,我们可以使用加盐策略,即在我们在密码进行摘要时,传入我们自定义的盐值。现在加入自定义盐值后为: md5.digest((value+"小黑孩666").getBytes())紧接着我们再进行测试得到密文为:t0GogEtYK8pMgSSjd/K9Sg==原先是 md5.digest(value.getBytes())但是这种方法也不安全,因此我们可以拿着这个密文去尝试一下解密。紧接着我们可以先测试一波看看能否加密成功,测试代码为。......原创 2022-08-06 15:34:56 · 1779 阅读 · 0 评论 -
Maven项目编译运行后target/classes目录下没有xml和properties文件和resource文件
将下面代码粘贴到pom文件里build里即可,然后重新compile一下就可以在target/classes下看到了。原创 2022-06-18 01:02:32 · 1278 阅读 · 0 评论 -
Math.ceil() 函数使用介绍
Math.ceil() 函数使用介绍 及Math.floor()方法的说明原创 2022-06-03 16:17:31 · 9634 阅读 · 0 评论 -
String类的matches()方法的使用
java.lang包中的String类,java.util.regex包中的Pattern,Matcher类中都有matches()方法。该方法大多用于正则表达式例子:给String类型的ageStr赋值为字符串型数据,判断ageStr是否包含正整数( [1-9]\\d* 为正则表达式,大家可找一个正则表达式的在线生成器生成一个)public class test { public static void main(String[] args) { St...原创 2022-05-19 09:53:16 · 3703 阅读 · 0 评论 -
Java对象的序列化和反序列化
序列化:把Java对象转换为字节序列的过程反序列化:把字节序列恢复为Java对象的过程注意:参与序列化和反序列化的类必须实现Serializable接口,该接口没有方法,但是默认会生成一个序列化版本号其中包含序列化对象的方法:writeObject()包含反序列化对象的方法:readObject()应用示例:序列化操作创建一个实体类并实现Serializable该接口public class Goods implements Serializable {原创 2022-04-30 13:57:28 · 503 阅读 · 0 评论 -
Java中怎么利用FileOutputStream文件输出流向文件中添加字符串或者汉字
创建好文件输出流对象和字符串对象后,可以调用字符串对象的getBytes()方法,将字符串转换成对应的二进制然后进行写入public class WirteStringDemo { public static void main(String[] args) throws Exception{ //向文本中写入文本数据 FileOutputStream outputStream=new FileOutputStream("./../document/zhang.原创 2022-04-28 17:04:19 · 2318 阅读 · 0 评论 -
Java中集合和数组的区别
区别:1) 数组的长度是固定的,集合的长度可以动态扩展2) 数组只能存储相同类型的数据,集合可以存储不同的类型的数据public static void main(String[] args) { int[] arr={1,2,3}; arr[2]=2.0; }在编译期会提示类型不匹配的错误public static void main(String[] args) { List list=ne...原创 2022-04-27 09:53:21 · 3454 阅读 · 0 评论 -
String类中的concat()方法的使用
concat(String string) 返回值是String类型用法 concat(String string) 返回值是String类型 说明 将指定字符串拼接到此字符串的末尾 public class HexDemo { public static void main(String[] args) { String string="你好:"; string=string.concat("java"); System.o原创 2022-04-26 11:57:20 · 17653 阅读 · 0 评论 -
Java中 String s = new String(“hello“)和String s = “hello“的区别
区别:String s1 = new String(“hello”)会创建2个对象,首先是new String(“hello”)会创建一个字面量对象保存到字符串常量池中,然后在堆内存中申请内存存储String类型的对象,地址值赋给引用 s1;s1会去方法区的常量池中找有没有“hello”,如果有的话会将s1的引用地址指向常量池的“hello”String s = “hello”由于上述过程,常量池中已经存储了一个hello,此时只需要将hello所在空间的地址值赋给引用 s;因...原创 2022-04-24 10:20:47 · 2728 阅读 · 1 评论