yh_1021
码龄7年
关注
提问 私信
  • 博客:57,185
    57,185
    总访问量
  • 41
    原创
  • 1,764,329
    排名
  • 133
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:江苏省
  • 加入CSDN时间: 2018-01-20
博客简介:

yh_1021的博客

查看详细资料
个人成就
  • 获得37次点赞
  • 内容获得6次评论
  • 获得258次收藏
  • 代码片获得271次分享
创作历程
  • 22篇
    2020年
  • 8篇
    2019年
  • 12篇
    2018年
成就勋章
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

182人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

java中内存泄漏的情况

1、静态集合类:如HashMap、LinkedList等等。如果这些容器为静态的,那么它们的生命周期与程序一致,则容器中的对象在程序结束之前将不能被释放,从而造成内存泄漏。简单而言,长生命周期的对象持有短生命周期对象的引用,尽管短生命周期的对象不再使用,但是因为长生命周期对象持有它的引用而导致不能被回收。2、各种连接,如数据库连接、网络连接和IO连接等:在对数据库进行操作的过程中,首先需要建立与数据库的连接,当不再使用时,需要调用close方法来释放与数据库的连接。只有连接被关闭后,垃圾回收器才会回收对应
转载
发布博客 2020.07.06 ·
291 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringCloud微服务相关

1、什么是微服务2、微服务之间是如何独立通讯的?3、SpringCloud和Dubbo有哪些区别?4、SpringBoot和SpringCloud谈谈对他们的理解5、什么是服务熔断?什么是服务降级?6、微服务的优缺点分别是什么?7、你所知道的微服务技术栈有哪些?8、eureka和zookeeper都可以提供服务的注册与发现功能,说说他们的区别?...
原创
发布博客 2020.05.18 ·
245 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

关于海量数据处理的面试题

参考:https://www.cnblogs.com/jackchen-Net/p/8111817.html#_label3一、题型求出海量数据中TOP K的数据(最大最小堆+分布存储)判断元素是否在海量数据中(bitmap)数据量大,内存小,怎么处理(hash映射后分而治之)二、方法1、可以用hash方法进行文件划分2、bit-map 用于数据查找判重和删除(元素是否在...
原创
发布博客 2020.04.08 ·
283 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

根据中序和前序遍历结果构建二叉树

二叉树的构建必须拥有中序遍历(中序+前序,中序+后序)才可以唯一构建成功。采用递归的方式建立二叉树,前序遍历为{1,2,4,7,3,5,6,8},中序遍历为{4,7,2,1,5,3,8,6},由前序遍历可知根节点为1,在中序遍历中找到1的位置,1之前的为根节点的左子树,1之后的为根节点的右子树;在前序遍历中,左子树的元素为2,4,7,所以1的左节点为2,再对应中序遍历中,2左边有4,7,右边没有...
原创
发布博客 2020.04.01 ·
1173 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

几种重要的设计模式

一、简单工厂模式简单工厂模式属于类的创建型模式,又叫工厂方法模式,通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。工厂角色:简单工厂模式的核心,负责实现创建所有实例的内部逻辑(比如用if语句:如果满足名字为apple的时候,返回一个apple实例对象),工厂类可以被外界直接调用,创建所需的产品对象(用反射机制获取类,生成实例)public class Fact...
原创
发布博客 2020.04.01 ·
583 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

几种常用的排序算法

图片和内容参考来自于:https://blog.csdn.net/weixin_41190227/article/details/86600821一、插入排序import java.util.Arrays;import java.util.Scanner;public class insertSort { public static void main(String[] ar...
原创
发布博客 2020.03.22 ·
117 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

快速幂算法

