Java
文章平均质量分 52
Java笔记
优惠券已抵扣
余额抵扣
还需支付
¥19.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
邪丶魔狱
123
展开
-
MySQLSyntaxErrorException: Unknown error 1146和SQLSyntaxErrorException: Unknown error 1146
java.sql.SQLSyntaxErrorException 和 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146**com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146异常信息****java.sql.SQLSyntaxErrorException: Unknown error 1146异常信息*原创 2021-10-28 16:29:39 · 1712 阅读 · 0 评论 -
java.util.zip.ZipException: invalid CEN header (encrypted entry)
@[toc](java.util.zip.ZipException: invalid CEN header (encrypted entry))异常信息java.util.zip.ZipException: invalid CEN header (encrypted entry) at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:225) at java.原创 2021-10-28 16:20:19 · 2252 阅读 · 0 评论 -
java.sql.SQLException: #HY000
Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.2.7.RELEASE:repackage (repackage)on project server: Execution repackage of goal org.springframework.boot:spring-boot-maven-plugin:2.2.7.RELEASE:repackage failed: Unable to find main原创 2021-10-28 15:48:31 · 803 阅读 · 0 评论 -
java.sql.SQLIntegrityConstraintViolationException: #23000
java.sql.SQLIntegrityConstraintViolationException: #23000**异常信息****异常原因****解决方法**异常信息### Cause: java.sql.SQLIntegrityConstraintViolationException: #23000; #23000; nested exception is java.sql.SQLIntegrityConstraintViolationException: #23000] with root c原创 2021-10-28 12:55:10 · 3934 阅读 · 0 评论 -
判断素数的四种方法
判断素数的四种方法**1.暴力破解****实现描述****代码展示****2.素数表判断****实现描述****代码展示****3.埃拉托斯特尼(Eratosthenes)筛法****实现描述****代码展示****4.欧拉筛法****实现描述****代码展示**1.暴力破解实现描述1.若传入的数字小于2,则不符合素数的定义,抛出相应的异常2.能够被除1与它本身以外的数整除的数,皆是非素数(即合数)3.除2以外的偶数,皆有多个因数,所以除2以外的偶数皆是非素数(即合数)4.数的最小因数必然不大于原创 2021-10-28 12:46:07 · 219 阅读 · 0 评论 -
定位和排查OOM流程
定位和排查OOM流程**需要排查日志的情况****通过GC日志确认问题****RunTime类获取当前日志用量****代码展示****打印展示****可使用的位置****出现OOM后获取和分析Dump文件****压力测试排查内存问题****总结**需要排查日志的情况1.在GC过程中,会Stop the World,即不干其他活,比如一段早该运行好的程序,在某个时刻卡住,业务日志上没有异常2.通过CAT等监控工具,发现某段时间里内存用量居高不下3.稳定重现OOM问题,比如一天一次,或每天频繁出现OOM原创 2021-06-29 11:18:16 · 217 阅读 · 0 评论 -
Java内存优化
Java内存优化**Java代码中的内存泄漏****finalize方法****代码展示****打印展示****String****观察String的不可变特性****代码展示****图片展示****通过String观察常量和变量****代码展示****打印展示****常量与变量的存储位置****虚拟机结构****垃圾回收时的分代管理****内存回收流程****Minor GC和Full GC****判断对象可以被回收的标准****可作为根可达算法的对象****优化措施****代码中的优化措施****命令的原创 2021-06-29 11:13:04 · 273 阅读 · 0 评论 -
ConcurrentHashMap
ConcurrentHashMap**与HashMap、SynchronizedMap的差别****JDK1.7的实现方式****JDK1.8的实现方式****Node对象****JDK1.8中put的实现细节(含CAS原理)****CAS****JDK1.8中get的实现细节****volatile实例**与HashMap、SynchronizedMap的差别1.HashMap线程不安全2.ConcurrentHashMap在JDK1.7中是以锁segment的方式保证并发,在JDK1.8中是以CA原创 2021-06-29 11:07:34 · 61 阅读 · 0 评论 -
线程并发类
线程并发类**通过wait,notify管理并发****以生产者消费者问题观察wait和notify****代码展示****打印展示****通过Condition实现线程间的通讯****代码展示****打印展示**通过wait,notify管理并发1.两个方法都需要放置到synchronized的作用域中2.一旦执行wait方法,会释放synchronized所关联的锁,进入阻塞状态,无法再次主动地到可执行状态3.一旦执行notify方法,会通知因调用wait方法而等待的线程,如有多个线程等待,则会原创 2021-05-25 14:52:09 · 60 阅读 · 0 评论 -
Exception in thread “main“ java.lang.OutOfMemoryError
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at java.util.concurrent.ArrayBlockingQueue.<init>(ArrayBlockingQueue.java:255) at java.util.concurrent.ArrayBlockingQueue.<init>(ArrayBlockingQueue.java:239) at com.itpm.原创 2021-05-21 14:52:54 · 449 阅读 · 0 评论 -
Exception in thread “main“ java.util.concurrent.RejectedExecutionException
Exception in thread "main" java.util.concurrent.RejectedExecutionException**异常信息****异常原因****解决方法**异常信息Exception in thread "main" java.util.concurrent.RejectedExecutionException: Task com.itpm.project.ThreadLocalTest@4aa8f0b4 rejected from java.util.concu原创 2021-05-21 14:44:56 · 808 阅读 · 0 评论 -
ThreadPoolExecutor线程池
线程池**为什么要使用线程池?****构造ThreadPoolExecutor线程池的参数****基本用法****代码展示****打印展示****ThreadPoolExecutor线程池工作方式****代码展示****打印展示**为什么要使用线程池?避免因线程切换而造成的性能损耗构造ThreadPoolExecutor线程池的参数corePoolSize: 核心线程数maximumPoolSize: 最大线程数keepAliveTime: 线程空闲时间unit: keepAlive原创 2021-05-21 14:40:57 · 95 阅读 · 2 评论 -
ThreadLocal线程内部存储类
@tco内部数据结构一个线程类中有一个ThreadLocalMap,ThreadLocalMap中可以有多个Entry,每个Entry都存储了一个ThreadLocal本地变量set方法源码解析1.调用时需要传递一个参数2.进入set方法后,首先获取一个线程对象,使用getMap方法获取当中的ThreadLocalMap对象3.判断ThreadLocalMap对象是否为空,不为空就用ThreadLocal对象作为Key,值作为Value存储到ThreadLocalMap对象中;为空则直接原创 2021-05-21 09:25:42 · 76 阅读 · 0 评论 -
线程锁
线程锁**可重入锁****代码展示****打印展示****公平锁与非公平锁****公平锁****代码展示****打印展示****非公平锁****代码展示****打印展示****读写锁****代码展示****打印展示**可重入锁也叫可递归锁,当同一线程再次进入同步代码时,可以使用自己已获取到的锁;其目的是当同一线程多次获取到的是同一把锁能防止死锁的发生代码展示import java.util.concurrent.locks.Lock;import java.util.concurrent.loc原创 2021-05-20 11:36:46 · 77 阅读 · 0 评论 -
synchronized关键字
synchronized关键字**作用效果****修饰代码块****同一对象加锁****代码展示****打印展示****不同对象加锁****代码展示****打印展示****修饰方法****修饰静态方法****代码展示****打印展示****具有可重入特性****代码展示****打印展示**synchronized是同步锁,可重入锁作用效果修饰代码块修饰以{}包含的代码块,当多个并发线程到达时,只有一个线程能够执行,其他线程则被阻塞等待;synchronized作用的对象(锁定的对象)是调用代码块的原创 2021-05-19 17:36:31 · 63 阅读 · 0 评论 -
volatile关键字
volatile关键字解析**volatile关键字的特性****特性解释****不能保证原子性****代码展示****打印展示****使变量在线程间都可见****变量在线程间不可见****代码展示****打印展示****问题原因****变量在线程间可见****代码展示****打印展示**volatile关键字的特性1.不能保证原子性:2.能避免指令重排: 在编译和执行代码时,出于优化考虑,会重排指令;大多数场景下指令重排不会影响结果,但在多线程环境下可能会有问题3.使变量在线程间都可见: 在线原创 2021-05-19 17:30:35 · 52 阅读 · 0 评论 -
线程安全与线程不安全的直观表现
线程安全与线程不安全的直观表现**代码展示****打印展示****内存角度分析异常原因****线程安全与线程不安全的对象****将线程不安全的对象包装成线程安全的对象的方法**代码展示import java.util.List;import java.util.ArrayList;import java.util.Collections;public class ThreadSafeVisualPerformanceTest { public static int multithrea原创 2021-05-19 17:24:40 · 79 阅读 · 0 评论 -
设计模式背后包含的设计原则
设计模式背后包含的设计原则**依赖倒转原则****单一职责原则****里氏替换原则****合成复用原则**依赖倒转原则模块间(类之间)的依赖关系(如相互调用)是通过接口和抽象类发生,实现类之间不发生(或尽量少发生)依赖关系单一职责原则每个类或模块只具有单一的职责,即在其中只实现一种功能,否则就需要拆分类或模块里氏替换原则子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法;违背里氏替换原则不仅会造成代码维护困难,更加增加了多态调用时的复杂度合成复用原则核心思想: 优先使用组合和聚合,原创 2021-05-19 17:22:30 · 94 阅读 · 0 评论 -
异常处理准则
异常处理原则**finally从句的特性****代码展示****打印展示****异常中断程序问题****常见的能够终止程序的异常****NullPointerException: 空指针异常****异常信息****ArithmeticException: 算数异常****异常信息****RuntimeException: 运行时异常****异常信息****异常处理的准则**finally从句的特性无论程序运行是否发生异常,发生任何异常,finally从句中的代码都会被执行,即便在try和catch中使用原创 2021-05-17 09:15:30 · 75 阅读 · 0 评论 -
Exception in thread “main“ java.lang.CloneNotSupportedException
Exception in thread "main" java.lang.CloneNotSupportedException**异常信息****解决方法**异常信息Exception in thread "main" java.lang.CloneNotSupportedException: com.itpm.project.ShallowCopyAndDeepCopyTest$User at java.lang.Object.clone(Native Method) at com.itpm.pr原创 2021-05-13 19:39:15 · 473 阅读 · 0 评论 -
Java面试题13
Java面试题13**1.拦截器和过滤器的区别****2.什么是SpringMVC?****3.Spring的优势有哪些?****4.Bean实例化的三种方式是哪些?****5.AOP的作用及优势****6.AOP的底层是怎么实现的?****7.**************1.拦截器和过滤器的区别区别过滤器拦截器使用范围servlet规范中的一部分,任何Java Web工程都可以使用只能在SpringMVC框架的工程中使用拦截范围在 url-pattern中配置了/*后原创 2021-05-13 18:38:20 · 74 阅读 · 0 评论 -
浅拷贝与深拷贝
浅拷贝与深拷贝**浅拷贝****代码展示****打印展示****深拷贝****代码展示****打印展示**浅拷贝浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象共享同一块内存代码展示import java.util.ArrayList;public class ShallowCopyAndDeepCopyTest { public static class User { private String name; public Strin原创 2021-05-13 18:31:17 · 138 阅读 · 0 评论 -
重写hashcode和equals方法的原因
重写hashcode和equals方法的原因**1.不重写hashcode的后果****代码展示****打印展示****2.重写hashcode,但是不重写equals的后果****代码展示****打印展示****3.重写hashcode和equals****代码展示****打印展示**1.不重写hashcode的后果代码展示public class User { /** 用户名 */ private String username; /** 密码 */ privat原创 2021-05-13 16:16:44 · 59 阅读 · 0 评论 -
Exception in thread “main“ java.util.ConcurrentModificationException
Exception in thread "main" java.util.ConcurrentModificationException**代码展示****异常信息****图片展示****异常原因**代码展示public static void main(String[] args) { List<String> arrayList = new ArrayList<>(); arrayList.add("1"); arrayList.add("2");原创 2021-05-07 16:51:05 · 119 阅读 · 0 评论 -
java.lang.ExceptionInInitializerError: com.sun.tools.javac.code.TypeTags
异常信息[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project helloworld: Fatal error compiling: java.lang.ExceptionInInitializerError: com.sun.tools.javac.code.TypeTags -> [Help 1][ERROR]原创 2021-04-27 15:09:09 · 414 阅读 · 0 评论 -
Java面试题12
面试题12**1.什么是责任链模式?****2.Spring中都用到了哪些设计模式?****3.Spring Boot中都用到了哪些设计模式?****4.Spring MVC中都用到了哪些设计模式?**1.什么是责任链模式?避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止2.Spring中都用到了哪些设计模式?1.工厂设计模式: 通过BeanFactory或ApplicationContext创建bean对象2.单原创 2021-04-27 11:11:21 · 66 阅读 · 0 评论 -
Java面试题11
Java面试题11**1.什么是代理模式?****2.什么是单例模式?**1.什么是代理模式?是指一个类别可以作为其它东西的接口.代理者可以作任何东西的接口:网上连接、存储器中的大对象、文件或其它昂贵或无法复制的资源2.什么是单例模式?通过单例模式的方法创建的类在当前进程中只有一个实例(根据需要,也有可能一个线程中属于单例,如:仅线程上下文内使用同一个实例)...原创 2021-04-15 11:04:10 · 73 阅读 · 0 评论 -
Java面试题10
Java面试题10**1.#{}和${}的区别是什么?****2.****3.****4.****5.****6.****7.****8.****9.****10.**1.#{}和${}的区别是什么?1.#{}是预编译处理,${}是字符串替换2.Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值3.Mybatis在处理${}时,就是把${}替换成变量的值4.使用#{}可以有效的防止SQL注入,提高系统安全性2.在这里插入代码原创 2021-04-14 17:27:14 · 58 阅读 · 0 评论 -
Java实现99乘法表
Java实现99乘法表实现代码for (int i = 1; i < 10; i++) { /* \r\n 换行, \t 缩进 */ for (int j = 1; j <= i; j++) System.out.print(j + " * " + i + " = " + (i * j) + (i == j ? "\r\n" : "\t"));}原创 2021-04-07 09:55:35 · 134 阅读 · 2 评论 -
Nacos启动异常
Nacos启动异常**nacos启动方式****Win + R打开运行框,输入cmd打开命令提示符窗口,进入到nacos的bin目录下,在命令提示符窗口中输入以下命令****异常信息****异常原因****解决方法****关闭命令提示符窗口,打开我的 电脑(此电脑),在空白处右键点击属性,在系统下点击高级系统设置****点击高级,再点击环境变量****在系统变量下点击新建****变量名即为JAVA_HOME,变量值为JDK的安装路径,完成后点击确定****重新Win + R打开运行框,输入cmd打开命令提示原创 2021-03-11 09:51:05 · 819 阅读 · 0 评论 -
排序算法
排序方式**排序算法****算法分类****算法复杂度****相关概念****冒泡排序****动画演示****代码实现****选择排序****动画演示****代码实现****快速排序****动画演示****代码实现****插入排序****动画实现****代码实现****计数排序****动画演示****代码实现****基数排序****动画演示****代码实现****归并排序****动画演示****代码实现****堆排序****动画演示****代码实现**排序算法算法分类比较类排序: 通过比较来决定元素间原创 2021-03-04 16:30:23 · 62 阅读 · 0 评论 -
com.auth0.jwt.exceptions.SignatureVerificationException
com.auth0.jwt.exceptions.SignatureVerificationException: The Token's Signature resulted invalid when verified using the Algorithm: HmacSHA512**异常信息****异常原因**异常信息com.auth0.jwt.exceptions.SignatureVerificationException: The Token's Signature resulted inval原创 2021-02-02 17:33:41 · 2291 阅读 · 0 评论 -
com.auth0.jwt.exceptions.TokenExpiredException:The Token has expired on Tue Feb 02 15:39:44 CST 2021
com.auth0.jwt.exceptions.TokenExpiredException: The Token has expired on Tue Feb 02 15:39:44 CST 2021.**异常信息****异常原因**异常信息com.auth0.jwt.exceptions.TokenExpiredException: The Token has expired on Tue Feb 02 15:39:44 CST 2021. at com.auth0.jwt.JWTVerifie原创 2021-02-02 16:08:27 · 8206 阅读 · 2 评论 -
Java的时间类型数据返回到前端时间格式变为2020-12-28T07:20:17.071+0000的解决方法
Java的Date时间类型数据返回到前端时间格式变为2020-12-28T07:20:17.071+0000的解决方法**异常信息****异常原因****解决方法**异常信息{ "createtime": "2020-12-28T07:20:17.071+0000",}异常原因Java的时间类型数据返回到前端前会先被底层转换成Json格式的字符串,所以返回到前端的时间会变成2020-12-28T07:20:17.071+0000格式解决方法import com.alibaba.fast原创 2020-12-28 17:11:16 · 3431 阅读 · 0 评论 -
Java面试题
Java面试题**1.选择题****1.1.下列选项中,用于在定义子类时声明父类名的关键字是(C)****1.2.System.out.println("1" + 2 - 3)的输出结果应该是(D)****1.3.下面哪个是对称加密算法(B)****1.4.下面程序的运行结果是(D)****1.5.以下代码执行后输出结果为(B)****1.6.下列外部类定义中,不正确的是(C)****1.7.对于java类型变量char c,short s,float f,double d,表达式c * s + f + d原创 2020-11-23 11:40:53 · 152 阅读 · 3 评论 -
IllegalArgumentException: Parameter Maps collection does not contain value for java.lang.String
IllegalArgumentException: Parameter Maps collection does not contain value for java.lang.String异常信息50.388 ERROR o.a.c.c.C.[.[.[.[dispatcherServlet]:175 Servlet.service() for servlet [dispatcherServlet] in context with path [/project] threw exception [原创 2020-11-23 10:15:51 · 232 阅读 · 0 评论 -
java.lang.UnsatisfiedLinkError: no jacob-1.18-x64 in java.library.path
java.lang.UnsatisfiedLinkError: no jacob-1.18-x64 in java.library.path异常信息java.lang.UnsatisfiedLinkError: no jacob-1.18-x64 in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860) at java.lang.Runtime.loadLibrary0(Runtime.ja原创 2020-11-12 15:12:26 · 879 阅读 · 5 评论 -
Java将字符串输出成音频的工具类
Java将字符串输出成音频的工具类**导入配置文件**编写Util工具类导入配置文件下载dll配置文件链接:https://pan.baidu.com/s/1fqdgABV8-musViEBKMgVeg 提取码:2559将压缩包中的配置文件移动到JDK的bin目录下编写Util工具类引入jacob依赖<dependency> <groupId>com.hynnet</groupId> <artifactId>ja原创 2020-11-12 15:04:04 · 265 阅读 · 0 评论 -
IDEA中对代码进行commit时,git报Unable to create ‘E:/blog/.git/index.lock‘: File exists问题解决
IDEA中对代码进行commit时,git报Unable to create 'E:/blog/.git/index.lock': File exists问题解决**解决方法****方法一****方法二****方法三**异常信息Commit failed with errors0 file committed, 13 files failed to commit: 2020年10月22日14:11:13Unable to create 'E:/blog/.git/index.lock': Fil原创 2020-10-22 17:47:41 · 998 阅读 · 0 评论 -
Mybatis批量更新异常解决
Mybatis批量更新异常解决异常信息org.springframework.jdbc.BadSqlGrammarException: ### Error updating database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the rig原创 2020-09-29 17:53:49 · 479 阅读 · 0 评论