自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 001-SpringMVC和Spring的结合

SpringMVC 全体系图SpringMVC配置<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

2021-12-29 14:31:00 264

原创 wxpy 机器人报错解决方案

高版本 python3.9 微信机器人发送消息报错lib\site-packages\itchat\utils.py", line 69, in msg_formatterd[k] = htmlParser.unescape(d[k])AttributeError: 'HTMLParser' object has no attribute 'unescape'解决方案:修改对应的 ut...

2021-11-09 09:30:00 1018

原创 无停顿的GC算法<翻译>

无停顿的GC算法​ ·································译者:黄俊摘要现在对于响应时间敏感的应用受限于垃圾回收堆的大小。堆内存不断增加,GC暂停时间开始不断增加,导致了较高的响应时间。因此,一个可持续改进的,可伸缩的并发垃圾回收算法值得花时间去讨论它。硅谷公司已经构建了一个可定制化的系统(CPU,芯片,主板,操作系统),使其能够在上运行特...

2021-11-04 13:47:00 240

原创 MyBatis-plus开启sql打印

方法一:mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志方法二:logging: level: com.app.mapper: debug方法三:引入官方插件<!-- https://mvnrepository....

2021-11-04 10:01:00 704

原创 无法将代码推送到gitee仓库故障处理(no mutual signature algorithm)

OpenSSH_8.8p1, OpenSSL 1.1.1l 24 Aug 2021debug1: Reading configuration data /c/Users/28761/.ssh/configdebug1: /c/Users/28761/.ssh/config line 19: Applying options for gitee.comdebug1: Reading con...

2021-10-18 14:14:00 1379 6

原创 Linux时区同步问题

多台linux设置统一的正确环境:对-时间同步命令:utpdate 时间服务器ipntpdate -u xx.xx.xx.xx 结果如下:[root@linuxprobe ~]# ntpdate -u ntp.api.bz29 Apr 15:26:27 ntpdate[2667]: step time server 61.153.197.226 offset -311.570389 se...

2021-05-11 14:54:00 139

原创 编译Tomcat 9.0.40的坑

编译Tomcat 9.0.40注意:此次编译的版本为 tomcat 9.0.40获取源码直接去官网下载对应的 Source Code Distributions 版本即可,或者直接去 https://gitee.com/magic-ice/apache-tomcat-9.0.40-src 此连接中获取编译好的版本,转换为 maven 项目在 IDEA 中的项目上右击 Add Frame...

2021-03-26 09:25:00 365

原创 微服务精讲

微服务架构组织架构和技术架构1、什么是微服务架构?微服务架构一组小的服务独立的进程轻量级通信基于业务能力独立部署无集中式管理Loosely Coupled Service Oriented architecture with bounded Context2、微服务架构的利弊?利强模块化边界可独立部署技术多样性弊分布式复杂性最终一致性运维复杂性测...

2021-03-25 12:54:00 168 1

原创 RPC 框架设计

RPC 框架设计初识 RPC服务化有什么好处?防止代码拷贝防止底层复杂性的扩散防止公共库的耦合保证 SQL 的质量,能够解除数据库的耦合什么是 RPCRPC:Remote Procedure Call Protocol,远程过程调用协议,像调用本地函数一样,去调用一个远端服务。相比“同一个进程”的“本地”函数调用,有没有办法,调用一个“跨进程”的“远程”函数呢?Socke...

2021-03-18 10:48:00 59

原创 MQ 架构与细节

MQ 架构与细节MQ 是什么?MQ:MessageQueue,消息队列的简称,用于进程间通信或同一进程的不同线程间的通信方式。什么时候该使用MQ?数据驱动的任务依赖上游不关心执行结果上游关心执行结果,但执行时间很长MQ 是架构中常见的解耦利器:实时关注结果的用 RPC,任务依赖、上游不关心执行结果,异步执行结果返回时间很长,通常可以使用 MQMQ 如何做到,消息必达?消息...

2021-03-17 17:21:00 2621 2

原创 SpringBoot 启动流程

