自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (1)
  • 收藏
  • 关注

原创 自动生成spring-configuration-metadata.json文件

使用spring-boot-configuration-processor依赖自动生成spring-configuration-metadata.json文件

2023-07-15 13:55:21 1464

原创 使用IDEA工具debug java annotation processors

使用IDEA工具debug java annotation processors

2023-07-14 00:27:41 1241

原创 初探Sharding-JDBC订单表分片实现

ShardingSphere-JDBC的简单使用

2023-06-09 01:04:02 446

原创 常用模版文件收集

Java开发项目中常用的模版文件

2022-06-14 00:41:13 137 1

原创 Java应用编写Junit测试使用Maven编译时没有执行单元测试

TDD开发maven构建时单元测试不执行

2022-06-01 00:11:05 893

原创 MySQL中使用序列-Sequence

在Oracle数据库中若想要一个连续的自增的数据类型的值,可以通过创建一个sequence来实现。而在MySQL数据库中并没有sequence。通常如果一个表只需要一个自增的列,那么我们可以使用MySQL的auto_increment(一个表只能有一个自增主键)。若想要在MySQL像Oracle中那样使用序列,我们该如何操作呢?例如存在如下表定义:create table `t_user`( `id` bigint auto_increment primary key, ...

2022-05-31 00:59:42 14478 2

原创 Mac生成core文件提示Failed to write core dump

最近在看《深入理解Java虚拟机》验证书中的Java对内存OOM异常示例, 出现OOM异常后core文件为空,看控制台日志如下:# A fatal error has been detected by the Java Runtime Environment:## SIGSEGV (0xb) at pc=0x00000001085326c1, pid=17114, tid=19971## JRE version: Java(TM) SE Runtime Environment (8.0_91

2021-08-13 22:24:57 2925

原创 Mac环境Emacs安装auto-complete

一、安装emacs建议使用Homebrew安装,安装命令如下:brew install emacs二、检查C系列和M系列的组合键是否可用1. 使用组合键C-n (Ctrl + n),观察光标是否下移一行2. 使用组合键M-x (option + x) 观察是否底部是否会出现如下提示如果没有出现提示可使用如下图中的步骤进行配置三、下载auto-complete3.1 github地址如下:https://github.com/auto-complete/auto...

2021-06-30 22:36:34 756

原创 使用Docker搭建一个简单的Redis集群服务

Redis集群基于非Docker镜像的搭建参照Redis官网的介绍可以很容易就搭建起来。本来是想使用minikube使用K8S环境搭建一个Redis集群,但是发现购买的云服务是1核的,而minikube的搭建至少需要2核4G的配置。无奈只能退而求其次选择直接使用Docker run命令来部署一个Redis的集群了。参照Redis的官网依次创建如下的配置文件(文件路径可以选择性改成你自己的路径,但是后面操作的相关路径也需要注意跟着改变):/root/configcenter/redis-cluste

2021-04-22 22:54:42 178

原创 查看Java进程或其他类型进程的信息

有这样一种情形,当在一个jar包目录使用java -jar xxx.jar启动一个Java进程后,可以使用jps或者ps命令看到这个进程,但是不知道这个jar包所在的目录(假设这个进程不是你自己部署的),此时该如何才能找到这jar包所在的目录?示例如下:java -jar learn.jar使用ps命令查看进程信息:ps -ef | grep java | grep -v grep 501 34814 34514 0 11:04下午 ttys004 0:10.90 /u

2021-04-09 23:51:31 434

原创 一、写一个函数,返回数组中所有元素被第一个元素整除的结果

最近开始在看《编程之美》着本书籍,这里把书中的算法在这里再次记录一下,加深一下印象^_^^。题目:写一个函数,返回数组中所有元素被第一个元素整除的结果。 @Test public void testDivArray() { int[] array = {2, 1, 4, 6, 8, 5}; printArray(array); divArray(array); printArray(array); }

2021-01-25 22:50:30 455

原创 (一)XPath的简单使用之XML解析

xml文档的常见解析方式有dom4j、SAXParser、XPath等。这里介绍使用XPath解析一个xml文档。解析的一个简单的books.xml文档如下:<inventory> <book year="2000"> <title>Snow Crash</title> <author>Neal Stephenson</author> <publisher>S

2021-01-23 00:07:40 518 1

原创 几种控制Web应用中log4j日志输出相应级别的日志信息方式

这里讨论的是使用log4j1.x版本的情况。1、直接修改log4j.xml配置文件中对应logger的日志级别优点: 简单直接缺点: 需要重新启动应用2、使用org.springframework.web.util.Log4jConfigListener定时刷新常见web.xml中配置如下:<context-param> <param-name>log4jConfigLocation</param-name> <param.

2021-01-16 21:18:49 645 1

原创 Spring配置包扫描,但在对应的包路径下新增类未加载到容器

demo项目包扫描配置如下(部分):@Configuration@ComponentScan(basePackages = {"org.jackson.mvc.web"}, excludeFilters = {@ComponentScan.Filter(type = FilterType.ANNOTATION, classes = {WebFilter.class})})@EnableWebMvcpublic class ServletConfig implements WebM

2021-01-16 18:26:47 526 1

原创 使用PathVariable注解获取路径中的参数出现HTTP状态 400 - 错误的请求

参考地址:https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc源码地址:https://gitee.com/qinshizhang/spring-mvc-learn返回信息如下:<body><h1>HTTP状态 400 - 错误的请求</h1><hr class="line"/><p><b>类型</b&gt

2021-01-01 23:29:10 2752

原创 使用RequestBody注解传递POJO对象时返回HTTP状态码415 - 不支持的媒体类型

org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver#readWithMessageConverters(org.springframework.http.HttpInputMessage, org.springframework.core.MethodParameter, java.lang.reflect.Type)HttpMessage...

2021-01-01 15:42:42 1647 3

原创 No converter found for return value of type: class xxx(自定义的class对象)

先贴一份异常信息:org.springframework.http.converter.HttpMessageNotWritableException: No converter found for return value of type: class org.jackson.mvc.web.po.RequestInfo org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProce

2021-01-01 03:46:05 739

原创 Java SPI的简单使用

SPI的全称是Service Provider Interface,起初数提供给厂商做插件开发的。关于Java SPI的详细定义和说明,可查看官网说明。Java SPI使用了策略模式,一个接口多种实现。其只定义接口,具体的实现并不在程序中直接确定,而是由程序之外的配置掌控,用于具体实现的装配。具体的步骤如下:定义一个接口以及对应的方法。 编写该接口的一个实现类。 在META-INF/services/目录下,创建一个以接口全路径命名的文件,如com.jackson.dubbo.spi.Print

2020-12-27 00:15:15 640

原创 SpringBoot基于注解方式配置Filter

Filter在Web应用中是一个很常见的组件,在Spring应用中Filter的创建方式有最简单和常用的方式有两种(可能还有其他,若有其他优秀的创建方式,欢迎交流学习):实现javax.servlet.Filter接口 继承org.springframework.web.filter.OncePerRequestFilter类在传统Web应用中,每个Web应用都有一个web.xml文件,方便我们配置各种Servlet、Filter、Listener等。在SpringBoot应用中大多推崇零XML配置

2020-12-26 02:11:39 1276

原创 SpringBoot整合spring-boot-starter-data-redis时启动报错找不到redis.clients.jedis.JedisPoolConfig的类文件

异常信息如下:Error:(22, 16) java: 无法访问redis.clients.jedis.JedisPoolConfig 找不到redis.clients.jedis.JedisPoolConfig的类文件原因:缺少jedis依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId>

2020-09-07 23:50:45 6383

原创 SpringBoot启动一个Web应用后访问默认的index.jsp页面后,变成下载jsp页面问题

初始依赖如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.

2020-07-31 00:11:03 1682

原创 unknown command property: execution.isolation.thread.timeoutInMillisSeconds

在使用Spring Cloud hystrix是遇到如下错误信息。java.lang.IllegalArgumentException: unknown command property: execution.isolation.thread.timeoutInMillisSeconds at com.netflix.hystrix.contrib.javanica.conf.HystrixPropertiesManager.initializeProperties(HystrixProperti.

2020-07-21 00:56:50 1399 6

原创 使用Spring Cloud配置服务器控制配置

在应用开发的过程中,许多开发人员会在应用程序中使用一个或多个常量类文件来将所有的配置集中在一个地方。将应用程序配置数据直接写入代码中通常是有问题的,因为每次对配置镜像更改时,应用程序都必须重新编译和重新部署。而使用配置文件将配置信息与应用程序代码进行分离,这样可以很容易在不进行重新编译的情况下对配置进行更改,且修改后重启应用即可使修改后的配置生效。在开发时往往会采用YAML、JSON、XML或Properties等文件来存储应用的配置信息。这些属性文件存放在服务器上,通常包含数据库和中间价信息,以及驱动

2020-07-17 01:15:38 444

原创 Spring Cloud Zuul网关调用服务出现ConnectTimeoutException: Connect to ip:port [/ip] failed: connect timed out

在学习使用Spring Cloud Zuul实现服务网关时,调用服务出现如下异常:Caused by: org.apache.http.conn.ConnectTimeoutException: Connect to 192.168.1.102:8081 [/192.168.1.102] failed: connect timed out at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(D

2020-07-09 01:13:35 3947 1

原创 SpringBoot整合Eureka时启动报错:No qualifying bean of type javax.servlet.Filter available

关键日志如下:Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:No qualifying bean of type 'javax.servlet.Filter' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations:{@org.springframewor

2020-06-25 11:18:34 1467

原创 使用Docker构建opjdk和tomcat镜像

一、构建opjkd镜像1.1 下载openjdk,传送门:http://jdk.java.net/我使用的的opjdk8,如下所示:1.2创建opjkd目录,将下载的包放到改目录下,创建Dockerfile文件,目录结构如下:1.3 编写Dockerfile文件FROM centos:latestMAINTAINER lukans [email protected] openjdk-8u41-linux-x64.tar.gz /usr/local/javaEN.

2020-06-13 15:33:35 703 1

原创 基于Docker的ELK环境搭建

说明:使用ELK中的版本信息是6.5.4版本一、搭建Elasticsearch1.1 下载ElasticsearchDocker镜像docker pull docker.elastic.co/elasticsearch/elasticsearch:6.5.41.2 运行Elasticsearch镜像1.2.1 单节点运行docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elast

2020-06-10 00:16:50 518

原创 CentOS8安装VirtualBox

一、执行以下命令并启用 VirtualBox 和 EPEL 包仓库dnf config-manager --add-repo=https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo二、导入 Oracle VirtualBox 公钥rpm --import https://www.virtualbox.org/download/oracle_vbox.asc三、启用 EPEL 仓库dnf install ht

2020-05-24 16:45:41 2295

原创 CentOS中使用yum安装kubectl

一、在/etc/yum.repos.d/目录下添加Kubernetes的yum源$ sudo vim /etc/yum.repos.d/kubernetes.repo添加信息如下:[kubernetes]name=Kubernetesbaseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/enabled=1gpgcheck=0二、查看可安装的版本$ sudo yum list

2020-05-23 16:53:02 5487

原创 CentOS使用yum安装VirtualBox

一、在/etc/yum.repos.d/目录下新建virtualbox.repo$ cd /etc/yum.repos.d/$ sudo vim virtualbox.repo二、在virtualbox.repo填写如下信息[virtualbox]name=Oracle Linux / RHEL / CentOS-$releasever / $basearch - VirtualBoxbaseurl=http://download.virtualbox.org/virtualbox/r

2020-05-23 16:43:02 956

转载 使用yum命令创建缓存时报错:Peer cert cannot be verified or peer cert invalid

我遇到的情况和该博客描述一样:https://blog.csdn.net/u010039418/article/details/82854353修改系统时间方法见博客:https://mp.csdn.net/console/editor/html/106294355

2020-05-23 01:43:41 683

原创 Linux的时间与网络时间同步

一、备份或删除mv/etc/localtime文件mv /etc/localtime /etc/localtime.bak或rm /etc/localtime二、设置北京(或上海)时间的时区CSTln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime三、安装ntpdate工具yum -y install ntp ntpdate四、设置系统时间与网络时间同步ntpdate cn.pool.ntp.org五、将.

2020-05-23 01:37:30 743

原创 CentOS7使用存储库安装Docker

一、安装containerd.io阿里官方源:https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/选择某个版本进行安装,例如:yum install -y https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm二、卸载旧版本s

2020-05-22 23:49:31 287

原创 单例模式

一、定义单例模式:确保一个类只有一个实例,并提供一个全局访问点。单例模式属于创建型模式。单例模式把某个类设计成自己管理的一个单独实例,同时也避免其他类再自行产生实例。要想要获取单例模式的实例,通过定义的单例类是唯一的途径。单例模式提供对这个实例的全局访问点,当你需要实例时,可以通过该访问点返回单个实例。单例模式的核心思想:私有化构造方法。即无法通过new关键字创建对象。 提供一个...

2020-04-06 00:11:31 96

原创 使用Mybatis时由于粗心遇到Cause: java.sql.SQLException: sql injection violation异常

使用Mybatis插入数据时,由于粗心书写错误导致出现Cause: java.sql.SQLException: sql injection violation异常,SQL语句如下: <insert id="insertProduct" parameterType="com.isoftstone.product.entity.ProductBean">...

2020-03-17 01:12:03 26588

原创 SpringBoot整合Mybaits开发报java.lang.IllegalArgumentException: At least one base package must be specifie

SpringBoot整合Mybaits开发报Caused by: java.lang.IllegalArgumentException: At least one base package must be specified异常,这里记录一下,加深自己的记忆。详细异常堆栈信息如下:java.lang.IllegalStateException: Failed to load Applicat...

2020-03-17 00:30:17 3139

转载 web.xml配置信息随记

这里是我看到的一篇写的比较好的文章:https://www.cnblogs.com/shoshana-kong/p/10682662.html

2020-03-11 21:03:01 98

原创 ibatis配置随记

ibatis与hibernate都是持久层的额技术框架,这里记录一下ibatis的简单配置,作为自己以后的参考。ibstis的配置主要由两种文件:(一)有关项目的总体配置,如连接的数据源,连接池,缓存等的配置,也即sqlmapconfig.xml文件的配置。(二)sqlmap.xml文件的配置,也即对象与表的操作映射的配置。一、sqlMapConfig.xml配置SqlMapCo...

2020-03-11 20:53:21 177

原创 Java学习之内部类(十)

注:本博客内容是本人在看《Jave编程思想》这本书时从该书上抄录下来的一些片段。这里也强烈建议各位读者去购买这本书进行阅读学习。可以将一个类的定义放在另一个类的定义内部,这就是内部类。内部类是一种非常有用的特性,因为它允许你把一些逻辑相关的类组织在一起,并控制位于内部的类的可见性。然而必须要了解,内部类与组合是完全不同的概念,这一点很重要。在最初,内部类看起来就像是一种代码隐藏机制:将...

2019-12-19 01:22:23 168

原创 Java学习之接口(九)

注:本博客内容是本人在看《Jave编程思想》这本书时从该书上抄录下来的一些片段。这里也强烈建议各位读者去购买这本书进行阅读学习。接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法。首先,先学习抽象类,它是普通类与接口之间的一种中庸之道。尽管在构建具有某种为实现方法的类时,你的第一想法可能就是创建接口,但是抽象类仍旧是用于此目的的一种重要而必须的工具。因为你不可能总是使用纯接口...

2019-12-14 00:10:35 268

auto-complete.tar

主要包含popup-el-0.5.8.tar.gz、fuzzy-el-0.3.tar.gz和auto-complete-1.5.1.tar.gz

2021-06-30

空空如也

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

TA关注的人

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