快速幂用于快速求解a的b次方问题。 时间复杂度为(logn)例如:求解4的5次方5的二进制数为101454^545=4(22+20)4^{(2^2+2^0)}4(22+20)=422∗4204^{2^2}*4^{2^0}422∗420=421+21∗4204^{2^1+2^1}*4^{2^0}421+21∗420=420+20+20+20∗4204^{2^0+2^0+2^0+2^0}*4^{...
原创
发布博客 2020.03.22 ·
194 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spring Boot中的一些注解

转载:https://baijiahao.baidu.com/s?id=1623648034778672046&wfr=spider&for=pc1、@SpringBootApplication(主程序类的注解)@SpringBootApplication是一个复合注解,包括@ComponentScan,@SpringBootConfiguration,@EnableAu...
原创
发布博客 2020.03.12 ·
278 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Spring Boot+zookeeper+dubbo配置

一、基于zookeeper+dubbo组合的分布式系统分布式系统中,常用zookeeper+dubbo组合zookeeper:一个分布式的、开放源码的分布式应用程序协调服务。提供的功能:配置维护、域名服务、分布式同步、组服务dubbo:分布式服务框架,按照分层的方式来架构,使各层解耦。模型简单,分为服务提供方和服务消费方例子:有两个模块A、B,dubbo负责解决A模块和B模块的远程过程...
原创
发布博客 2020.03.02 ·
493 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot与消息队列

一、概念1、JMS、AMQPJMS:JAVA消息服务,基于JVM消息代理的规范(ActiveMQ、HornetMQ)[两种模型:点对点、发布\订阅]AMQP:高级消息队列,兼容JMS(RabbitMQ是AMQP实现)[五种模型:direct exchange、fanout exchange、topic change、headers exchange、system exchange]2、...
原创
发布博客 2020.02.25 ·
623 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

SpringBoot+Redis缓存

开发中通常会使用缓存中间件:redis、memcached、ehcache.redis可以用作数据库、缓存和消息中间件,本文中使用redis作为缓存一、安装redis1、docker中安装redis:sudo docker pull redis2、启动redis并映射端口sudo docker run -d -p 6379:6379 --name myredis 镜像名映射容器服...
原创
发布博客 2020.02.26 ·
238 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Spring Boot缓存注解

一、JSR107规范Java Caching定义的5个接口:CachingProvider,CacheManager,Cache,ENtry,ExpiryCachingProvider:定义了创建、配置、获取、管理和控制多个CacheManager,一个应用可以在运行期间访问多个CachingProviderCacheManager:定义了创建、配置、获取、管理和控制多个唯一命名的Cach...
原创
发布博客 2020.02.23 ·
309 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringData-JPA操作数据库

一、SpringData简介(1)SpringData项目的目的是为了简化基于Spring框架应用的数据访问技术,包括非关系型数据库、MapReduce框架等,包含多个子项目等:JPAMongoDBRedisRESTLDAP(2)特点SpringData提供统一的API来对数据访问层进行操作,让我们在使用关系型或菲关系型数据访问技术时都基于Spring提供的统一标准,包含了CR...
原创
发布博客 2020.02.22 ·
255 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

springboot+druid+mybatis配置操作数据库

一、创建spring-starter工程加入mysql驱动器+jdbc+web+mybatis二、druid配置参考:https://blog.csdn.net/yh_1021/article/details/104434205三、数据库建表:将工程文件夹中的sql文件添加到Navicat中在resource文件夹中有两个sql文件在application.yml文件中修改配...
原创
发布博客 2020.02.22 ·
1343 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

springboot+druid配置数据源

springboot使用druid数据源步骤druid有成套的数据源的监控、安全的解决方案1、在maven中引入druid依赖可以在maven仓库中查找:https://mvnrepository.com <!-- https://mvnrepository.com/artifact/com.alibaba/druid --> <dependency>...
原创
发布博客 2020.02.21 ·
674 阅读 ·
0 点赞 ·
1 评论 ·
2 收藏

Docker(安装+基本命令+Dockerfile打包镜像)

Docker是一个开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的linux机器上,也可以实现虚拟化。例如配置好mysql后,可以将其打包成docker镜像,在其他的linux机器上,只要配置了docker,就可以直接移植过去。一、docker概念docker主机:安装了docker程序的机器,直接安装在操作系统上的docker客户...
原创
发布博客 2020.02.21 ·
1547 阅读 ·
1 点赞 ·
0 评论 ·
7 收藏

消息队列RabbitMQ

一、使用消息队列的好处1、通过异步处理可以提高系统性能(削峰,改善响应速度)不使用消息队列时,用户数据直接写入数据库,在高并发情况下数据压力剧增,响应速度变慢;使用消息队列后,用户将数据发送给消息队列后会立即返回,再由消费队列的消费者进程从队列中获取数据,异步写入数据库。消息队列的服务器处理速度快于数据库,所以可以改善响应速度,提高系统性能。2、降低系统耦合性模块之间不直接调用,新增...
原创
发布博客 2020.02.17 ·
456 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

动态规划

动态规划的本质是:递归解题思路:将原问题拆分成若干个子问题,解决子问题后再返回原问题,依靠子问题的解来解决原问题。动态规划需要解决的两大问题:最优子结构通过子问题(n-1)最优决策导出原问题(n)最优决策无后效性(有后效性指对n进行操作后会影响对n-1,n-2的操作),本身递归是有后效性的,但是利用动态规划可以tiaoguo使每一次操作无后效性重叠子问题去冗余空间换时间(用数...
原创
发布博客 2020.01.11 ·
95 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

python网络编程基础

1、IP地址IP地址用于在网络中找到目标192.168.33.xx前三个数是网络号,xx表示主机号,网络号相同表示在同一个网络中,xx从0~255,其中0和255号不能用,如果不够用,将33作为主机号,可以有256*256台主机,以此类推(2)私有ip私有ip用于局域网,不能在公网中使用10.0.0.0~10.255.255.255172.16.0.0~172.31.255.255...
原创
发布博客 2020.01.08 ·
455 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

shell命令行

一、文件系统中跳转pwd:显示当前工作目录ls:列出一个目录包含的文件及子目录cd+路径名:cd /usr/bin(绝对路径)cd :更改工作目录到家目录cd - :更改工作目录到先前的工作目录①“.”字符开头的文件名是隐藏文件,用ls-a可以列出②linux没有文件扩展名的概念③linux中文件名的标点仅限于“.”,“-”和下划线,不要使用空格。二、操作系统ls可以列出...
原创
发布博客 2020.03.07 ·
1525 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏
加载更多