SpringBoot启动流程整个启动流程包含,推断 WEB 应用类型,设置初始化器,设置 ApplicationListener 监听器,获取并启动 SpringApplicationRunListener 类,准备 Spring 环境,创建并执行 banner 打印类,创建应用上下文,准备应用上下文,刷新应用上下文,刷新应用上下文之后的调用,执行所有的 Runner 运行器。Spring ...

2021-03-17 14:38:00 116

原创 Java多线程

多线程基础一、创建线程仅仅只有new Thread这种方法创建线程Java中无法销毁一个线程,只能表现一个线程的状态。通过thread.start()启动线程(仅仅只是通知线程启动)thread.join()用于控制线程必须执行完成,调整优先级并不能保证优先级高的线程先执行。1、继承Thread继承Thread覆盖run()方法直接调用Thread#start()执行pu...

2021-03-17 08:36:00 132

原创 Spring Boot 自动装配原理

Spring Boot 自动装配原理Spring Boot 在启动之前还有一系列的准备工作,比如:推断 web 应用类型,设置初始化器,设置监听器,启动各种监听器,准备环境,创建 applicationContext,准备 context 上下文对象,在 prepareContext 的时候,将 main 函数所在的类(也就是主类)通过 AnnotatedBeanDefinitionReade...

2021-03-16 17:09:00 51

原创 07-Spring ConfigurationClassPostProcessor

ConfigurationClassPostProcessor功能此类是一个后置处理器类,主要功能是参与 BeanFactory 中 BeanDefinition 的操作和 BeanDefinition 中属性值的修改。主要用于解析注解。解析加了@Configuration的配置类解析@ComponentScan扫描的包解析@ComponentScans扫描的包解析@Import注...

2021-03-16 14:40:00 162

原创 06-Spring BeanFactoryPostProcessor的调用

