• avatar Java老程 2022-01-14 14:26:24

    如何实现 List 集合去重?

    List 去重指的是将 List 中的重复元素删除掉的过程。此题目考察的是对 List 迭代器、Set 集合和 JDK 8 中新特性的理解与灵活运用的能力。 List 去重有以下 3 种实现思路: 自定义方法去重,通过循环判断当前的元素是否存在多个,如果存在多个,则删除此重复项,循环整个集合

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:26:46

    MySQL模糊查询再也不用like+%了

    前言 我们都知道 InnoDB 在模糊查询数据时使用 "%xx" 会导致索引失效,但有时需求就是如此,类似这样的需求还有很多,例如,搜索引擎需要根基用户数据的关键字进行全文查找,电子商务网站需要根据用户的查询条件,在可能需要在商品的详细介绍中进行查找,这些都不是B+树索引能很好

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:27:10

    saas疯行的年代,工作流俨然是一种职业素质

    前言 现在越来越多的项目开始使用工作流来满足日常的工作了。今天我们看看Activiti的工作流,我们先入门下BPMN绘画 环境安装 关于流程的BPMN文件主要还是通过eclipse开发工具进行集成绘画的。idea中主要是actiBPM绘画的,但是2014年之后actiBPM就不在维护

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:27:38

    大名鼎鼎的 Linux —— 进程,线程,协程

    前言 Linux 作为当今服务端最流行的操作系统,是每个后端工程师应当熟练使用和理解的。本篇文章会详细讲述 Linux 系统中的一些基础概念:进程、线程,以及后面由各编程语言所实现的协程。 进程是什么? 进程是资源分配的最小单位 计算机专业的同学对这句话肯定不陌生,但是应该怎么去理

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:28:02

    MySQL 索引优化实践

    案例 创建表的 DDL # DDL 语句 CREATE TABLE `employees` ( `id` INT(10) NOT NULL AUTO_INCREMENT, `name` VARCHAR(24) NOT NULL DEFAULT '' COMMENT '姓名' COLLATE

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:28:30

    用Java 8 的 Stream 来写代码,干净优雅

    流如何简化代码 如果有一个需求,需要对数据库查询到的菜肴进行一个处理: 筛选出卡路里小于400的菜肴 对筛选出的菜肴进行一个排序 获取排序后菜肴的名字 菜肴:Dish.java public class Dish {     private String name;     pri

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:28:50

    Go 语言的异常处理

    ERROR 是什么 对于一个 Go 语言程序员,你一定写过这样的代码。 if err != nil { doSomething() } 复制代码 这里的 err 便是我们今天要讨论的主角,为了解释它是什么这个问题,我们不妨先从设计者的角度出发,看一看标准库里的 errors 包是如何设

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:29:11

    牛掰~ 通过Arthas定位,解决了spring-boot中内嵌tomcat的Bug问题

    背景 公司有个渠道系统,专门对接三方渠道使用,没有什么业务逻辑,主要是转换报文和参数校验之类的工作,起着一个承上启下的作用。 最近在优化接口的响应时间,优化了代码之后,但是时间还是达不到要求;有一个诡异的100ms左右的耗时问题,在接口中打印了请求处理时间后,和调用方的响应时间还有差了

    来自 Java老程
    00
  • avatar substance 2022-01-14 14:29:14

    java泛型知识点

    泛型: 引入泛型的背景: 1.超级数组(装任何的对象,使用object定义数组,这时可以装任何对象,但是如果装入的其中一个对象是拥有一个特殊的方法,由于超级数组的查找时返回的依旧是一个object 类,那么这时无法调用特殊对象的函数,这时需要转型,但是这个类装的不是同一个类,这时不同的类具有不的方法

    来自 substance
    00
  • avatar Java老程 2022-01-14 14:29:32

    【开发指南】Spring Cloud集成POI完成Excel读写操作

    POI简介 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft office格式档案读和写的功能,其中包括Excel,Word,PowerPoint等。 官方网站:poi.apache.org/ POI前置知识 1. 坐标 Ex

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:29:53

    ElasticSearch简介之倒排索引

    说起 ElasticSearch,大家的第一反应就是这是一款主要用于搜索的高性能分布式引擎,我们可以使用这个有点重的家伙来完成一个检索功能。当然这是一个普遍的认知,我在这里重复描述也只是为我等小白扫个小盲,大佬可忽略这自嗨。 ​ 目前搜索市面上也不仅仅只有 ElasticSearch,抛开 Elas

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:30:16

    关于小程序的一切,读这一篇就够了~

    小程序发展史 1.1 Native App 在智能机刚兴起的时代,网络还不是很发达,网页浏览速度也很慢,以文字为主。市面上的应用以 Native App 为主。 Native App 是基于 iOS 或者安卓的原生应用,特点是开发成本高,迭代慢,但是性能和体验很好,消息推送及时,比如 qq,微

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:30:47

    年轻人不讲武德,竟重构出这么优雅后台 API 接口

    最近偶然间在看到 Spring 官方文档的时候,新学到一个注解 @ControllerAdvice,并且成功使用这个注解重构我们项目的对外 API 接口,去除繁琐的重复代码,使其开发更加优雅。 展示具体重构代码之前,我们先来看下原先对外 API 接口是如何开发的。 这个 API 接口主要是用来与

    来自 Java老程
    00
  • avatar 牛客946522264号 2022-01-14 14:30:47

    题解 | #四则运算#

    #include <stdio.h> #include <string.h> // 1.无括号 用栈先乘除后加减 // 遇到+-继续入栈,遇到*/出栈1个,和新元素计算后入栈 // 2.有括号 左括号开始递归1步骤,右括号出递归结果 入栈 //注意遇到括号内有负号先要变号再

  • avatar Java老程 2022-01-14 14:31:29

    性能优化反思:减少DB查询,合理使用成员变量。

    高内聚,低耦合是非常深入人心的设计思想,在做到高内聚低耦合的同时,我们也要考虑到值传递的问题:要避免在抽取函数,封装代码时不合理的值传递,避免在多个函数内部重复查询相同的DB。 举个栗子 需求描述 我们的项目是交友类APP,有划卡片喜欢、不喜欢、超级喜欢的动作,也有赠送礼物、邀请约会

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:31:52

    听说你还不会分阶段构建 Docker 镜像?

    用 Go 语言开发的程序打包后就一个可执行的二进制文件,一般情况下是不需要什么环境依赖就能执行运行跑起来,如果拿到 Docker 里面跑,是非常有优势的。 现在都 2021 年了,啥都喜欢搞微服务、分布式概念,今天咱们迈出第一步,先把自己的 Go 程序打包成镜像后期再更怎么上传到阿里云的私有仓库里

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:32:14

    spring IOC容器操作Bean管理——完全注解方式

    1、什么是注解 1.注解是代码的特殊标记,格式:@注解名称(属性名=属性值,属性名=属性值) 2.使用注解,可以作用在类上面、方法上面、属性上面 3.使用注解的目的:简化xml配置文件 2、创建Bean对象可以使用的注解 1.@Component 2.@Controller 3.@Re

    来自 Java老程
    00
  • avatar 牛客698228935号 2022-01-14 14:32:22

    题解 | #尼科彻斯定理#

    #include<stdio.h> static a[1000000]; int main() { int m = 0; int i = 0; for (i = 0; i < 1000000; i++) { a[i] = 1 + i*2; } while (sca

  • avatar Java老程 2022-01-14 14:32:36

    保持清洁的Git提交记录,三招就够了

    大家都有学习如何规范简洁的 编写代码 ,但却很少学习如何规范简洁的 提交代码 。现在大家基本上都用 Git 作为源码管理的工具,Git 提供了极大的灵活性,我们按照各种 workflow 来提交/合并 code,这种灵活性把控不好,也会带来很多问题 最常见的问题就是乱成一团的 git log hi

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:32:58

    细说:程序运行的环境和运行过程,再看不懂请自行面壁

    编译器的任务,是要生成能够在计算机上运行的代码,但要生成代码,我们必须对程序的运行环境和运行机制有比较透彻的了解。 你要知道,大型的、复杂一点儿的系统,比如像淘宝一样的电商系统、搜索引擎系统等等,都存在一些技术任务,是需要你深入了解底层机制才能解决的。比如淘宝的基础技术团队就曾经贡献过,Java

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:33:22

    全网讲解最透彻:高性能网络应用框架Netty,仅此一篇

    Netty 是一个高性能网络应用框架,应用非常普遍,目前在 Java 领域里,Netty 基本上成为网络程序的标配了。Netty 框架功能丰富,也非常复杂,今天我们主要分析 Netty 框架中的线程模型,而线程模型直接影响着网络程序的性能。 在介绍 Netty 的线程模型之前,我们首先需要把问题搞

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:33:44

    图解 Kafka 架构与工作原理

    实时数据处理,从名字上看,很好理解,就是将数据进行实时处理,在现在流行的微服务开发中,最常用实时数据处理平台有 RabbitMQ、RocketMQ 等消息中间件。 一、认识kafka 面试官提问:什么是 Kafka ?用来干嘛的? 官方定义如下: Kafka is used for

    来自 Java老程
    00
  • avatar 士裕 2022-01-14 14:33:56

    题解 | #与7无关的数#

    自己的分析: 本题的实质是,写出与7有关的数的函数。输入数据x的范围为[0, 99],且判断与7有关的函数只有4不操作,可以使用枚举法。这里,我定义7有关的函数为Fun(x)。|| Fun(x)函数。首先,判断输入数据x是否为正整数,且可以被7整除,即if(x%7==0 && x&g

    来自 士裕
    00
  • avatar Java老程 2022-01-14 14:34:08

    Redis 延时任务,高手养成篇

    在开发中,往往会遇到一些关于延时任务的需求。例如 生成订单30分钟未支付,则自动取消 生成订单60秒后,给用户发短信 对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一个问题,这个延时任务和定时任务的区别究竟在哪里呢?一共有如下几点区别 定时任务有明确的触发时间,延时任

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:34:30

    本期探究:Flink是怎样支持批流一体的呢?

    今天咱们来聊一聊Flink是怎样支持批流一体的呢? 实现批处理的技术许许多多,从各种关系型数据库的sql处理,到大数据领域的MapReduce,Hive,Spark等等。这些都是处理有限数据流的经典方式。而Flink专注的是无限流处理,那么他是怎么做到批处理的呢? 无限流处理:输入数据没有尽

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:34:52

    MySQL编码探究

    前言 时位于 2002 年,MySQL4.1 版本开始支持 UTF-8 编码,由于当时采用RFC 2279规定该编码使用 1~6 字节存储单个字符,MySQL 开发者在同年 9月对源码进行了修改,将 UTF-8 编码从最大 6字节变更为 3字节,也就有了现在的UTF8MB3。 我们都知道,UTF8

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:35:13

    MySql单表过大水平分表实践从技术选型到方案代码落地

    一、背景 先交代一下目标表的情况,后台管理系统,表存储的是各个公司的客户线索数据,使用场景是在ORM里面给各个公司提供数据后台系统,各个公司可以通过自己的账号登录查看自己公司的数据。 目前,单表数据量已经达到877W+,且增长速度在每月90W-120W的区间,半年之后数据量可能会超过千万,后台页

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:35:40

    Spring Boot 修改请求url

    背景介绍 在做后端API接口的时候,被前端同事吐槽以前的接口URL没有遵循Restful API 规范,所以开会讨论,最终拍板确定,新做的要接口定义要照着标准规范来。 找了找关于Restful API的文章,还是这位大佬说的容易理解: www.ruanyifeng.com/blog/2014/0

    来自 Java老程
    00
  • avatar 天乔巴夏、 2022-01-14 14:35:44

    题解 | #Powerful Calculator#

    #include<iostream> #include<string> #include<vector> #include<algorithm> using namespace std; void print(vector<int> &

    来自 天乔巴夏、
    00
  • avatar Java老程 2022-01-14 14:36:01

    雀氏牛逼,Alibaba分布式微服务成长手册,GitHub开源,限免~

    分布式架构和微服务架构是互联网架构的核心。我们通常理解分布式架构都是从常用的分布式软件开始的,比如Spring Cloud、Kafka、 ZooKeeper、 HBase等,这些都离不开分布式网络架构、分布式存储和分布式计算等基础理论。 从更高的视角看待分布式架构,为我们详细阐述了分布式架构

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:36:33

    Java实现图片批量压缩像素

    最近因为公司要需要xxx认证上传测试用例功能的具体截图、发现有大小限制、所以就进行了图片压缩,简单记录一下。 压缩前大小: 压缩后大小: 具体代码实现: main方法测试: public static void main(String[] args) throws IOExcep

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:36:55

    Java中的字符串如何替换?

      在Java中,String 类提供了 3 种字符串替换方法,分别是 replace()、replaceFirst() 和 replaceAll(),下面我们就来详细看一下三种的用法! 也可以看视频理解哦~这套Java300集视频专门为零基础而制,适合准备入行Java开发的零基础,视频中穿插多

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:37:16

    Spring Cloud?Dubbo?还是K8s?

    本篇分享主要围绕以下 4 个主题进行: 什么是云原生? 为什么要用云原生架构? 微服务的概念 微服务的技术选型 什么是云原生? ①云计算和云原生 云计算不同于传统的自建机房,云计算就是将计算的抽象为基础设施然后通过网络分发。 得益于云计算的无限扩展能力,使得“云计算”就像自

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:37:48

    java基础-线程状态分析-lock初步使用

    在Java基础线程状态分析中,LockSupport.park()会使线程进入waiting状态,那么这个park方法是啥,查看源码发现其底层还是调用native方法(Unsafe.park()),此文只讲述park用法,cpp底层代码分析吃力。。。 根据Lock文档描述,每个线程有个许可,当获取

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:38:11

    2021最全大厂Java面试题总结,备战2022春招~~

    前言 2021年已不足一月,再过不久就要迎来2022年了,相信很多小伙伴在为跳槽做准备,每年的金三银四都是各大公司招聘程序员的最佳时期,在这段时间内有好多程序员为面试而发愁,不知道如何才能收到好的offer,拿到理想的薪资,实现自我的人生价值!所以小编特地分享出总结的一份480余页的面试手册。

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:38:42

    网络的形成-从原始部落到现代化世界

    网络是一个虚拟的东西,它很大意义上不是看的见摸得着的: 从上到下依次包括 应用层、传输层、网络层、链路层、物理层。 本文会沿着相反的方向,依次讲述物理层、链路层和网路层。 物理层 是网线,是光纤,是产生信号传输的介质,是物理介质。 计算机通过电路信号交互信息 网线或光纤能产

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:39:07

    从各大论坛收集整理的八股文手册,肝完横躺95%的Java面试岗位

    前言 今年的秋招很多小伙伴收获不错,拿到了心仪的offer👏👏👏。也有很多小伙伴屡屡碰壁,不过没关系,虽然错过了今年的金九银十,2021也就只剩最后不到一个月了,咱们再战2022春招!       最近在各大论坛和社区里看见不少小伙伴慷慨地分享了常见的面试题和八股文,为此咱这里也统一做一次

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:39:31

    再见 Xshell~ 这款开源的终端工具逼格更高

    作为一名后端开发,我们经常需要和Linux系统打交道,免不了要使用Xshell这类终端工具来进行远程管理。最近发现一款更炫酷的终端工具Tabby,主题丰富,功能强大,推荐给大家! 聊聊Xshell 之前经常使用Xshell来操作Linux虚拟机,基本上是够用了。但是Xshell***只供非商

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:39:57

    现代API渗透技术,我服了

    在由机械工业出版社发行的《API安全技术与实战》一书中如果时间充分的话关于API渗透测试的内容个人觉得还可以更丰满一些。近期,在国外网站看到一篇不错的文章,转译过来供大家学习参考。 在过去的一些年里API 不像现在那么普遍,这是由于单页应用程序 (SPA) 流行的结果。10 年前,Web 应用程序

    来自 Java老程
    00
  • avatar tonyjxc 2022-01-14 14:40:20

    题解 | #数字序列中某一位的数字#

    第三十八题 简单??暴力确实简单,但是复杂度超了啊!!! class Solution { public:     /**      * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可     &n

    来自 tonyjxc
    10
  • avatar Java老程 2022-01-14 14:40:23

    在Springboot框架上搭建访问mysql数据库的RESTful接口应用

    经历了各种不可控与不可预知的磨难(包括但不限于idea闪退、navicat闪退、系统闪退、莫名其妙的bug无数、疯狂搜索各种注解是为什么无数、jdbcTemplate为什么失效了、@autowired为什么失效了,等等!),终于搞定了这个主题!!!! 本篇就来手把手教你搞定这个应用! 1.

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:40:52

    基于java Springboot实现教务管理系统

     基于java Springboot实现教务管理系统 研究背景:        在当今信息社会发展中中,计算机科学的飞速发展,大多数学校开始注意办公效率的发展是很关键,对学校的管理起到举足轻重的作用。基于 Internet 网络的信息服务,快速成长为现代学校中一项不可或缺的内容措施。很

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:41:14

    面试官:来,翻译翻译,什么是继承~

      继承 1. 什么是继承 继承是面向对象三大特征之一。 从字面意思理解就是“通过继承一个人的财产,从一无所有变得无所不有。” 这让我想起了电影《西虹市首富》,处于人生低谷期的王多鱼偶然间继承了二爷遗产,从此走向人生巅峰。 面向对象的继承其实来源于现实生活,子类通过继承父类,获取父类

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:41:37

    某小厂Java面试题:深拷贝和浅拷贝区别了解吗?什么是引用拷贝?(图解) | JavaGuide

    今天给大家分享一个比较基础也是非常常见的 Java 面试题:“深拷贝和浅拷贝区别了解吗?什么是引用拷贝?”。 关于深拷贝和浅拷贝区别,我这里先给结论: 浅拷贝:浅拷贝会在堆上创建一个新的对象(区别于引用拷贝的一点),不过,如果原对象内部的属性是引用类型的话,浅拷贝会直接复制内部对象的引用地址

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:41:58

    什么?还不懂SpringBoot核心原理:自动配置、事件驱动、Condition,一文带你摆平

    前言 SpringBoot是Spring的包装,通过自动配置使得SpringBoot可以做到开箱即用,上手成本非常低,但是学习其实现原理的成本大大增加,需要先了解熟悉Spring原理。如果还不清楚Spring原理的,可以先查看博主之前的文章,本篇主要分析SpringBoot的启动、自动配置、Con

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:42:22

    SpringBoot Actuator 潜在的 OOM 问题

    此问题背景产生于近期需要上线的一个功能的埋点;主要表现就是在应用启动之后的一段时间内,内存使用一直呈现递增趋势。 下图为场景复线后,本地通过 jconsole 查看到的内部使用走势图。 实际环境受限于配置,内存不会膨胀 背景&问题 应用 a 使用 rest templa

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:42:45

    分布式系统的一些基础理论

    前言 在一年前我曾经有做过一些 Zookeeper 的相关总结,现在我们再把它捡回来,重新的把一些前因后果都扯得更加明白。 一、分布式系统与 Zookeeper 的关系 1.1 集中式服务 我们先从服务部署架构的发展历程说起,其实无非就是 集中式 和 分布式 ,集中式就是说,什么我都是由一台

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:43:11

    图解 | 你管这破玩意儿叫TCP?

    你是一台电脑,你的名字叫 A 经过《如果让你来设计网络》这篇文章中的一番折腾,只要你知道另一位伙伴 B 的 IP 地址,且你们之间的网络是通的,无论多远,你都可以将一个数据包发送给你的伙伴 B 这就是物理层、数据链路层、网络层这三层所做的事情。 站在第四层的你,就可以不要脸地利

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:43:41

    超实用篇→文件和目录cd命令

    文件和目录 cd命令 用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。 cd /home 进入 '/ home' 目录\ cd .. 返回上一级目录\ cd ../.. 返回上两级目录\ cd 进入个人的主目录\ cd ~user1 进入个人的主目录\ cd

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:44:02

    面试官:线程池多余的线程是如何回收的?问到我了

    最近阅读了JDK线程池ThreadPoolExecutor的源码,对线程池执行任务的流程有了大体了解,实际上这个流程也十分通俗易懂,就不再赘述了,别人写的比我好多了。 不过,我倒是对线程池是如何回收工作线程比较感兴趣,所以简单分析了一下,加深对线程池的理解吧。下面以JDK1.8为例进行分析。

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:44:27

    验证mybatis批量插入能否一次能插入1万条数据

    提到用Mybatis批量插入数据,把上限1万条数据一次性的插入到表中。面试官对一次性插入1万条数据有疑问,认为不可以插入这么多数据,但是我做这个功能的时候确实是成功的,那具体能一次插入数据的上限我也不确定,后面就找时间做了下面这个实验。 首先自己搭建了SpringBoot+Mybatis的项目测试

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:44:52

    归并排序:解决小和、逆序对问题

    一、小和问题 1、题目描述: 在一个数组中,每一个数左边比当前数小的数累加起来,叫做这个数组的小和。求一个给定数组的小和。 2、例子: 数组为:[1,3,4,2,5] 1左边比1小的数:没有 3左边比3小的数:1 4左边比4小的数:1,3 2左边比2小的数:1 5左边比5小的数:1

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:45:13

    Java代理模式之Java服务定位器模式

    Java服务定位器模式 服务定位器模式(Service Locator Pattern)用在我们想使用 JNDI 查询定位各种服务的时候。考虑到为某个服务查找 JNDI 的代价很高,服务定位器模式充分利用了缓存技术。在首次请求某个服务时,服务定位器在 JNDI 中查找服务,并缓存该服务对象。当再次

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:45:34

    什么是Java队列?实例讲解队列的应用

    Java队列 队列是只能在其上执行操作的对象的集合两端的队列。 队列有两个末端,称为头和尾。 在简单队列中,对象被添加到尾部并从头部删除并首先删除首先添加的对象。 Java Collections Framework支持以下类型的队列。 • 简单的队列允许在尾部插入和从头部移除。 • 优

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:45:55

    阿里二面:java8的stream api是迭代一次还是迭代多次

    面试官:java8新增的stream api用过吗?我:这个必须用过啊。 面试官:给你下面一个字符串数组,如果用stream api来实现,找出以字符'a'开头长度最大的字符串,使用stream api该怎么实现呢? {"abb","abcd","

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:46:17

    「Java深层系列」让我们一起完全吃透时间和日期相关的API指南

    技术简介 java中的日期处理一直是个问题,没有很好的方式去处理,所以才有第三方框架的位置比如joda。文章主要对java日期处理的详解,用1.8可以不用joda。 时间概念 首先我们对一些基本的概念做一些介绍,其中可以将GMT和UTC表示时刻大小等同。 UT时间 UT反应了地球自转的平均

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:46:39

    dart系列之:还在为编码解码而烦恼吗?用dart试试

    简介 在我们日常使用的数据格式中json应该是最为通用的一个。很多时候,我们需要把一个对象转换成为JSON的格式,也可以说需要把对象编码为JSON。 虽然在dart中所有的字符都是以UTF-16来存储的,但是更加通用的格式应该是UTF-8,同样的dart也提供了对UTF-8的编码支持。 所有的

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:46:59

    选择合适的数据类型以及恰当的范围

    MySQL 数据库中一共去定义了四类数据类型,而且它们都有不同的取值范围,也就是合法的取值区域。对于业务开发来说,选择合适的数据类型往往是很简单的。比如你存储姓名,肯定是用字符串,存储年龄你会选择整形数字等等。所以这里的焦点其实是各个数据类型的取值范围对业务发展的影响。 字符串 字符串类型是My

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:47:41

    什么叫类与对象? 详解~

    类与对象 1. 面向过程和面向对象 大一刚开始学编程的时候,老师说一定要了解面向过程开发和面向对象开发。 我当时心想:“学校还能分配个对象给我?让我天天面向她?”后来发现是我多想了。 我于是下意识去百度一下:什么是面向对象? 我发现百度的解释跟我大学老师一样:高深莫测,不能通俗易懂。

    来自 Java老程
    00
  • avatar 进击的猿员 2022-01-14 14:47:55

    题解 | #链表分割#

    1.首先审题,可知,需要返回除了小于x的值,其余需要按照顺序返回 2.我们创建两个哨兵位,建立两个新链表,一个存储小于x的值,一个用来存储大于x的值 3.将两个链表连接起来,返回新链表的头节点,(这里需要注意成环问题) 欢迎大家去我的博客留言,我也会分享我做题的心得 https://blog.csd

    来自 进击的猿员
    00
  • avatar WX13823153201 2022-01-14 14:48:01

    政法委重点人员联防联控平台建设,群防群治小程序系统开发

    政法委重点人员联防联控平台建设,群防群治小程序系统开发 政法委重点人员联防联控是平安城市的重要措施和力量,其重心是维护社会稳定、化解基层矛盾、防控违法犯罪,应对大规模公共危机和安保活动。联防联控管理平台把党的群众路线和大数据、云计算、人工智能等新一代信息技术深度融合,创新打造了“打、防、管、控”为一

    来自 WX13823153201
    00
  • avatar Java老程 2022-01-14 14:48:03

    谈一谈sql优化的15个小技巧

    前言 sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到。 如果某天你负责的某个线上接口,出现了性能问题,需要做优化。那么你首先想到的很有可能是优化sql语句,因为它的改造成本相对于代码来说也要小得多。 那么,如何优化sql语句呢? 这篇文章从15个方面,分

    来自 Java老程
    01
  • avatar Java老程 2022-01-14 14:48:25

    MySQL中常用函数的日常总结

    前言   很多朋友都学习过数据库相关的操作,SQL作为访问和处理数据库的标准计算机语言,也有很多的函数方便我们调用。近期针对SQL中的函数进行了一次总结,特分享给大家。 SQL函数   SQL函数主要分为两大类,一类是基于计算的函数Aggregate函数,另一类是基于数据处理的Scalar函数

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:48:52

    红黑树效率如此之高,MySQL为何不采用?

      ①-二叉树、红黑树、Hash、B+树 索引:索引是帮忙MySQL高效获取的排好序的数据结构 索引数据结构: 二叉树 红黑树 Hash表 B-Tree 1.二叉查找树(Binary Search Trees) 左节点比父节点要小,右节点比父节点要大。

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:49:13

    数据库时间慢了14个小时,Mybatis说,这个锅我不背

    同事反馈一个问题:Mybatis插入数据库的时间是昨天的,是不是因为生成Mybatis逆向工程生成的代码有问题? 大家都知道,对于这类Bug本人是很感兴趣的。直觉告诉我,应该不是Mybatis的Bug,很可能是时区的问题。 很好,今天又可以带大家一起来排查Bug了,看看从这次的Bug排查中你能G

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:49:37

    Java中的常见的设计模式总结

    1. 你所知道的设计模式有哪些 Java 中一般认为有 23 种设计模式,我们不需要所有的都会,但是其中常用的几种设计模式应该去掌握。下面列出了所有的设计模式。需要掌握的设计模式我单独列出来了,当然能掌握的越多越好。 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:49:58

    抽象类与接口

     一.抽象类 1.抽象类概述 在java中,一个没有方法体的方法的方法定义为抽象方法,而类中如果有抽象方法,该类必须定义为抽象类。 2. 抽象类的特点 抽象类和抽象方法必须使用abstract关键字进行修饰 public abstract class 类名{} pu

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:50:19

    『Netty核心』Netty心跳机制

    心跳检测机制 所谓心跳,即在 TCP 长连接中,客户端和服务器之间定期发送的一种特殊的数据包,通知对方自己还在线,以确保 TCP 连接的有效性。 心跳检测机制:客户端每隔一段时间发送PING消息给服务端,服务端接受到后回复PONG消息。客户端如果在一定时间内没有收到PONG响应,则认为

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:50:44

    Redis中的限流八股文

    Current Limiting 在编写系统时候有时候我们的系统在设计的时候就已经估算到了最大请求负载了,如果大量的请求超过系统所能承受着的值时,那么系统可能随时挂掉,所有聪明程序员就想到了请求限流来控制系统的可用和稳定性。 滑动窗口限流 滑动窗口算法将一个大的时间窗口分成多个小窗口,每次大窗

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:51:06

    EXPLAIN 使用

    分析 EXPLAIN 的结果 现在我们来分析一下 EXPLAIN 的结果。 explain select * from salaries where from_date ='1996-12-02'; 复制代码 select_type 是 simple 表示这是一个简单查询;查询的表是 sa

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:51:28

    Springboot异步任务执行及监控

    除了自己实现线程外,springboot本身就提供了通过注解的方式,进行异步任务的执行。下面主要记录一下,在Springboot项目中实现异步任务,以及对异步任务进行封装监控。 1 开启异步支持 想要使用springboot的注解进行异步任务,首先要开启springboot的异步任务支持。通过集

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:51:49

    git merge rebase cherry-pick分别什么时候用?一文解惑

    一、git merge 1.使用 将分支切换到 master 上去:git checkout master 将分支 feature 合并到当前分支(即 master 分支)上:git merge feature 2.特点 只处理一次冲突 引入了一次合并的历史记录,合并后的所

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:52:12

    浅析hashCode

    hashCode是什么? 首先,hashCode在计算机领域指的是一个数据经过hash funcation后得到的一个摘要,而这个摘要可以作为索引应用到hash map中去。接下来我们聊聊hashCode在java中是什么样的。 hashCode是Java.lang.Object定义的一个nat

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:52:33

    硬货分享~ Redis6高并发必备核心技术

    哈喽大家好~这里是不秃头 这是我的第一篇文章,想来想去还是写一下Redis。 为什么要写Redis呢? 因为在未来或更长的时间互联网的分布式应用必定会成为主流,互联网企业对微服务应用的高可用、高性能也有很高的要求。在这样的情况下,非关系型数据库起到举足轻重的作用,Redis作为非关系数据库

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:52:56

    关注MySQL高级 - 架构组成

    高级MySQL介绍 什么是DBA? 数据库管理员,英文是Database Administrator,简称DBA。 百度百科介绍 数据库管理员(Database Administrator,简称DBA),是从事管理和维护数据库管理系统(DBMS)的相关工作人员的统称,属于运维工程师的一个分

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:53:17

    面试官问我JVM调优,我忍不住了,哈哈哈哈

    面试官:今天要不来聊聊JVM调优相关的吧? 面试官:你曾经在生产环境下有过调优JVM的经历吗? 候选者:没有 面试官:… 候选者:嗯…是这样的,我们一般优化系统的思路是这样的 候选者:1. 一般来说关系型数据库是先到瓶颈,首先排查是否为数据库的问题 候选者:(这个过程中就需要评估自己建的

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:53:39

    设计模式这话题,我面试又被问了

    面试官:我看你的简历写着熟悉常见的设计模式,要不你来简单聊聊你熟悉哪几个吧? 候选者:常见的工厂模式、代理模式、模板方法模式、责任链模式、单例模式、包装设计模式、策略模式等都是有所了解的 候选者:项目手写代码用得比较多的,一般就模板方法模式、责任链模式、策略模式、单例模式吧 候选者:像工厂模式

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:54:02

    基础架构的未来 是 K8s,那么 K8s 的未来在何方?

    随着容器技术大行其道,应用的复杂性只增不减,开发者们开始广泛使用更先进的工具,比如 Kubernetes。目前 Kubernetes 已经不年轻了,开始逐渐开始 boring,你可能会想问 Kubernetes 之后还有什么令人兴奋的新技术。但云计算是一个快速发展的领域,不太容易精准预测下一个令人兴

    来自 Java老程
    00
  • avatar 有pp才有真相 2022-01-14 14:54:09

    题解 | #在二叉树中找到两个节点的最近公共祖先#

    1 思路 基础 不是搜索树,是普通树 公共祖先 和 相交的链表差异,指针没有next,只有root 找到bfs (queue)优化的痕迹 1.1 实现错误思路 int lowestCommonAncestor(TreeNode* root, int o1, int o2) {

  • avatar Java老程 2022-01-14 14:54:24

    RabbitMQ 中的 VirtualHost 该如何理解

    当我们第一次安装好一个 RabbitMQ 之后,我们可能都会通过 Web 页面去管理这个 RabbitMQ,默认情况下,我们第一次使用的默认用户是 guest。 登录成功后,在 admin 选项卡可以查看所有用户: 可以看到,每个用户都有一个 Can access virtual hosts

    来自 Java老程
    00
  • avatar LY_coder 2022-01-14 14:54:32

    题解 | #map简单应用#

            //write your code here......         for (

    来自 LY_coder
    00
  • avatar Java老程 2022-01-14 14:54:48

    SpringBoot常用注解 | @Configuration

      前言 SpringBoot 中简化了大量的配置文件,取而代之的是利用注解完成之前通过配置文件完成的工作。操作上便捷了很多,但是也隐藏了一些内部实现细节,在使用的时候不能盲目,应该了解在以往 Spring 项目中是如何配置的,这样可以加深我们对 SpringBoot 的理解 概述

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:55:12

    会使用自定义注解 ≈ 好的程序员 ?| 教你结合 AOP 切面打印请求日志

    一、前言 今天就带着大伙梳理一遍注解也就是 @interface 正确的打开方式,除此之外,结合 AOP 切面统一打印出入参日志,对于每个访问注解绑定的接口方法的请求都一目了然,不仅方便接口的调试,还能给你一个优雅、整齐且大方的控制台日志记录。 二、效果演示 控制台日志输出

    来自 Java老程
    00
  • avatar 王冠与高跟鞋 2022-01-14 14:55:45

    题解 | #登录验证#

    #include <stdio.h> #include <string.h> int main() { char name[30] = "0",mima[30]="0"; while (scanf("

  • avatar Java老程 2022-01-14 14:55:35

    取代 Postman + Swagger 这款神器功能更强大,界面更炫酷

    作为一位后端开发,我们平时经常需要维护API文档、对API接口进行调试、有时候还得Mock数据。Postman虽然作为接口调试工具非常好用,但是对于维护API文档这类工作却不太合适。今天给大家推荐一款功能更强大的工具Apifox,足以满足我们对API的各种需求,希望对大家有所帮助! Apifo

    来自 Java老程
    00
  • avatar 牛客199532013号 2022-01-14 14:56:08

    题解 | #按之字形顺序打印二叉树#

    import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Stack; /* public class TreeNode { int val = 0; TreeN

  • avatar Java老程 2022-01-14 14:56:10

    源码分析:Spring是如何获取容器中的Bean?

    之前分析了Bean是如何注册到容器中的,既然我们把Bean交给Spring来管理,在我们需要对象的时候Spring会自动帮我们注入,那Spring肯定会有一个从容器中获取Bean的过程,只不过这个过程是Spring框架来帮我们完成的,对于我们使用者来说没有感知 下面我们就通过源码来看一下Sprin

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:56:31

    人人都能看懂的 6 种限流实现方案

    为了上班方便,去年我在南山附近租了一个房间,这样离我上班的地方就近了,它为我节约了很多的时间成本,我可以用它来做很多有意义的事,最起码不会因为堵车而闹心了,幸福感直线上升。 但即使这样,生活也有其他的烦恼。南山的居住密度也比较大,因此停车就成了头痛的事,我租的是路两边的非固定车位,每次只要下班回来

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:56:55

    面试表演了手写HashMap,把面试官给秀到了

    手写HashMap?这么狠,面试都卷到这种程度了? 第一次见到这个面试题,是在某个不方便透露姓名的Offer收割机大佬的文章: 手写HashMap,快手一面卒 这……我当时就麻了,我们都知道HashMap的数据结构是数组+链表+红黑树,这是要手撕红黑树的节奏吗? 后来,整理了一些面经

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:57:26

    springboot+websocket实现并发抢红包功能

    概述 抢红包功能作为几大高并发场景中典型,应该如何实现? 源码地址:gitee.com/tech-famer/… 分析 参考微信抢红包功能,将抢红包分成一下几个步骤: 发红包;主要填写红包信息,生成红包记录 红包支付回调;用户发红包支付成功后,收到微信支付付款成功的回调,生成指定数量

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:57:46

    ES底层读写工作原理,看这一篇就够了

    前言 es 就像是个黑盒,如果你不了解其中的内部原理,你还能干啥?你唯一能干的就是用 es 的 api去做最基本的读写数据了。要是出点什么问题,你啥都不知道,那还能指望你做什么呢? 所以为了能更深入的去了解es内部构造及解决使用过程中出现的问题,知道es最底层的工作原理就显得尤为重要了,那么接下

    来自 Java老程
    00
  • avatar Java老程 2022-01-14 14:58:08

    一些常用的代码规范总结

    前言 最近在看王争大佬的设计模式之美,里面谈到了代码规范,刚好也是我平时比较注意的一些点,这里做了一个总结。 下面将从命名,注释,代码风格,编程技巧四个维度展开讨论 命名 选取一个合适的命名有时候确实是很难的,来看下有哪些可以帮我我们命名的技巧 1、命名的长度选择 关于命名长度,在能够表

    来自 Java老程
    00
  • avatar tonyjxc 2022-01-14 14:58:11

    题解 | #连续子数组的最大和#

    第三十九题 算法QAQ class Solution { public:     int FindGreatestSumOfSubArray(vector<int> array) {         // 暴力 多层循环

    来自 tonyjxc
    00
  • avatar Java老程 2022-01-14 14:58:29

    学习Java必备的基础知识,要想学好必须扎实基本功~~

    数组 数组的引用传递 public class TestDemo1{ public static void main(String args[]){ int data[] = null; data = new int [3]; data[0

    来自 Java老程
    00
  • avatar 牛客327474222号 2022-01-14 15:01:11

    链表编程经验

    如何保证不多,不漏,不越界 首先保证不越界,如果在循环中需要有p->next->next或p->next->val,就必须要保证p->next非空指针,以此类推,如果要访问p->next->next->next就要保证p->next->n

  • avatar 牛客859999193号 2022-01-14 15:01:46

    短视频文案如何写,学会以下几种方法,离爆款绝对不远。

    短视频运营,视频肯定是关键,文案是对视频的一种衬托,但是也并不代表文案不重要,在短视频中的段子文案也是精心设计的,所以今天要分享的是视频介绍里的文案,是怎么炼成的。 下面就跟大家讲讲如何写出比较好的视频文案,仅仅是形式,具体还是要看自己进行灵活应用。 1.设问互动 以发出疑