自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (7)
  • 收藏
  • 关注

原创 查询某个类是在哪个JAR的什么版本开始出现的方法

借助这些网站,我们可以既可以搜索某个类是在什么版本出现的,也可以当程序执行报ClassNotFound等异常时,搜索缺失的依赖是什么

2023-12-14 16:39:49 1161

原创 Maven无法拉取SNAPSHOT依赖的解决办法

默认情况下Maven无法拉取SNAPSHOT依赖,需要在POM中进行配置后方可以进行拉取。

2023-09-08 15:25:47 3105

原创 你了解Java的内部类吗

前言  我们在平时的工作或学习中或多或少使用过“内部类”,但是关于“内部类”可能有以下问题或疑惑:“内部类”的相关概念以及分类是什么,有时候编译器提示的错误信息不明白什么意思,如:为什么要使用“内部类”,什么时候使用“内部类”为什么有时候使用static标注,有时候却不用“内部类”的属性以及方法的访问规则是什么  带着这些问题,......

2022-09-12 23:32:59 429

原创 Maven温故知新-生命周期与插件

前言  maven大家都很熟悉,平时在开发中我们用它来管理项目结构以及引入依赖,在开发完成之后也可有用它来打包并将制品发布到私服,也可以根据选择进行站点发布以版本发布(release),maven虽然并不能在代码层面给予帮助,但是它却能做一些最一些其他很酷的事,所以熟练的掌握maven也是至关重要的。  最近在工作中遇到了相关问题,发现对maven的认识有一些偏差,于是又重新温故了一下关于生命周期以及插件的相关知识,以便能够更好的掌握maven。正文  我们平时会使用到一些指令,但很有可能仅仅停留在

2022-02-01 23:10:02 1290 1

原创 Java泛型原理篇: 类型擦除以及桥接方法

文章开始之前首先还是先思考一个经典问题List<String> stringList = new ArrayList<>();List<Intege.

2021-12-26 01:33:35 1791 6

原创 Java泛型进阶篇: 无界通配符、上界通配符以及下界通配符

专栏文章导航Java泛型入门篇: 泛型类、泛型接口以及泛型方法Java泛型进阶篇: 无界通配符、上界通配符和以及下界通配符Java泛型(三): 类型擦除文章目录前言1. 无界通配符使用方法List<?>与List应用场景2. 上界通配符使用方法基本写法指定泛型标识多重上界特点应用场景3. 下界通配符使用方法特点应用场景前言    在介绍通配符之前,首先我们来思考如下问题:public class Animal {}public class Cat extends An.

2021-11-28 15:59:49 1515 1

原创 Java泛型入门篇: 泛型类、泛型接口以及泛型方法

专栏文章导航Java泛型入门篇: 泛型类、泛型接口以及泛型方法Java泛型进阶篇: 无界通配符、上界通配符以及下界通配符Java泛型原理篇: 类型擦除以及桥接方法文章目录前言1. 什么是泛型2. 泛型的使用泛型类使用方法泛型类继承泛型接口使用方法泛型接口实现类泛型方法使用方法静态泛型方法所属类为泛型类/泛型接口前言    我们在平时的开发当中基本上无时无刻都在使用泛型,尤其是涉及到集合、多态或自定义类的场景,可以说是泛型是一个十分重要的特性。但包括我在内的大多数人,对泛型的掌握不够深刻,.

2021-11-18 00:30:38 2593

原创 Idea查看源代码警告Library source does not match the bytecode for class XXX解决办法

背景执行代码的时候抛出异常,想在第三方jar文件中打断点分析问题原因,进入该文件后IDEA给出警告翻译过来就是资源库的源代码与类的字节码不匹配,当前我们在UpgraderManager.java中,右侧有一个Open.class file按钮,点击之后就会跳转到UpgradeManager.class中,点击show diff或者对比这两个文件可以看到是不一样的。这个问题影响还是挺大的,具体的现象就是程序真正运行的代码行书,与我们看到的代码行书不一致,也就没法打断点分析程序的走向分析我们在使用第

2021-10-13 17:50:27 13809 4

