![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 61
Pisces_224
当你想成功的时候,你就一个理由;当你想放弃的时候,你有千万个理由。
展开
-
java List转String,逗号分隔
2、将逗号分隔的字符串转换为List。1、将list转化为逗号分割的字符串。3、将字符串中的字符替换。转载 2023-11-29 10:54:13 · 7955 阅读 · 0 评论 -
集合的removeIf方法
如下:删除list中的字符串 “123”原创 2023-11-17 14:00:22 · 1881 阅读 · 0 评论 -
区分什么是Java内存模型(JMM)和 JVM运行时数据区
Java的内存区域和内存模型是不一样的东西,内存区域是指JVM 运行时将数据分区域存储,强调对内存空间的划分。而内存模型(Java Memory Model,简称 JMM )是定义了线程和主内存之间的抽象关系,即 JMM 定义了 JVM 在计算机内存(RAM)中的工作方式,如果我们要想深入了解Java并发编程,就要先理解好Java内存模型。原创 2023-08-26 15:55:52 · 1156 阅读 · 0 评论 -
【多线程】 —— 线程池
线程池就是事先将多个线程对象放到一个容器中,当使用的时候就不用 new 线程而是直接去池中拿线程即可,节省了开辟子线程的时间,提高的代码执行效率。在JDK的java.uti.concurrent./executors类中提供了生成多种不同线程池的静态方法然后调用他们的 execute 方法即可。这 4 种线程池底层 全部是 ThreadPoolExecutor 对象的实现,阿里规范手册中规定线程池采用 ThreadPoolExecutor 自定义的,实际开发也是。原创 2023-08-20 09:19:49 · 402 阅读 · 0 评论 -
为什么一定要用ThreadPoolExecutor创建线程池?
线程池的创建方式总共分为两大类:手动使用 ThreadPoolExecutor 创建线程池和自动使用 Executors 执行器创建线程池的方式。其中使用 Executors 自动创建线程的方式,因为线程个数或者任务个数不可控,可能会导致内存溢出的风险,所以在创建线程池时,建议使用 ThreadPoolExecutor 的方式来创建。原创 2023-08-19 18:12:17 · 219 阅读 · 0 评论 -
LinkedList插入数据效率和ArrayList对比
1 在尾部插入数据时,数据量较小时LinkedList比较快,因为ArrayList要频繁扩容,当数据量较大时ArrayList比较快,因为ArrayList扩容是当前容量1.5倍,大容量扩一次就能提供很多空间,而LinkedList每次add时候会new Node当数据量大时,这里就会耗时较多了。3 插入越往中间,LinkedList效率越低,因为它遍历获取插入位置是从两端往中间搜,index越往中间遍历越久,因此ArrayList的插入效率可能比LinkedList高。转载 2023-08-18 10:45:05 · 988 阅读 · 0 评论 -
转载:JAVA中intern()方法的详解
转载于:很多童鞋可能在Java考试中或者笔试中遇到String字符串比较相等的问题,今天就来谈一谈在JAVA虚拟机中,有运行时数据区,包含线程共享的:堆,方法区 和线程隔离的:程序计数器,Java虚拟机栈,本地方法栈.其中方法区包含一块取域,叫做常量池,因为型被用到的频率高,所以HotSpot将它放入了常量池.转载 2023-08-17 17:02:13 · 223 阅读 · 1 评论 -
为什么wait/notify必须与synchronized一起使用?
面试常常说使用wait、notify、notifyAll必须在同步代码块里也就是和synchronized一起用,为啥呢?在Java中,,即同一时刻只能有一个线程执行被synchronized关键字包裹的代码块或方法。这样可以。,直到其他线程调用相同对象的notify()或notifyAll()方法来唤醒它。当一个线程调用wait()方法时,它,允许其他线程进入临界区并执行相关操作。。如果有多个线程等待,只能唤醒其中一个线程,具体唤醒哪个线程是不确定的。,让它们。原创 2023-08-17 16:37:35 · 449 阅读 · 0 评论 -
Java Integer原子操作——AtomicInteger
1.AtomicInteger类是系统底层保护的int类型,通过对int类型的数据进行封装,提供执行方法的控制进行值的原子操作,但AtomicInteger ≠ Integer。2.AtomicInteger是一个提供原子操作的Integer类,通过线程安全的方式操作加减。从JAVA 1.5开始,AtomicInteger 属于java.util.concurrent.atomic 包下的一个类。能够帮助你们解决问题是博主的荣幸,你们的支持是我创作的最大动力!转载 2023-07-14 09:08:33 · 2552 阅读 · 0 评论 -
Java SpringBoot接口,用于代理转发,隐藏真实接口
一个简单易用的接口代理转发工具原创 2023-03-22 15:53:21 · 3858 阅读 · 0 评论 -
测试代码运行时间
测试一段代码运行时间原创 2023-03-17 10:37:28 · 161 阅读 · 0 评论 -
linux下项目启动nohup命令设置不生成nohup.out文件
nohup启动i项目不生成nohup.out文件原创 2023-03-16 14:52:44 · 3011 阅读 · 0 评论 -
关于springboot读取配置类,使用@Autowired自动注入为null的问题
springboot普通类调用配置类 自动注入为null的问题原创 2023-02-15 16:49:31 · 1938 阅读 · 0 评论 -
关于form表单post请求上传数据量太大导致后台接收为null且出现空指针异常问题
tomcat限制post提交数据量原创 2023-02-03 18:04:22 · 2463 阅读 · 0 评论 -
关于 idea点击右侧maven clean清除旧的打包信息报错:Failed to delete xxx
文件被进程占用,导致maven clean失败原创 2022-12-22 15:14:51 · 3417 阅读 · 4 评论 -
报错:Data truncation: Truncated incorrect DOUBLE value: ‘xxx‘
关于实体类未加@Id注解导致报错原创 2022-12-08 10:15:29 · 974 阅读 · 0 评论 -
apache-poi导出数据到excel(SXSSF)
poi之SXSSF导出数据到excel原创 2022-09-06 13:36:10 · 2600 阅读 · 0 评论 -
解决: 设置了切面环绕通知后,方法内部异常无法被全局异常处理器捕获输出(自定义切面日志)
切面日志,环绕通知阻碍全局异常捕获原创 2022-08-19 16:19:46 · 1964 阅读 · 0 评论 -
SXSSF导出:对比一下poi-3.17版本和poi-4.1.2(4.0以上)版本的改动
poi 4.0以上的导出问题原创 2022-07-07 15:36:44 · 4141 阅读 · 0 评论 -
转载一篇IDEA tomcat控制台输出中文乱码的解决办法
idea控制台tomcat启动中文乱码提示转载 2022-06-13 16:27:43 · 516 阅读 · 0 评论 -
excel文件导出之前的等待提示信息
以ssh项目为例的excel导出等待提示框实现原创 2022-06-06 11:34:08 · 597 阅读 · 1 评论 -
idea如何新建mybatis mapper.xml文件
如题试图点击file——>new——> XML Configure File,但是新建的文件都不是自己想要的,记得上一次直接从别处直接找来的xxxMapper.xml文件内容复制粘贴再修改的。这次又遇到了,索性记录一下正儿八经的步骤。1. 新建一个模板点击 File——> Settings,然后如下图:点击 + 号,新建模板,输入易识别的名字,然后后缀是 xml,在下方框里输入mybatis-mapper.xml的通用模板内容,然后点击应用。 模板如下:<?xml ve原创 2022-04-06 10:10:55 · 13968 阅读 · 14 评论 -
仅供参考——自定义结果封装类
文章目录如题1. 自定义全局响应类2. 自定义error基础接口(父接口):2.1 基于业务的错误码类和异常类封装:2.2 基于系统的错误码类和异常封装:3. 自定义MyMebMvcConfigurer配置类实现WebMvcConfigurer接口最后举例子调用以上封装类如题从事开发的小伙伴想必都知道,当一个项目逐渐庞大时,特别是前后端分离的项目,我们与前端交互时,往往需要将所有数据交互的返回结果都按统一的格式封装,这样制定一个标准,看起来简单,整洁,便于理解,以便于我们跟前端小姐姐深入交流~这里我原创 2022-03-02 14:06:00 · 623 阅读 · 0 评论 -
Spring————事务管理
事务管理是企业级应用程序开发中必备技术,用来确保数据的完整性和一致性。本文主要讲解事务涉及到一些概念以及spring中事务的使用。1、何为事务? 事务就是把一系列的动作当成一个独立的工作单元,这些动作要么全部完成,要么全部不起作用。就是把一系列的操作当成原子性去执行。事务四个属性ACID1、原子性(atomicity)事务是原子性操作,由一系列动作组成,事务的原子性确保动作要么全部完成,要么完全不起作用...转载 2022-03-01 10:22:26 · 99 阅读 · 0 评论 -
(个人理解)一个java应用的分层结构(dao、service、controller...)
如题现如今随着技术的不断发展,yigejava项目的构建也变的无比的简单。那么一个完整的项目涉及到不同层,不同逻辑,如何有效的区分,不至于让我们在编写/阅读代码时跳来跳去跟无头苍蝇一样乱窜呢?以下是我个人的一些拙劣看法,有不对之处或更好的还请各位小伙伴不吝赐教,谢谢!正文以一个多模块的项目(类似管理系统)作为例子:|————project项目名 |————xxx-api |————xxx-business |————xxx-common |————xxx-sy原创 2022-02-28 15:23:13 · 3634 阅读 · 0 评论 -
java开发中经常听说POJO、entity、model等等的一些解释
如题自己也算java开发一年半多了,以上几个耳熟能详的名词也都习以为常了,今天看一篇文章突然想写一下,参考别人博客,以作记录。解释1. BeanBean,应用在Spring上,所有被Spring管理的类对象就可以将其称作为Bean。它不仅仅可以包括对象的属性以及get,set方法,还可以有具体的业务逻辑。2. entity顾名思义,实体,即指数据库表对应到实体类的映射。3. POJO普通java对象,除了属性和get、set方法外不包含具体的业务逻辑方法,和Entity区别在于没有和数据表原创 2022-02-28 11:30:42 · 4949 阅读 · 0 评论 -
转载:Rest和Restful二者的一些区别
本文转载于:https://blog.csdn.net/weixin_41829196/article/details/79641911 一.概念和区别:1.关于restrest :representational state transfer 表述性状态转移,是一种架构风格。rest原则: <1>网络上的所有事物都被抽象为资源 <转载 2022-02-28 09:51:17 · 3556 阅读 · 0 评论 -
转载:idea 注入mapper报错报红的几种解决方案
相信大家在使用idea的时候一定会遇到这样的问题,就是在service里注入mapper的时候,明明代码没有问题,也可以运行,但是idea它就是给你报个错,有个红色的波浪线在下面,这让人感觉很不舒服。怎么办呢? 先来大概说一下,产生这种现象的原因。idea其实是非常智能的,它可以理解Spring的上下文,然鹅 XxxxMapper 这种接口是Mybatis的,IDEA它理解不了。再加上 @Autowired 这个注解呢,它默认情况下要求依赖对象(也就是 XxxxMapper )必须存在,而IDE转载 2022-02-10 14:57:29 · 3221 阅读 · 0 评论 -
关于springboot中@RequestMapping注解的consumes和produce解释
声明:本文部分转载于—— 这里因为项目中遇到:@PostMapping(path = "/checkToXXX", consumes = "application/json;charset=utf-8")虽知道大致用途,但没有仔细关注过,今天趁此机会记录一下,加深记忆。我们首先知道它是用来指定信息传递的格式(发送和接收),这里就涉及到了 Content-Type 这个东东。1. Content-TypeMediaType,即是Internet Media Type,互联网媒体类型;也叫转载 2022-01-19 20:07:26 · 8701 阅读 · 0 评论 -
利用EasyExcel完整的springboot +vue前后端导出并下载excel表格
文章目录写在前面正文1. springboot后端引入easyexcel及使用1.1 引入依赖1.2 接口serviceImpl方法1.3 提供一个对list集合去重的方法(根据相同key,去除重复,合并value值)1.4 BizMergeStrategy合并策略类1.5 自定义ExcelUtil工具类2. vue前端调用后台下载excel接口实现点击按钮完成下载2.1 上图对应vue代码2.2 export_excel() 方法3. vue多种方式实现调用后台接口下载excel (本小节借鉴他人原创 2021-12-31 19:58:49 · 8374 阅读 · 0 评论 -
poi版本4.0及以上判断单元格为空
今天研究easyexcel,导入依赖后,发现之前的导入excel数据代码出现错误,判断单元格为空的方法爆红了。原来是easyexcel用的高板本poi jar包覆盖了旧的poi版本。而以前的一些方法被废除了。版本4.0以上废除以下判断单元格为空的方法if(cell != null || cell.getCellType() != Cell.CELL_TYPE_BLANK) { nullCellNum ++;}新的判断空单元格方法如下:if (null == cell || cell.getC原创 2021-12-22 19:35:18 · 1529 阅读 · 0 评论 -
转载:String,Integer,Double等类型相互转换
int, String转Ingeter(定义时)Integer a=new Integer(int value); Integer a=new Integer(String value);String转IntegerInteger.valueOf("");Integer.getInteger("");String、Integer转intInteger.parseInt("");Integer a;a.intValue();Integer转float,double,longa.fl转载 2021-12-21 10:06:36 · 1064 阅读 · 0 评论 -
记录项目springboot + vue部署到linux下的tomcat,一系列问题
部署过程1. 打开idea下的后台项目,点击右侧maven:① 清除以前的打包残留;② 打包③ 将本项目依赖安装到本地仓库,以供其他项目使用(对打包而言可忽略执行它)打包成功后,多模块的项目会有多个jar包,每个jar包之间的依赖关系通过pom.xml控制。然后,将所有jar包复制好,准备上传到linux服务器。1.1 使用FileZilla上传文件,SecureCRT执行命令FileZilla————>sftp账户密码连接,或者密钥文件连接。进入到存放项目的目录下,将本地jar包原创 2021-12-20 17:00:25 · 1773 阅读 · 0 评论 -
springboot项目配置logback-spring.xml文件控制台输出日志及写入到日志文件
一个可用的xml文件<?xml version="1.0" encoding="UTF-8"?><!--scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒当scan为true时,此属性生效。默认的时间间隔为1分钟。debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。--原创 2021-12-11 17:05:46 · 1825 阅读 · 0 评论 -
Web server failed to start. Port 8989 was already in use.
关闭端口占用进程netstat -ano|findstr “8989”tasklist | findstr “50544”taskkill /f /t /im “java.exe”原创 2021-12-10 16:56:47 · 1145 阅读 · 0 评论 -
Required String paramter ‘username‘ is not present
原因Spring Boot的注解@RequestParam不支持接受请求体内的json数据。以下为转载他人部分:https://blog.csdn.net/qq_39506912/article/details/90107756重点为对三个注解的比较错误分析 使用Post向接口发送json数据时显示如下错误: WARN 13392 --- [nio-8080-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved excepti原创 2021-12-09 14:54:35 · 2991 阅读 · 0 评论 -
解决double类型数据数值太大自动转为科学计数法的问题
直接上代码import java.math.*;class TestDouble { public static void main(String[] args) { double num1 = 8.2347983984297E-7; // 小于1 double num2 = 8.2347983984297E7; // 大于1 BigDecimal bd1 = new BigDecimal(String.valueOf(num1)); BigDecimal bd2 = new BigDe原创 2021-12-09 14:27:38 · 4504 阅读 · 2 评论 -
字符数组、String、StringBuffer的相互转化,StringBuffer的一些方法
文章传送门:https://www.cnblogs.com/caiyishuai/p/9665732.html基础不牢,地动山摇。是时候好好复习一遍基础了~转载 2021-12-08 22:00:43 · 208 阅读 · 0 评论 -
关于http请求url传参数特殊字符解析出错的问题
Http请求方法有四种:Get、Post、Put、Delete;我们一般用到的就两种:Get和Post。 Get请求:参数通过Url进行传递,不安全。如果参数有特殊字符(&、?)时,可能会把一个参数分解为多个参数进行传递。 如:http://www.iyiqiba.com?url=www.baidu.com?type=1&name=zhaPost请求:参数一般是通过请求体传递的(可以通过参数传递),基本可以避免参数特殊字符引起的参数解析错误问题。 为了更好的描述问题,我...转载 2021-12-08 21:38:03 · 5495 阅读 · 0 评论 -
解决 idea突然使用debug功能时项目启动一半卡住没反应也不报错
问题如题,之前好好的,今天突然想debug断点调试,debug模式启动慢的一批,结果前台发数据过来,后台也不响应,也不报错,跟个呆头鹅似的。遂网上查了一下原因,原来是因为之前不小心把断点加在了方法上,导致这个问题。解决去掉方法的断点快捷键:ctrl + shift + F8 打开断点管理器,去掉方法上的断点。...原创 2021-12-08 11:00:34 · 2183 阅读 · 1 评论