<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[名猿陈大浏的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_33743572</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_33743572]]></copyright><item><title><![CDATA[【错误解决】java.lang.AbstractMethordError:org.springframework.boot.test.mock.web.SpringBootMockServletCon]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/142560684</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/142560684</guid><author>qq_33743572</author><pubDate>Thu, 26 Sep 2024 16:15:40 +0800</pubDate><description><![CDATA[报错：java.lang.AbstractMethordError:org.springframework.boot.test.mock.web.SpringBootMockServletContextPath()Ljava/lang/String;spring-test和spring-mock这俩jar包下面有一个相同路径相同类名的类MockServletContext。spring-test在单元测试启动的时候调用到了spring-mock下面的类导致报错。排除掉spring-mock包就好。]]></description><category></category></item><item><title><![CDATA[【问题解决】has been injected into other beans [] in its raw version as part of a circular reference,but h]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/141166303</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/141166303</guid><author>qq_33743572</author><pubDate>Tue, 13 Aug 2024 16:03:56 +0800</pubDate><description><![CDATA[报错：has been injected into other beans [] in its raw version as part of a circular reference,but has eventually been wrapped.This meas that said other beans do not use the final version of the bean。我在项目中使用BeanPostProcessor动态代理包装了一个有循环依赖的bean就报了这个错误。]]></description><category></category></item><item><title><![CDATA[【问题解决】No appropriate protocol (protocol is disabled or cipher suites are inappropriate)]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/122298387</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/122298387</guid><author>qq_33743572</author><pubDate>Tue, 04 Jan 2022 10:57:33 +0800</pubDate><description><![CDATA[Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)]]></description><category></category></item><item><title><![CDATA[【错误解决】Job for ssh.service failed because the control process exited with error code.See “systemctl]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/118100421</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/118100421</guid><author>qq_33743572</author><pubDate>Tue, 22 Jun 2021 09:53:44 +0800</pubDate><description><![CDATA[报错：Job for ssh.service failed because the control process exited with error code.
See "systemctl status ssh.service" and "journalctl -xe" for details.





这个报错八成是配置写错了。我是把/etc/ssh/sshd_config里面的 PermitRootLogin 配成了true，正确的值应该是 yes



所以看到这个报错，首先检查自己最近修改的.]]></description><category></category></item><item><title><![CDATA[七.Elasticsearch教程 - Elasticsearch聚合查询]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/115683268</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/115683268</guid><author>qq_33743572</author><pubDate>Wed, 14 Apr 2021 00:25:30 +0800</pubDate><description><![CDATA[注：version:elasticsearch-7.11.2

造测试数据：


PUT /t_shirt
{
  "mappings": {
    "properties": {
      "price": {
        "type": "long"
      },
      "color": {
        "type": "keyword"
      },
      "brand": {
        "type": "keyword"
      },
      "sold]]></description><category></category></item><item><title><![CDATA[六.Elasticsearch教程 - ElasticSearch高亮显示]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/115387804</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/115387804</guid><author>qq_33743572</author><pubDate>Fri, 02 Apr 2021 00:05:58 +0800</pubDate><description><![CDATA[注：version:elasticsearch-7.11.2

添加测试数据


#新建索引
PUT /high_light_test
{
  "mappings": {
    "properties": {
      "title": {
          "type": "text",
          "analyzer": "ik_max_word"
        },
        "content": {
          "type": "text",
          "an]]></description><category></category></item><item><title><![CDATA[五.Elasticsearch教程 - 查询优化 - 手工控制搜索结果精准度]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/115356684</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/115356684</guid><author>qq_33743572</author><pubDate>Wed, 31 Mar 2021 17:59:00 +0800</pubDate><description><![CDATA[注：version:elasticsearch-7.11.2

造测试数据：


#新建mapping映射
PUT /developer
{
  "mappings": {
    "properties": {
      "name": {
        "type": "keyword",
        "index": true,
        "store": true
      },
      "gender": {
        "type": "integer",
       ]]></description><category></category></item><item><title><![CDATA[四.Elasticsearch教程 - elasticsearch乐观锁并发控制]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/115356663</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/115356663</guid><author>qq_33743572</author><pubDate>Wed, 31 Mar 2021 17:57:47 +0800</pubDate><description><![CDATA[注：version:elasticsearch-7.11.2

乐观锁是啥这里不多赘述

Elasticsearch乐观锁并发控制

查看一下id=1这个文档信息



es7.0之前使用_version实现乐观锁更新文档

例：


PUT /developer/_doc/1?version=1
{
"name": "李小雷",
"gender": 1,
"age": 20,
"address": "浙江省杭州市西湖区",
"remark": "高级程序员"
}

es7.0版本之前用以上写法实现乐观锁修]]></description><category></category></item><item><title><![CDATA[三.elasticsearch教程 - elasticsearch的mapping文档映射和核心类型]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/115356621</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/115356621</guid><author>qq_33743572</author><pubDate>Wed, 31 Mar 2021 17:56:17 +0800</pubDate><description><![CDATA[注：version:elasticsearch-7.11.2

一.mapping文档映射

文档映射类似关系型数据库中表结构的字段类型、长度等。

ES中映射可以分为动态映射和静态映射。

动态映射：在关系型数据库中表字段类型、长度都是自定义的，而在es中不需要自定义，es会自动识别类型，这种机制就是动态映射。

静态映射：es中也可以为索引事先定义好映射，映射内容包括字段类型、分词器等，这种方式称之为静态映射。

1.添加文档映射


PUT /developer
{
  "mappings": {
 ]]></description><category></category></item><item><title><![CDATA[二.ElasticSearch教程 - elasticsearch基本操作，增删改查，DSL高级查询]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/115356581</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/115356581</guid><author>qq_33743572</author><pubDate>Wed, 31 Mar 2021 17:54:50 +0800</pubDate><description><![CDATA[注：version:elasticsearch-7.11.2

一.基本操作

1.创建索引

PUT /developer

2.查询索引

GET /developer

3.删除索引

DELETE /developer



4.添加文档


PUT /developer/_doc/1
{
  "name": "李雷",
  "gender": "1",
  "age": 18,
  "address": "浙江省杭州市西湖区",
  "remark": "是一个初级程序员"
}

PUT...]]></description><category></category></item><item><title><![CDATA[一.ElasticSearch教程 - 安装ElasticSearch-7.11.2，单节点部署，集群部署]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/115356520</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/115356520</guid><author>qq_33743572</author><pubDate>Wed, 31 Mar 2021 17:53:04 +0800</pubDate><description><![CDATA[注：version:elasticsearch-7.11.2

单节点部署

一.新建用户，下载安装包

es不能使用root启动，必须创建新用户


#1).创建用户组
[root@localhost ~]# groupadd elasticsearch

#2).创建用户并设置密码
[root@localhost ~]# useradd daliues
[root@localhost ~]# passwd daliues

#3).把用户daliues 添加到 elasticsearch 用户组
[ro]]></description><category></category></item><item><title><![CDATA[什么是中台，前端、后端、前台、中台、后台的区别？]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/113649047</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/113649047</guid><author>qq_33743572</author><pubDate>Thu, 04 Feb 2021 15:41:01 +0800</pubDate><description><![CDATA[前台是面向用户的，比如阿里的淘宝、天猫、支付宝，这些都是给普罗大众使用的产品

中台是前台里通用的部分， 比如淘宝、天猫、支付宝，他们都有重复的服务，客户服务、搜索服务、支付服务等，这些都是重复的轮子。把重复轮子抽离出来作为公用服务，就是中台。

后台是面向运营的，比如商品管理、物流管理。

无论前台、中台、后台都包括前端和后端，前端指界面开发，例如h5、安卓。后端指服务接口开发，例如java服务。
...]]></description><category></category></item><item><title><![CDATA[elastic-job 分布式任务调度实例demo，springboot+elastic-job]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/111479764</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/111479764</guid><author>qq_33743572</author><pubDate>Wed, 23 Dec 2020 20:46:27 +0800</pubDate><description><![CDATA[什么时候用到分布式任务调度

任务调度就是定时任务。分布式任务调度区别于单节点任务调度，分布式任务调度可以让集群环境下的各个节点执行不同的任务，以此提高效率。

什么场景用到任务调度呢？

例如1.借贷App，逾期问题，自动发送短信，自动计算更新逾期金额；

   2.电商给满足条件的用户自动发送优惠券；

   3.互联网项目缓存预热，在用户查看之前提前准备好缓存；

基本概念

分片概念
将一个大任务拆分成多个小任务，在各个节点上执行。

分片项与业务处理解耦
elastic-job不提...]]></description><category></category></item><item><title><![CDATA[1.java nio执行流程，学netty之前要熟悉nio]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/110209722</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/110209722</guid><author>qq_33743572</author><pubDate>Thu, 26 Nov 2020 23:16:53 +0800</pubDate><description><![CDATA[nio简介

nio：非阻塞io，单线程多路复用（多个客户端复用一个线程）。相比bio支持更高并发。



bio必须一个线程处理一个客户端连接，并发低。



nio服务端只用一个线程。上图是一个简易的线程模型图，实际服务端和客户端都有自己的selector和socketChannel。此图只为突出服务端只用一个线程处理客户都多个连接。后面看完实例和请求过程就可用详细了解。

NIO实例

maven依赖：


&lt;dependencies&gt;
  &lt;dependency&gt;
 ...]]></description><category></category></item><item><title><![CDATA[2.netty源码分析，从实例分析netty源码执行流程]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/109990781</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/109990781</guid><author>qq_33743572</author><pubDate>Thu, 26 Nov 2020 11:30:19 +0800</pubDate><description><![CDATA[Netty是什么

官方解释：Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具，用以快速开发高性能、高可靠性的网络服务器和客户端程序。

个人理解：netty是对nio的封装，java自带的nio的代码写法不够优雅，于是有了netty。

bio和nio的区别

bio是阻塞线程，
...]]></description><category></category></item><item><title><![CDATA[【问题解决】springboot启动后一小会就自动停止，提示Process finished with exit code 0]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/109382392</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/109382392</guid><author>qq_33743572</author><pubDate>Fri, 30 Oct 2020 11:50:48 +0800</pubDate><description><![CDATA[最近springboot启动后一小会就自动停止，没提示具体报错，只有提示：


Disconnected from the target VM, address: '127.0.0.1:60011', transport: 'socket'

Process finished with exit code 0

我的解决办法：

原来是没有加log4j的配置文件，在resources目录下新建文件：log4j.properties。复制内容：


log4j.rootLogger=WARN, stdout
]]></description><category></category></item><item><title><![CDATA[一.spring源码分析 - 从图熟悉spring源码执行流程]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/108859581</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/108859581</guid><author>qq_33743572</author><pubDate>Wed, 07 Oct 2020 16:16:09 +0800</pubDate><description><![CDATA[第一篇，从源码的整体结构开始看。

代码块1：创建spring上下文


package pers.czl.spring.iocbeanlifecicle;

import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.anno]]></description><category></category></item><item><title><![CDATA[3.ElasticSearch分词器，包括默认分词器、英文分词器、中文分词器]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/108271031</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/108271031</guid><author>qq_33743572</author><pubDate>Fri, 28 Aug 2020 00:03:45 +0800</pubDate><description><![CDATA[导图（用于总结和复习）

​



​

注：使用 GET /test/_analyze 可以使用分词器查看分词结果，例：



以上用例是使用 analyzer 指定英文分词器查看分词结果，如果field是索引里的字段，会使用字段指定的分词器进行分词。

接下来进入测试。

默认分词器

默认使用standar分词器

在不标明的时候都是使用默认的standar分词

在建索引的时候，使用 analyzer 指定字段分词器

测试数据：


#1.删除 /test下的测试数据
DELETE /test/
]]></description><category></category></item><item><title><![CDATA[AQS核心原理总结]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/108256111</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/108256111</guid><author>qq_33743572</author><pubDate>Thu, 27 Aug 2020 11:32:21 +0800</pubDate><description><![CDATA[​导图（用于总结和复习）



​​



​AQS框架

定义：aqs（AbstractQueuedSynchronizer）是一个用来构建锁或者其他同步器的基础框架，包括常用的独占锁：ReentrantLock。共享锁：CountDownLatch、​CyclicBarrier、Semaphore等。

核心原理：
aqs的实现原理靠三个核心：
1. FIFO队列实现线程等待排队，把没有竞争到锁的线程放入队列。队列的每个节点存储了线程、上节点、下节点、waitStatus。其中线程用来记录排队的线程，上]]></description><category></category></item><item><title><![CDATA[2.ElasticSearch添加、查询、修改、删除索引入门教程]]></title><link>https://blog.youkuaiyun.com/qq_33743572/article/details/108231558</link><guid>https://blog.youkuaiyun.com/qq_33743572/article/details/108231558</guid><author>qq_33743572</author><pubDate>Wed, 26 Aug 2020 00:17:02 +0800</pubDate><description><![CDATA[es安装教程：https://blog.youkuaiyun.com/qq_33743572/article/details/108175092

注：测试环境：CentOS Linux release 7.6.1810 (Core)

jdk:1.8

elasticsearch:6.8.2 单节点

ES文档命名

es的文档命名格式：


PUT /{index}/{type}/{id}{
  "field": "value",
  ...}

index：索引名。因共同的特性被分组到一起的文档集合，例如把所有.]]></description><category></category></item></channel></rss>