实例化并调用所有的 BeanFactoryPostProcessorBeanFactoryPostProcessor在 Bean 未初始化之前,用于修改 BeanFactory 中定义的 BeanDefinition,可以修改其对应的属性值,覆盖或者增加属性值,甚至用于初始化 Bean。void postProcessBeanFactory(ConfigurableListableBean...

2021-03-15 17:32:00 132

原创 从网络到分布式-负载均衡

网络并发负载均衡OSI 七层参考模型分层模型,每一层实现各自的功能和协议,并完成与相邻层的接口通讯。OSI 的服务定义详细说明了各层所提供的服务,某一层的服务就是该层及其下各层的一种能力,通过接口提供给更高一层。各层所提供的服务与这些服务是怎么实现的无关。应用层:为各种应用程序提供服务表示层:数据格式转化、数据加密会话层:建立、管理和维护会话传输层:定义了一些传输数据的协议和端口号...

2021-03-12 17:01:00 168 1

原创 05-Spring Bean工厂的准备

准备 Bean 工厂public void refresh() throws BeansException, IllegalStateException { synchronized (this.startupShutdownMonitor) { prepareRefresh(); /** 创建容器对象:DefaultListableBeanFactor...

2021-03-12 16:18:00 123

原创 JVM实战调优(空格引发的服务异常)

JVM实战调优问题描述某一个项目中有一个文字转语音的服务,使用的是科大讯飞的语音转换服务,需要调用三方服务。因其转换服务是一个耗时操作,官方给的demo使用的是 WebSocket 进行数据转换操作。项目中使用线程池进行调用。同时科大讯飞的语音合成有长度限制,官方给出的在[8000字节,约2000个汉字],所以需要分段合成。在某一天,客户反应语音无法播放,经过查看服务日志排查,是因为购买的...

2021-03-12 10:51:00 144 2

原创 003-try-catch-finally-return执行顺序问题

一、try-catch-finally-return执行顺序问题0、原始执行顺序try — > finallytry —> catch —> finally1、try catch 中有 return,finally 中无 return,且 try 中无异常抛出public int add(){ int i = 1; try{ i = i...

2021-03-10 15:57:00 66

原创 04-Spring自定义标签解析

自定义标签的解析这一篇主要说明自定义标签的解析流程,除了 bean、alias、import、beans之外的标签,都属于自定义标签的范围,自定义标签的解析需要命名空间配合,获取对应的命名空间根据命名空间获取对应的命名空间处理器 handler通过对应的 handler 去找到对应的解析器通过对应的解析器去对自定义标签进行解析。protected void parseBeanDe...

2021-03-09 16:25:00 54

原创 03-Spring默认标签解析

默认标签的解析上一篇分析了整体的 xml 文件解析,形成 BeanDefinition 并注册到 IOC 容器中,但并没有详细的说明具体的解析,这一篇主要说一下 默认标签的解析,下一篇主要说自定义标签的解析。parseDefaultElement解析默认的元素标签private void parseDefaultElement(Element ele, BeanDefinitionPar...

2021-03-09 15:03:00 141

原创 02-Spring配置文件加载

获取IOC容器加载、解析xml文件,形成GenericBeanDefinition,供后续实例化剩下的所有 Bean 使用。obtainFreshBeanFactory()获取IOC容器protected ConfigurableListableBeanFactory obtainFreshBeanFactory() { // 初始化BeanFactory,并进行XML文件读取,...

2021-03-09 14:09:00 74

原创 01-Spring概述(总览)

Spring概述前言Spring 发展至现在,俨然成为一个生态,但要理解其余的 Spring Boot、Spring Cloud 等框架,需要先对 Spring 的整个体系有一定的理解,因为其余的框架都是在 Spring 框架的基础上进行的扩,当理解了 Spring 的核心之后其余的框架就很容易搞明白了,Spring 的核心在于 IOC 和 BeanDefinition,IOC容器用于存放所...

2021-03-08 21:02:00 97

原创 获取SpringBoot中所有的url和其参数

获取所有url和方法的对应关系 1 @Data 2 public class Param { 3 4 /** 5 * 字段名称 6 */ 7 private String name; 8 9 /**10 *11 */12 private String in;13 14 /**15 ...

2021-01-26 16:14:00 1265

原创 002-JVM部分

JVM部分数据整理一、运行时数据区域Java内存区域主要分为线程私有区域【程序计数器、虚拟机栈、本地方法区】、线程共享区域【Java堆、方法区】、直接内存(不受JVM GC管理)1、线程私有部分1.1、程序计数器程序计数器(Program Counter Register)一块较小的内存空间,是当前线程所执行的字节码的行号指示器。1.2、虚拟机栈生命周期与线程相同。Java虚拟机栈(...

2019-12-28 17:51:52 88

原创 android面试题大全

Android面试题汇总1、跨进程通信的几种方式Intent(意图、Android通信的桥梁)ContentProvider(数据库存储数据)Broadcast(广播通信)AIDL通信,通过接口共享数据2、wait和sleep的区别wait是Object的方式,wait是对象锁,锁定方法不让继续执行,当执行notify方法后就会继续执行,sleep是Thread的...

2019-12-28 17:50:13 881

原创 HashMap源码分析

HashMap源码分析哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如 memcached)的核心其实就是在内存中维护一张大的哈希表。一、什么是哈希表在讨论哈希表之前,我们先大概了解下其他数据结构在新增,查找等基础操作执行性能**数组:**采用一段连续的存储单元来存储数据。对于制定下标的查找,时间复杂度为O(1);通过给定值进行查找,...

2019-12-28 17:49:32 57

原创 001-HashMap源码分析

HashMap源码分析哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如 memcached)的核心其实就是在内存中维护一张大的哈希表。一、什么是哈希表在讨论哈希表之前,我们先大概了解下其他数据结构在新增,查找等基础操作执行性能数组:采用一段连续的存储单元来存储数据。对于制定下标的查找,时间复杂度为O(1);通过给定值进行查找,需要遍...

2019-12-28 17:47:00 25

原创 七大排序

七大排序算法冒泡排序选择排序插入排序堆排序归并排序快速排序希尔排序冒泡排序void bubbleSort(int *a, int length){ for(int i = 0; i < length; i++){ for(int j = i+1; j < length; j++){ if (a[i] > a[j]){ int temp =...

2019-12-21 20:46:00 48

原创 sprintgboot+springsecurity的跨域问题,

整个项目是使用前后端分离的形式开发,登录接口部分出现了问题,重写了security的登录接口,返回json数据到这一步已经没有没有问题了,使用postman测试,也可以看到接口返回的结果,但是使用浏览器跨域访问的时候出现了问题,一直报CORS头缺少 'Access-Control-Allow-Origin'我一直以为是客户端问题,搞了半天也没找到原因,后来点了一下详细了解 https...

2019-10-05 19:09:00 87

原创 nginx安装&负载均衡配置&nginx反爬虫&nginx命令

Nginx安装 wget https://nginx.org/download/nginx-1.14.0.tar.gz tar -zxvf nginx-1.14.0.tar.gz cd nginx-1.14.0安装依赖库: yum install gcc-c++ yum install -y pcre pcre-devel yum install -y zlib zlib-dev...

2019-06-06 11:26:00 314

原创 struts2.0中ognl栈的解析

ongl详解:ValueStack是Struts2的一个接口,字面意义为值栈,OgnlValueStack是 ValueStack的实现类,客 户端发起一个请求,struts2架构会创建一个action实例同时创建一个OgnlValueStack值栈实例, OgnlValueStack贯穿整个Action的生命周期,struts2中使用OGNL将请求Action的参数封装为对象存储 到值栈中,...

2019-06-04 09:52:00 51

原创 NoSQL安装与操作

redis操作:redis的启动与关闭:注意:(需要关闭防火墙)redis的启动:redis-server redis.confredis的登录:redis-cli -a passredis的远程登录:redis-cli -h ip -a passredis的关闭:redis-cli -p 6379 -a pass shutdown || 在登录的位置直接输入 shutdown 即可...

2019-05-30 09:49:00 657

原创 springboot整合持久层技术(mysql驱动问题)

java.sql.SQLException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone config...

2019-05-29 08:39:00 42

原创 springboot2.0全局异常处理,文件上传过大会导致,方法被执行两次,并且连接被重置...

最后发现是内嵌tomcat也有文件大小限制,默认为2MB,我上传的是4MB,然后就炸了。在application.properties中添加server.tomcat.max-swallow-size=100MB即可。spring.servlet.multipart.max-file-size=1MBspring.servlet.multipart.max-request-siz...

2019-05-28 17:04:00 157

原创 hibernate中关系映射的配置问题

部门和员工属于一对多的关系员工的账户属于一对一关系账户和权限属于多对多关系department.hbm.xml 1 <hibernate-mapping> 2 <class name="com.demo.first.domain.Department" table="department"> 3 <id name="did" c...

2019-04-24 10:59:00 72

原创 hibernate 的一对多关联关系映射配置

hibernate 是操作实体类:表是一对多的关系,当创建这2个实体的时候  在一的一方定义一个多的一方的集合  在多的一方定义一个一的一方的对象表是多对多的关系,当创建这2个实体的时候  在互相中都有对方的集合表是一对一的关系,当创建这2个实体的时候  在互相中都有对方的对象hibernate 的一对多关系建立有2张表,有2个实体类  然后通过 hibernate 创建一对...

2019-04-17 10:33:00 33

原创 hibernate 中持久化标识 OID

OID 全称是 Object Identifier,又叫做对象标识符是 hibernate 用于区分两个对象是否是同一个对象的标识的方法标识符的作用:可以让 hibernate 来区分多个对象是否是同一个对象hibernate 的主键生成策略:自然主键:把具有业务含义的字段作为主键,称为自然主键,例如用户表,将 username 作为主键;前提是所有用户的 username 都不会重复...

2019-04-16 17:56:00 90

原创 idea添加本地文件约束(DTD)

当我们做 xml 文件配置的时候,需要对其进行约束的配置例如:  hibernate如果我们在联网的情况下是可以不添加配置文件约束的,红框内的 URL 会自动帮我们从网络上加载约束文件,但是没有网络的情况下,只能从本地加载这个约束文件。快速添加约束文件的方法?首先需要复制红框内的链接:http://www.hibernate.org/dtd/hibernate-configurati...

2019-04-16 14:23:00 305

原创 redhat配置问题

redhat开机自动连接网络配置    vim /etc/sysconfig/network-scripts/ifcfg-eth0    将 ONBOOT=no 更改为 yes 即可redhat配置 yum 源(163的,直接将 repo 文件上传覆盖即可)    ...

2019-04-11 15:25:00 64

C语言书本参考答案

C语言书本参考答案,包含第二章到第十章所有的参考答案

2019-01-12

空空如也

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

TA关注的人

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