原创 IDEA代码警告(warning)整理以及解决办法

Redundant boxing inside ‘Integer.valueOf(xx)’解决办法:改为Integer.parseInt(xx)即可。因为Integer.valueOf内部调用了parseInt,会提示多余的拆箱操作‘xxx == null ? false : yyy’ can be simplified to 'xxx!=null && yyy解决办法:按照提示修改即可。简化写法,原来写法比较啰嗦‘OptionalInt.getAsInt()’ witho.

2021-08-19 15:31:03 47233 4

原创 常用IDEA快捷键

CTRL +F12,显示当前文件结构CTRL+N,根据类名查找文件CTRL+B,相当于CTRL+左键CTRL+U,方法的父类的方法 / 接口定义

2021-08-05 13:30:18 692

原创 IDEA中maven的pom文件变灰有删除线的处理办法

背景在将已有的项目导入IDEA中(尤其是一个IDEA窗口导入多个项目)时,经常会出现某些模块的pom.xml文件变灰、有删除线,并且IDEA也不能够识别该模块为maven模块,导致程序无法正常启动。解决办法点击菜单栏File->Settings,或快捷键Ctrl+ALT+S依次展开弹出层左侧的菜单树:Build, Execution, Deployment->Build Tools->Maven,点击Ignore Files菜单在右侧的窗口中取消勾选被选中的文件,点击确定即可

2021-07-28 10:19:36 5819

原创 强烈推荐的GitHub浏览插件-Octotree

背景GitHub是全球最大的代码托管平台,在工作中或者学习中经常会用到该网站去浏览代码、下载代码或者托管代码。当然国内也有很多很多类似的平台如码云Gitee、Coding等、甚至工作中处于安全性考虑都会自己搭建git环境,比如本地GitLab等,但是GitHub的地位是无法撼动的。基本上所有的开源框架都会将代码发布到GitHub上供开发者去使用,并且收集bug以及交换意见等。抛开国内访问慢甚至有时打不开这个大环境因素,日常在使用GitHub中最大的痛点就是不能像我们平时开发使用IDE一样,根据文件夹或者

2021-07-13 17:35:08 3729 1

原创 深入了解maven多版本依赖冲突处理机制

依赖传递Maven避免发现以及指定自己的依赖需要的库的需要通过自动包含传递依赖Maven可以自动的传递依赖项依赖中介(Dependency Mediation)https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html...

2021-07-11 16:25:20 6653 5

原创 IDEA中Tomcat日志乱码

写作背景今天执行apllo官方demo的时候,运行spring例子需要自己手动配置Tomcat,启动后控制台Tomcat Localhost Log以及Tomcat Catalina Log启动日志包含中文的部分乱码。将IDEA中的编码都调成UTF-8因为不生效,因为调的都是本地文件而非Tomcat的编码,后续找到参数设置位置,记录一下如果下次遇到同样的问题可以进行参考。开发环境IDEA2021.1Tomcat 8.5.66解决办法不需要修改Tomcat的配置文件server.xml,只需要

2021-07-06 09:33:02 167

原创 Maven学习(二):Maven的基石-POM详解

Maven学习-总目录观察我们创建的项目就可以发现,无论是父模块还是子模块,都包含一个pom.xml配置文件,接下来我们将要学习POM的相关知识。POM介绍项目对象模型(Project Object Model)也成为POM,是Maven项目的基本单位。POM是以.xml配置文件的形式存在于项目中的,它包含了项目信息以及构建项目的配置详情。当项目去执行一个任务或目标时,Maven会在当前目录寻找POM并且读取信息以及配置,最后去执行相应的功能。POM可以指定配置信息,如项目的依赖,插件等,也可以制

2021-07-05 21:09:44 579 1

原创 Maven学习-总目录

Maven学习(一):简介&环境搭建Maven学习(二):Maven的基石-POM

2021-07-05 18:48:44 111

原创 IDEA使用Tomcat运行web项目教程

