- 博客(126)
- 资源 (2)
- 收藏
- 关注
原创 Spring循环依赖
3 在Bean实力化完成后,对应单例的,执行循环依赖的,并且再创建中的Bean会把它放到三级缓存中,使用的是addSingletonFactory(beanName, () -> getEarlyBeanReference(beanName, mbd, bean));2 对应单例ban,在AbstractBeanFactory里的doGetBean,它里面会有个getSingleton方法,它在创建bean之前会执行beforeSingleCreation,将bean设置成正在创建中。
2022-12-15 22:20:30 200 1
原创 JVM性能监控与分析工具
1 jps 用于查看正在运行的java程序及相关信息。jsp -l: 显示运行的主类全名或者JAR包名称。jps -m:显示运行传入朱磊的参数.jps -v: 显示虚拟机参数。
2022-12-15 00:12:25 175
原创 BeanFactory和DefaultListtableBeanFactory
2 BeanDefinitionRegistry的唯一实现是DefaultListableBeanFactory。3 BeanFactoryPostProcessor 在创建bean实例化之,动态修改bean定义的属性值。1 BeanDefinitionRegistry 提供注册增、删、查BeanDefinition的api。
2022-12-15 00:00:01 201
原创 BeanFacotory的ignoreDependencyInterface方法作用
比如说beanFactory.ignoreDdpendency(EnvironmentAware.class),则实现EnvironmentAware的类不能自动装配,但不包括@autowired这种强制的。1 忽略给定接口的自动装配。
2022-12-14 23:58:00 240
原创 Spring项目读取项目配置文件
1 Eureka读取配置信息依赖PropertySourceBootstrapConfiguration,它是ApplicationContextInitializer实现类。2 共享配置->扩展配置->应用自身配置,加载优先级从高到低。1 默认情况下,外部配置源配置比本地文件拥有更高的优先级。
2022-12-14 23:55:48 138
原创 SpringMVC对消息转换器的处理相关
1 SpringBoot启动MVC本质是配置一些处理MVC请求的组件到Spring容器中2 SpringBoot默认提供了Spring MVC自动配置,不需要添加@EnableWebMvc注解去启动3 如果需要配置MVC,比如拦截器,格式化,视图,Http消息转换器,可以使用@Configuration并实现WebMvcConfigurer接口,不要添加@EnableWevc4 @EnableWebMvc与SpringMvc的MVC自动装配类WebMvcAutoConfiguration不会都执行,他们是
2022-12-05 00:37:48 778
原创 SpringMVC默认3个HandlerMapping和4个HandlerAdapter
1.2 RequestMappingHandlerMapping 将@Controller ,@RequestingMapping声明的方法,将类和方法上声明的@RequestingMapping的url拼接起来成一个url,将这个url与包装的InvocalHandlerMethod注册到@RequestMappingHandlerMapping。2.4 HandlerFunctionAdapter 支持处理HandlerFunction子类实现的Handler。
2022-12-01 23:25:27 419
原创 SpringBoot Actuator
5 可以查看actuator可以使用那些接口调用查看。2 检测应用的监控状况,包括链接的中间件健康状况。3 可以查看应用最终使用的环境配置信息。1 actuator可以做应用监听。4 可以对单个属性最终使用进行查看。
2022-09-28 16:01:29 369
原创 spring nacos找配置文件
1 首先会根据spring.cloud.nacos.config.namespace定义的命名空间下找配置信息,并且会加载指定的data-id,goup的配置信息spring: cloud: nacos: config: namespace: bed108f2-2972-4ade-a27b-b53e4d99b66a server-addr: 192.168.2.107:8848 file-extension: yaml
2021-07-14 23:42:21 722
原创 08 生产问题-为什么隔一段时间就来一次堆内存溢出
1 现象系统可能挂了,也可能没有挂,但是,基本上所有的接口都返回内部服务器错误。报错:java.lang.OutOfMemoryError: java heap space重要参数和命令JVM启动参数,当应用程序报OutOfMemoryError时,将日志信息导出到指定目录下1 -XX:+HeapDumpOnOutOfMemoryError2 -XX:HeapDump.Path=app/applogs/heapdump在 应用系统还没挂的情况,导出java进程的内存镜像文件3 jmap -d
2021-07-08 20:24:38 146
原创 jpa分页查询返回自定义bean
1 查询demo@ServiceLog(description = "律所案件列表") private MyPage<LegallfOrderInfoPageOut> selectLSOrderPage(LegalLfOrderInfoPageIn pageIn, PageRequest pageRequest) throws Exception{ QLegalOrderInfo qLegalOrderInfo=QLegalOrderInfo.legalOrderInfo; QLaw
2021-06-30 18:11:21 787
原创 idea导入非pom文件的java项目
1 File->Project2 选择Java,然后点击next 3 到下面的页面,再点next4 关键一步,进入下图,按照图片指示导入你想要导的java项目5 这时候可能会出现要你覆盖.iml文件的情况,点yes就好6 选择This Windows当前窗口打开,还是New Windows打开,这里我们选择New Windows打开就好7 这时候子模块有pom文件maven的项目,需要按下图配置一下转变成真正的maven项目8 至此导入java项目就结束了9 可能的问题,
2021-06-11 10:01:55 3202 4
原创 java-二维数组
1 java的二维数组定义对应名称[][],例如Annotation[][] paramAnnotations2 二维数组行数获取为二维数组对象.length,例如paramAnnotations.length二维数组列的获取为paramAnnotations[行下标].length,例如paramAnnotations[0].length,这个就是获取第1行的列数3 可以把二维数组理解成多个一维数组,一维数组套一维数组4 idea中二维数组展示形式,如下图图中标识的是一个二维数组注解类Ann
2021-06-10 20:26:36 264
原创 Java线程核心参数以及如何配置运转的
1 corePoolSize 核心线程数大小2 maxThread 最大线程数3 超过核心线程数大小的线程空闲时间4 空闲时间单位5 workQueue6 threadFactory 创建新线程7 RejectedExecutionHandler 拒绝处理器
2021-04-14 00:54:27 193
原创 MyBatis逆向工程
文章目录一、Mybatis逆向工程是什么?二、使用步骤1.下载逆向工程项目2. 搭建逆向工程并生成Mapper文件2. 将生成的文件Copy到对应的项目及整合项目所需要配置总结一、Mybatis逆向工程是什么?通过数据库信息反向生成Java POJO,XXXMapper接口,XXXMapper.xml文件二、使用步骤1.下载逆向工程项目链接: https://pan.baidu.com/s/1SGmwl8qPBXNPy1_jMpWA5g 密码: 4bvd2. 搭建逆向工程并生成Mappe.
2020-11-26 22:10:09 222
原创 剑指 Offer 13. 机器人的运动范围
一 题目地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人能够到达多少个格子?示例 1:输入:m = 2, n = 3, k = 1输出:3示例 2:输入:m =
2020-10-13 09:23:19 134
原创 剑指 Offer 12 矩阵中的路径
一 题目请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。如果一条路径经过了矩阵的某一格,那么该路径不能再次进入该格子。例如,在下面的3×4的矩阵中包含一条字符串“bfce”的路径(路径中的字母用加粗标出)。[[“a”,“b”,“c”,“e”],[“s”,“f”,“c”,“s”],[“a”,“d”,“e”,“e”]]但矩阵中不包含字符串“abfb”的路径,因为字符串的第一个字符b占据了矩阵中的第一
2020-10-13 08:25:19 174
原创 B、KB、MB、GB、T单位换算
1B就是1Byte即一个字节一个字节等于8位换算关系:1024B = 1KB 1024个字节等于1千字节1024KB = 1M 1024个千字节等于1M即1兆那么1M = 1024KB = 1024 * 1024B1GB = 1024M1024GB= 1TInteger 占4个字节String
2020-10-12 14:07:05 18197
原创 IllegalStateException: getWriter() has already been called for this response
1 原因:其实已经比较明显了,就是getWriter()已经被调用过一次了,再调用的话就会抛这个异常。然后我排查了下项目代码,发现我在网关的时候真的已经调用过一次了,具体代码如下response.setContentType("application/json;charset=utf-8");response.getWriter().write(JsonHelper2.toJson(ResponseUtils.instance(CodeMsgDef.XXX)));
2020-08-18 10:05:54 777
原创 centos7下gitlab搭建
https://jingyan.baidu.com/article/e52e36153d340040c70c5156.html排查解决gitlab访问502:https://blog.csdn.net/u010837612/article/details/78909545
2019-11-05 11:16:58 130
原创 linux下搭建jdk环境
一 卸载原有jdk1 查看jdk组件rpm -qa| grep jdk2 卸载yum -y remove copy-jdk-configs-3.3-10.el7_5.noarch说明: copy-jdk-configs-3.3-10.el7_5.noarch 是jdk组件名,根据实际情况替换二 安装新jdk1 首先jdk包链接:https://pan.baidu.com/s/1rY...
2019-10-21 11:28:57 460
原创 CSS样式初始化
CSS样式初始化原因:不同浏览器对每种的标签都有默认的样式,大部分浏览器的默认样式还有点区别。所以为了保证让所有的标签的默认样式清零,也就是重置,以便于我们后续的开发和管理,一般都会在网站一开始对所有标签做一下样式的 重置操作。比如:body 标签有默认的margin: 8px。ul标签:有默认的list-style样式,圆点。超链接标签及a标签:蓝色字体,都有下划线标题标签: 都有...
2019-10-19 21:52:39 456
原创 简单前端项目结构
所有的文件放在:项目目录下(例如meiBuy)所有图片放在:image所有css文件放在:css所有js文件放在:js整站的入口:index.html
2019-10-19 21:21:37 250
原创 多线程处理遍历数据,并阻塞汇总所有返回结果再处理
package com.david.daviddemo.jdk.util.concurrent;import java.util.ArrayList;import java.util.List;import java.util.concurrent.*;public class FutureDemo { public static void main(String[] arg...
2019-09-12 14:40:17 1144
原创 什么是长连接短连接?
长连接:指建立Socket连接后不管是否使用都保持连接,安全性较差。(客户端和服务端都开启长链接才可以)短连接:指建立Socket连接完成数据请求响应后就关闭。区别:长连接不管使用还是不使用都保持连接,这样可以达到连接复用,通俗点将就是多个http请求(同ip、port才可以)可以采用同一个socket连接进行请求响应。短连接是一个次请求就要建一个scoket连接,通信完后就关闭,不能复用。...
2019-09-10 11:15:55 343
原创 jdk源码阅读顺序
1、java.langObject 1String 1AbstractStringBuilder 1StringBuffer 1StringBuilder 1Boolean 2Byte 2Double 2Float 2Integer 2Long 2Short 2Thread 2ThreadLocal 2Enu...
2019-09-09 10:34:11 183
原创 beanFactory 和 factoryBean的区别
beanFactory 是bean工厂FacottoryBean是用来注册Bean的,一般来说Spring是获取使用类名,然后示例化创建bean的,而FactoryBean是将一个new 的对象变成Spring的Bean。
2019-08-31 20:15:34 199
原创 Collections.sort和Arrays.sort的区别
Collections.sort专门给List排序,而Arrays.sort专门给数组进行排序。Collections.sort排序底层调用的是Arrays.sort方法。Collections.sort和Arrays.sort的区别。
2019-08-23 19:58:54 2063
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人