java
Romantic_321
你这个问题我不敢苟同
展开
-
获取 /resources 目录资源文件的 9 种方法
方法获取流,上面的几种方式都需要获取文件路径,但是在SpringBoot中所有文件都在jar包中,没有一个实际的路径,因此可以使用以下方式。根路径下获取,SpringBoot中所有文件都在jar包中,没有一个实际的路径,因此可以使用以下方式。类获取文件流,SpringBoot中所有文件都在jar包中,没有一个实际的路径,因此可以使用以下方式。通过绝对路径获取项目中文件的位置,只是本地绝对路径,不能用于服务器获取。主要是通过设置环境变量,将文件放在环境变量中,原理也是通过绝对路径获取。原创 2022-09-28 14:52:07 · 451 阅读 · 0 评论 -
lombok详解
上面那个 @Data 适合用在 POJO 或 DTO 上,而这个 @Value 注解,则是适合加在值不希望被改变的类上,像是某个类的值当创建后就不希望被更改,只希望我们读它而已,就适合加上 @Value 注解,也就是 @Value for immutable class。这里注意一个 Java 的小坑,当我们没有指定构造器时,Java 编译器会帮我们自动生成一个没有任何参数的构造器给该类,但是如果我们自己写了构造器之后,Java 就不会自动帮我们补上那个无参数的构造器了。原创 2022-09-05 11:13:30 · 248 阅读 · 0 评论 -
java 获取对象集合的某个字段组成新的集合
【代码】java 获取对象集合的某个字段组成新的集合。原创 2022-09-02 13:54:23 · 2939 阅读 · 0 评论 -
论Spring的各种工具类
一、断言 断言是一个逻辑判断,用于检查不应该发生的情况 Assert 关键字在 JDK1.4 中引入,可通过 JVM 参数-enableassertions开启 SpringBoot 中提供了 Assert 断言工具类,通常用于数据合法性检查 //要求参数object必须为非空(NotNull),否则抛出异常,不予放行//参数 message 参数用于定制异常信息。voidnotNull(Objectobject,Stringmessage)......原创 2022-04-02 19:07:13 · 579 阅读 · 0 评论 -
java给pdf添加水印
public static void main(String[] args) { com.ciic.core.util.OfficeUtil.setLicence(); addWatermark("C:\\Users\\Dash\\Desktop\\劳动合同(标准版).pdf","已作废"); } // 添加水印 //filepath:文件路径 //data:水印文字内容 public static void addWatermark.原创 2021-12-13 18:27:52 · 7355 阅读 · 5 评论 -
java计算某天是周几
// 实现给定某日期,判断是星期几 public static String getWeekday(String date){//必须yyyy-MM-dd SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdw = new SimpleDateFormat("E"); Date d = null; .原创 2021-11-23 13:43:09 · 854 阅读 · 0 评论 -
java 排查内存溢出的方法及代码处
一、修改一下自己的程序/tomcat配置,将内存调小一点容易调试-XX:+HeapDumpOnOutOfMemoryError -Xms20m -Xmx20m二、写一个死循环测试1、@Testpublic void memoryTest(){ List<ContractTmpt> list = new ArrayList<>(); while (true){ list.add(new ContractTmpt("13241.原创 2021-10-21 16:58:11 · 3736 阅读 · 0 评论 -
java 时间类型添加年份、月份和天数
1、首先使用到了java.util.Calendar工具类下面进行测试: @Test public void addTimeTest() throws ParseException { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date date = simpleDateFormat.parse("2021-10-31"); ...原创 2021-08-03 10:51:03 · 2360 阅读 · 0 评论 -
java根据坐标在PDF指定位置添加文本
目录一、使用Aspose1、前言:2、创建一个模型3、demo测试二、使用Itext1、前言2、创建模型3、测试demo1)测试方法2)实现代码三、效果展示一、使用Aspose1、前言: Aspose可能需要收费,在https://mvnrepository.com/上有可能下载不下来,所以配上Aspose.Pdf的jar包链接:https://pan.baidu.com/s...原创 2021-07-29 14:54:51 · 4535 阅读 · 8 评论 -
关于java的深浅拷贝问题BeanUtils.clone
在日常开发中,我们经常需要给对象进行赋值,通常会调用其set/get方法,有些时候,如果我们要转换的两个对象之间属性大致相同,会考虑使用属性拷贝工具进行。如我们经常在代码中会对一个数据结构封装成DO、SDO、DTO、VO等,而这些Bean中的大部分属性都是一样的,所以使用属性拷贝类工具可以帮助我们节省大量的set和get操作。市面上有很多类似的工具类,比较常用的有1、Spring BeanUtils2、Cglib BeanCopier3、Apache BeanUtils4、Apa..转载 2021-07-28 18:07:38 · 1806 阅读 · 1 评论 -
No converter found for return value of type: class java.util.ArrayList
1.在pom.xml中添加json依赖<!-- jackson --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> ...原创 2021-07-28 18:01:33 · 145 阅读 · 0 评论 -
idea 写js代码拼接html代码错误不提示
1、在项目中有很多童鞋书写js代码时可能报错,然后鼠标放到红线的位置点第一个以为这样就不会报错了,可是虽然不报红线了,但是编译却不通过,想恢复页恢复不了,就类似于下面这种2、解决方案:file->setting 搜索javascript,然後修改一下就好了...原创 2021-07-07 14:16:42 · 1201 阅读 · 0 评论 -
java 对word中占位符\标签 ${}进行内容替换
1、先看效果图结果:代码:package com.test.wordTest;import org.apache.poi.hwpf.HWPFDocument;import org.apache.poi.hwpf.usermodel.CharacterRun;import org.apache.poi.hwpf.usermodel.Paragraph;import org.apache.poi.hwpf.usermodel.Range;import org.apach原创 2021-06-28 18:12:43 · 3936 阅读 · 5 评论 -
springmvc下载文件
@RequestMapping("/downloadFile") public void downloadFile(HttpServletRequest request,HttpServletResponse response) { try { // 获得请求文件名 /*String filename = request.getParameter("测试文件");*/ // 获取目标文件的绝对路径 String src...原创 2021-06-21 17:56:29 · 268 阅读 · 0 评论 -
完蛋!项目中用了Arrays.asList、ArrayList的subList,翻车了
1、使用Arrays.asList的注意事项1.1 可能会踩的坑先来看下Arrays.asList的使用:转载 2021-06-04 10:11:52 · 152 阅读 · 0 评论 -
字符串判空,isBlank 和 isEmpty 到底选那个?
字符串的判空,日常开发是经常要做的一种校验,common-lang包帮我们做了一些字符串判空的封装原创 2021-06-04 10:02:00 · 862 阅读 · 3 评论 -
java 集成pdf.js
1、首先下载pdf.js源码,下载地址为:http://mozilla.github.io/pdf.js/2、解压放到自己的项目当中,位置自己选择原创 2021-05-27 13:04:54 · 676 阅读 · 0 评论 -
miniUi tree 的使用
1、声明一个div<div size="240" showCollapseButton="true"> <div class="mini-toolbar" style="padding:2px;border-top:0;border-left:0;border-right:0;"> <input id="key" name="key" class="mini-textbox" style="width:160px;" onenter="onKeyEnter"/&原创 2021-05-20 13:50:32 · 1377 阅读 · 0 评论 -
java 根据list中 | 中、英文名称进行排序
@Test public void sortTest(){ List<User> list = new ArrayList<>(); list.add(new User("12",14,"zhagnsan")); list.add(new User("12",14,"lisi")); list.add(new User("12",14,"wangwu")); list.add(new User..原创 2021-05-10 14:25:07 · 3434 阅读 · 0 评论 -
java 删除list中符合条件的对象(几种方法,避免入坑)
报出异常:java.util.ConcurrentModificationException,关于这个异常的原因,看了很多文章,基本上解释如下:ArrayList的父类AbstarctList中有一个域modCount,每次对集合进行修改(增添、删除元素)时modCount都会+1。很明显,并没有达到我们预期的效果,因为下标是固定死的自增,但list的大小在随着删除元素不停的减小,并且后面的元素往前移了1位,所以后面的元素遍历不到。2、第一种遍历循环:fori循环。5、使用迭代器删除也是可以的。...原创 2021-04-29 14:24:39 · 19494 阅读 · 2 评论 -
java判断请求接口来源是pc端还是mobile端
直接上代码public static boolean isMobileDevice(String requestHeader){ /** * android : 所有android设备 * mac os : iphone ipad * windows phone:Nokia等windows系统的手机 */ String[] deviceArray = new String[]{"android",原创 2021-03-15 15:18:14 · 1413 阅读 · 0 评论 -
java 根据map的key / value进行排序,超简单!
话不多说,直接上代码:@Test public void mapLambdaTest(){ Map<String,Integer> map = new LinkedHashMap<>(); map.put("张三",50); map.put("李四",60); map.put("王五",30); map.put("赵六",10); //如果想根据map的key进行排序的话只需原创 2021-03-11 10:16:49 · 553 阅读 · 1 评论 -
根据map的value进行排序2
JAVA对Map按Value值排序在java实际编程中经常需要使用到HashMap,TreeMap以及LinkedHashMap来保存键值对,而java中对Map按Value排序并没有已经写好的方法,需要自己实现。作者使用了自定义类以及Collections包的sort()方法实现Map的按值排序,具体代码如下:sortMap() 输入参数为需要排序的Map,输出为LinkedHashMap类型,因为需要保证顺序。 public static LinkedHashMap<String,转载 2021-01-15 14:03:50 · 233 阅读 · 0 评论 -
java 根据map的value进行排序
package org.sklse;import java.util.Arrays;import java.util.Comparator;import java.util.HashMap;import java.util.Map;import java.util.Set;public class Test {public static void main(String[] args) {Map<String ,Integer> map = new HashMap<.原创 2021-01-14 15:35:59 · 489 阅读 · 0 评论 -
java.lang.NoClassDefFoundError: org/bouncycastle/operator/DigestAlgorithmIdentifierFinder
1、在mvnrespostory下载两个jar包2、将jar包放在C:\Program Files\Java\jdk1.8.0_66\jre\lib\ext目录下3、编辑C:\Program Files\Java\jdk1.8.0_66\jre\lib\security\java.security文件添加一行security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider...原创 2020-12-10 14:12:24 · 1179 阅读 · 0 评论 -
Idea输出日志乱码:Java web项目
一、问题描述Java web项目,采用logback记录日志,使用tomcat做为启动容器,但是,当运行的时候,打印日志有很多中文乱码。网上参考了很多,但是总感觉没有详细明确的说法。而且logback日志编码已经设置为UTF-8。二、问题原因Idea显示日志的编码,默认好像不是UTF-8,修改为UTF-8。同时Tomcat运行虚拟机VM的编码默认也不是UTF-8,所以也需要设置一下。三、解决问题1.设置IDEA显示编码为UTF-8(1)Help-》Edit Custom转载 2020-12-10 11:13:45 · 381 阅读 · 0 评论 -
windows 安装jdk环境变量
在Win10中配置环境变量的方法跟在Win8和Win7中有些不同,看了看网上好多还是Win7/8里面的配置方法。虽然从原理上基本上没什么问题,但有些细节却会让人很苦恼。特意整理下新的配置方法。我假定你已经正确安装了JDK和JRE。1. 配置JAVA_HOME首先打开环境变量的配置界面,新建一个系统环境变量:变量名:JAVA_HOME 变量值:E:\JDK\JDK1.8其中变量值为你的JDK安装目录2. 配置CLASSPATH与JAVA_HOME的配置方法类似,再新建一个变量.转载 2020-11-25 10:59:28 · 168 阅读 · 0 评论 -
JAVA实现将文字合成到指定图片的指定位置(JAVA合成文本文字到图片文件:附font字体不生效解决办法)
实现效果如图:代码如下:参数s1,s2分别代表你想要合成到图片中的文字信息,如需多个可自行进行修改import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageEncoder; import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;import java.io.Fi原创 2020-08-04 10:58:40 · 1461 阅读 · 1 评论 -
使用HttpClient出现java.io.IOException: Attempted read from closed stream
【问题】使用HttpClient出现java.io.IOException: Attempted read from closed stream【原因】EntityUtils.toString(HttpEntity)方法中操作的是流数据,流数据是一次性数据所以同一个HttpEntity不能使用多次该方法【修复】先用EntityUtils.toByteArray(HttpEntity)获取到字节数组,再对字节数组多次转字符串判断编码【是否我导致】是【解决Bug的时间】20分钟【教训】操作流数据的方原创 2020-07-31 17:19:25 · 737 阅读 · 0 评论 -
Java实现给图片局部打马赛克(前提是知道坐标的情况下)
直接上代码package com.test;/** * 图片区域类 * @author hty * */public class ImageArea { int x; //指定区域左上角横坐标 int y; //指定区域左上角纵坐标 int width; //指定区域宽度 int height; //指定区域高度 public ImageArea(int x, int y, int width, int height) { super(); this.x = x;原创 2020-07-17 16:53:47 · 958 阅读 · 0 评论 -
Java8对List集合对象某个字段进行排序
1、声明一个测试对象import java.time.LocalDate;import java.util.List;import lombok.Data;@Datapublic class StudentInfo{ //名称 private String name; //性别 true男 false女 private Boolean gender; //年龄 private Integer age; //身高 pri.原创 2020-07-10 16:01:38 · 21524 阅读 · 4 评论 -
idea 右键没有Git选项,但是代码是Git clone下来的
idea默认是支持git插件的,不需要额外安装,但是第一次使用,需要手动开启版本控制集成选项。需要在菜单栏vcs->选择开启版本控制集成选项,如下所示:接下来,需要选择开启的版本控制系统是Git这样,项目右键,或者文件右键,都会出现Git选项:...原创 2020-03-25 17:21:24 · 1910 阅读 · 0 评论 -
java 截取集合的几条数据
测试: @org.junit.Test public void listTest(){ List<ItemVO> list = new ArrayList<>(); for (int i=0;i<5;i++){ ItemVO vo = new ItemVO(); vo.set...原创 2020-03-13 13:45:23 · 940 阅读 · 0 评论 -
java对集合中某个字段进行排序
下面首先我们先创建一个测试类,这里重点说一哈,可以实现一个Comparable接口重写compareTopublic class TestA implements Comparable<TestA> { private String name; private Integer age; public TestA(String name, Integer...原创 2020-03-13 13:37:36 · 1252 阅读 · 0 评论 -
Fastjson List转JSONArray以及JSONArray转List
1.fastjsonList转JSONArrayList<T> list = new ArrayList<T>();JSONArray array= JSONArray.parseArray(JSON.toJSONString(list));2.fastjsonJSONArray转ListJSONArray array = new JSONArray()...原创 2020-01-08 16:13:39 · 422 阅读 · 0 评论 -
Result Maps collection already contains value for...BaseResultMap
Result Maps collection already contains value for...BaseResultMap异常信息mybatis出现Result Maps collection already contains value for…BaseResultMap的错误异常原因既有可能是generatorSqlmapCustom逆向工程热的货。假如使用gene...原创 2020-01-06 15:59:30 · 286 阅读 · 0 评论