写作背景从Nacos的GitHub中下载demo,准备运行nacos-spring-config-example,由于非spring boot项目,不内置Tomcat容器,所以需要自己配一下。而已经很久没有手动配置过Tomcat了,准确的步骤记不清,而且在配置过程中,出现了很多以前没遇到过的异常情景,网上的博客对这些异常处理也不准确,而且非常少,于是自己记录一下完整的配置过程,以及异常情景的解决办法,帮助那些有同样问题的小伙伴准备需要下载Tomcat,并解压到自定义路径一个Web项目,以..

2021-07-03 14:09:19 10082 4

原创 Maven学习(一):简介&环境搭建

官网写作背景初次接触到Maven已经是N年前,最开始写项目时还是采用将jar放到项目lib文件夹中的方式去使用,后来公司采用了Maven,也就开始学习了,不过对Maven的印象仅仅是停留在使用Maven去下载jar。这次来到新公司第一个项目就是转换release小项目,一开始想要做成Maven插件的方式,但是我不会,所以就降低了难度什么是mavenmaven是一个意第绪语单词,含义大致为知识的累加,最开始是作为简化Jakarta Turbine项目所做的尝试。这些项目每一个都有自己的Ant构建文件,

2021-07-01 23:32:50 281

原创 Maven插件之Dependency:analyze

写作背景完成新功能的开发后,在发包前同事告诉我要检查maven工程的依赖,并告诉我相关指令,此文记录一下使用方式正文简介maven官网之Dependency插件Dependency插件提供了操纵artifact的能力,可以复制以及拆包本地或远程仓库的artifact到指定地点。进入mvn dependency:analyze如果是使用idea的话,那么就不用...

2021-06-30 10:39:16 15421 2

原创 java -jar没有物料清单属性的解决办法

文章未完成,先做记录执行maven的package命令,将程序打包成jar,在执行java -jar xxx.jar时会报找不到某个类,或者提示“没有物料清单属性”:错误信息提示Exception in thread "main" java.lang.NoClassDefFoundError异常问题原因:打包的jar中没有将使用的第三方jar的类打包在内,如果打包的jar在几十K左右大小,那么就有可能会造成该异常提示no main manifest attribute, in xxxx.jar

2021-06-18 15:03:34 759

原创 idea读取properties文件乱码问题的解决办法

写作背景项目中使用了公司开发的工具类去读取记录表创建SQL的properties文件,测试之后发现表的中文注释为乱码。在别人那里执行就没有问题,所以可以肯定的是自己idea的配置项有问题。检查了可以设置编码的所有位置,但发现都没有问题。后来发现了一处properties文件的设置并进行修改,后续就不再乱码了解决办法依次点击菜单栏File - Settings - Editor - File Encodings在窗口右侧下方的Properties Files栏中,勾选Transparent nativ

2021-06-02 18:32:42 499 1

原创 Class xx can not access a member of xx with modifiers public

写作背景今日进行代码重构之后,执行单元测试时报了IllegalAccessException,一般为调用反射代码时没有权限。问题是反射的代码是由底层的jar来实现,而不是自己写的代码;并且之前的单元测试都没有问题。仔细看了一下,异常信息最后的信息为不到一个带有public static final修饰的成员,也就是找不到一个常量。分析首先明确一点就是该异常就是访问权限不够所致。一般遇到此问题,异常信息为Caused by: java.lang.IllegalAccessException: Class

2021-05-31 16:55:23 2252

原创 MySQL列的默认值(default)的研究

文章目录写作背景版本说明官方文档中的说明显式默认值隐式默认值数据类型的默认值sql_mode与strict_mode查看sql_mode设置sql_mode测试总结文章开始之前先思考一下,假设MySQL中有一张如下的表CREATE TABLE student ( `name` VARCHAR(20) NOT NULL COMMENT '姓名', `age` INT NOT NULL DEFAULT 18 COMMENT '年龄');其中name以及age列都为NOT NULL,不同的是age有

2021-05-27 18:53:23 3577 2

原创 IDEA开启并配置services窗口

背景之前自己的电脑,idea的services窗口是右下角弹出层提示是否开启,点击之后就有了services窗口,在里边管理微服务模块比较方便。今天换了公司的电脑,安装了idea之后,并没有自动弹出来。在网上搜索了如何开启,有的说修改配置文件之类的,个人觉得软件的设计人员也不会让你手动去修改配置文件,肯定是会让你通过UI界面自己去设置。所以记录一下我是如何开启services窗口的方法方法还是比较简单的1.点击菜单栏:Views -> Tool Windows -> Services;中

2020-08-27 10:34:13 53487 27

原创 LocalDateTime转换字符串格式问题

背景负责修改的模块有一个实时工况功能,根据时间排序查询数据,处理后返回给前台做图表展示。测试的时候同事发现了图表中经常有数据非常突兀,本来平滑的图表变成了T字形问题排查查看数据发现其他格式都是’yyyy-MM-dd HH:mm:ss’,而有问题的数据为’yyyy-MM-ddTHH:mm’。这里其实数据都是这种带T的,只把’yyyy-MM-ddTHH:mm:ss’的数据转换为正常格式的数据。但是有问题的数据是没有秒的,所以我转换的时候抛出转换异常,然后展示为原来的格式。因为排序时字母T比空格顺序靠后,

2020-08-17 07:46:58 3068

原创 使用feign发生的异常java.lang.IllegalStateException: Ambiguous mapping

做feign例子的时候,在编写熔断器之前,是好用的,但是当编写熔断器之后,启动程序会抛出异常java.lang.IllegalStateException: Ambiguous mapping@FeignClient(name = "myservice", fallback = UserFeignFallback.class)@RequestMapping("/user")public interface UserFeignClient { @GetMapping("/{id}")

2020-06-19 05:57:03 1758 1

原创 使用@JsonFormat转换时间类型为指定时间格式的字符串

背景在我们的数据库使用datatime等类型时,实体类需要使用Date或者LocalDateTime等相对应(当然也可以使用String,不过格式不受控制,而且有时候我们其他功能需要使用Date等类型,所以不推荐使用String),我们希望给调用者以我们希望的时间格式传递json,而不是默认的格式。通常我们可能会使用for循环,遍历每一个元素进行转换,如下List<User> users = xxx;SimpleDateFormat fomatter = new SimpleDateFo

2020-06-11 17:57:27 9069

原创 SpringBoot中Mybatis-Plus组件的使用

Mybatis-Plus是一个以Mybatis为基础,目的是为了开发者更简单的使用Mybatis,简化开发,提高效率。意愿是成为Mybatis最好的搭档,就像魂斗罗中的1P、2P特点(节选自官网)无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求支持 Lam

2020-06-08 09:24:20 1693

原创 调用本类中标注@Transactional、@Async以及@Valid的方法等注解不生效的解决办法

不生效的原因不做探讨,只讨论解决办法,共三种(第四种AopContext.currentProxy()未成功)(不推荐)最简单的就是将此方法方法移到其他类中 。这种方法奏效,但是无缘无故需要多建立一个service(接口、实现类)。注入ApplicationContext获取bean/** * 技能service实现类 */@Service@Slf4jpublic class AbilityServiceImpl implements IAbilityService { @Au

2020-05-24 16:48:06 589

原创 参数校验Jakarta Bean Validation学习

1.参数验证问题我们在平时的学习与工作中,都需要对参数进行校验,比如在注册时,用户名密码不能为空,用户名长度必须小于10等等。虽然有些校验在前端页面会进行验证,但是后端为了增加健壮性也需要对这些参数进行判断(比如绕过前端页面而直接调用了接口,参数的合法性未知),可能就会在controller或者service中就会有如下代码的出现package com.beemo.beanvalidation.controller;import lombok.Data;import org.springframe

2020-05-17 16:35:18 16224 5

官方java8规范-jls8.rar

The Java Language Specification Java SE 8 Edition, JDK8规范, Java8规范

2022-01-06

draw.io-14.9.6-windows-no-installer.rar

github下载太慢,下载之后分享给大家

2021-08-19

github-tree-code-plugin-octotree_v7.0.6.rar

GitHub树型浏览插件octotree_v7.0.6

2021-07-13

UMLv2.5.1官方PDF

UMLv2.5.1官方PDF

2021-07-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除