ICode9

精准搜索请尝试: 精确搜索
  • gRPC(Java) keepAlive-icode9机制研究2022-11-19 13:32:49

    结论 gRPC keepAlive是grpc框架在应用层面连接保活的一种措施。即当grpc连接上没有业务数据时,是否发送pingpong,以保持连接活跃性,不因长时间空闲而被Server或操作系统关闭 gRPC keepAlive在client与server都有,client端默认关闭(keepAliveTime为Long.MAX_VALUE), server端默认打开

  • TreeUtils工具类一行代码实现列表转树 实战Java82022-11-18 14:26:34

    一、序言在日常一线开发过程中,总有列表转树的需求,几乎是项目的标配,比方说做多级菜单、多级目录、多级分类等,有没有一种通用且跨项目的解决方式呢?帮助广大技术朋友给业务瘦身,提高开发效率。本文将基于Java8的Lambda 表达式和Stream等知识,使用TreeUtils工具类实现一行代码完成列表转

  • 二维码的秘密(生成原理)2022-11-17 12:48:13

    这里所说的二维码默认指的就是我们经常用到的微信二维码这样方形格式的,二维码的英文全称是 Quick Response Code,快速响应矩阵图码。我们简直不要太熟悉了,平均每天都要扫码好几次,做核酸扫码、吃饭付钱扫码、进出办公楼扫码。就像上面这样,二维码就是用黑白或者明暗的格子来分别代表1

  • 还不懂Java线程池实现原理2022-11-17 12:35:51

    线程池无论是工作还是面试都是必备的技能,但是很多人对于线程池的实现原理却一知半解,并不了解线程池内部的工作原理,今天一灯就带大家一块剖析线程池底层实现原理。1. 为什么要使用线程池使用线程池通常由以下两个原因: 频繁创建销毁线程需要消耗系统资源,使用线程池可以复用线程。

  • Java项目有可能做到所有的代码逻辑均可热部署吗?2022-11-17 12:24:15

    前言首先我们明确下什么叫做热部署,热部署是在不重启java虚拟机的前提下,自动更新class的行为,从而更新整个运行时的逻辑。在java开发领域,热部署一直是一个难以解决的问题,java虚拟机理论上只能实现方法体的修改热部署,对于整个类结构的更改,仍然需要重启虚拟机,对类重新加载才能完成更新

  • 你知道为什么JAVA不支持多重继承吗?2022-11-16 22:15:10

    继承是面向对象编程语言非常宝贵的特性。继承有助于将一个类(父类)的属性继承到另一个类(子类)。父类也称为基类,子类也称为派生类或子类。 由于歧义问题,Java 不支持多重继承,这意味着如果一个程序具有多重继承,那么它可以通过多种方式被理解,这可能会导致不需要的输出或错误。如果一个

  • Java注解与原理分析2022-11-15 15:48:45

    一、注解 icode9 基础注解即标注与解析,在Java的 icode9 代码工程中,注解的使用几乎是无处不在,甚至多到被忽视;无论是在JDK源码或者框架组件,都在使用注解能力完成各种识别和解析动作;在对系统功能封装时,也会依赖注解能力简化各种逻辑的重复实现;基础接口在Annotation的源码注释中有说明:

  • JAVA系列之类加载机制详解2022-11-15 15:32:20

    一、类加载 icode9 过程程序员编写的Java源程序(.java文件)在经过编译器编译之后被转换成字节代码(.class 文件),类加载器将.class文件中的二进制数据读入到内存中,将其放在方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类加载的最终产品是位于堆区中

  • Ruby 代码挑战:数组中所有素数的总和2022-11-15 15:24:13

    素数是只能被自身和 1 整除的数字。今天,我将介绍一个在icode9编码评估中可能会看到的基本算法问题:找到数组中的所有素数,并生成它们的总和。输入arr = [2, 5, 10, 12, 7, 2, 11, 4]输出--> 27查找 icode9 单个素数在你找到数组中的大量素数之前,我们需要确定单个整数是否是素数的能力

  • 如何把Java代码玩出花?JVM Sandbox入门教程与原理浅谈2022-11-15 14:03:10

    在日常业务代码开发中,我们经常接触到AOP,比如熟知的Spring AOP。我们用它来做业务切面,比如登录校验,日志记录,性能监控,全局过滤器等。但Spring AOP有一个局限性,并不是所有的类都托管在 Spring 容器中,例如很多中间件代码、三方包代码,Java原生代码,都不能被Spring AOP代理到。如此一来,一

  • Java的新威胁模型2022-11-15 13:00:36

    在过去十年的云迁移中,针对 Java 应用程序的威胁模型以及我们需要保护它们的方式已经发生了变化。OpenJDK已经在这一领域做出了一个积极的变化,弃用了旧的SecurityManager,这是一个保护过去AOL CD和纸质地图时代的遗物。安全性的下一个积极变化是加强软件组件的供应链,了解正在运行的和

  • C#多线程之高级篇(上)2022-11-15 12:46:57

    一、非阻塞同步重排序与缓存我们观察下面这个例子:public class Foo{ private int _answer; private bool _complete; void A() //A 1 { _answer = 10; _complete = true; } void B() //B 2 { if (_complete) Console.WriteLine(_answer)

  • SpringBoot3正式版将于11月24日发布:都有哪些新特性?2022-11-15 12:10:06

    从 2018 年 2 月 28 号发布 Spring Boot 2.0 版本开始,整个 2.X 版本已经经过了 4 年多的时间,累计发布了 95 个不同的版本,而就在前不久,2.X 系列的也已经迎来了他的最终版本:2.7。前几天我还写了一篇关于 Spring Boot 从 2.1 版本升级到 2.7 的文章,而现在,Spring Boot 3.0 也要来了!时间

  • 如何在JavaScript中使用for循环2022-11-14 22:25:19

    前言循环允许我们通过循环数组或对象中的项并做一些事情,比如说打印它们,修改它们,或执行其他类型的任务或动作。JavaScript有各种各样的循环,for循环允许我们对一个集合(如数组)进行迭代。在这篇文章中,我们将了解JavaScript提供的for循环。我们将看看for...in循环语句是如何在JavaScript

  • 如何使用 Javascript Date 对象计算特定日期之前的天数2022-11-14 15:40:10

    创建新的 Date 对象获得今天的日期很容易。只需使用 Date 对象的构造函数: // Get today's dateconst now = new Date();// Sun Nov 13 2022 18:28:22 GMT-0500 (Eastern Standard Time)若要创建不同的日期(例如圣诞节),请使用不同的构造函数,其中日期由字符串指定:// Make a date ob

  • Java安全之Mojarra JSF反序列化2022-11-14 12:45:46

    Java安全之Mojarra JSF反序列化About JSFJavaServer Faces,新一代的Java Web应用技术标准,吸收了很多Java Servlet以及其他的Web应用框架的特性。JSF为Web应用开发定义了一个事件驱动的、基于组件的模型。其中最常用的是Sun(现在的Oracle)发布的Mojarra和Apache发布的MyFacesJavaServer

  • JUC学习笔记——共享模型之内存2022-11-14 12:43:39

    Java内存模型我们首先来介绍一下Java内存模型: JMM 即 Java Memory Model,它定义了主存、工作内存抽象概念,底层对应着 CPU 寄存器、缓存、硬件内存、 CPU 指令优化等。JMM的主要作用如下: 计算机硬件底层的内存结构过于复杂 JMM的意义在于避免程序员直接管理计算机底层内存,用一些关键

  • 干货,深入剖析ReentrantLock源码2022-11-14 12:27:09

    ReentrantLock和Synchronized都是Java开发中最常用的锁,与Synchronized这种JVM内置锁不同的是,ReentrantLock提供了更丰富的语义。可以创建公平锁或非公平锁、响应中断、超时等待、按条件唤醒等。在某些场景下,使用ReentrantLock更适合,功能更强大。前两篇文章,我们分析了AQS的加锁流程

  • JAVA开发搞了一年多大数据的总结2022-11-13 17:27:23

    2021年7月份加入了当前项目组,以一个原汁原味的Java开发工程师的身份进来的,来了没多久,项目组唯一一名大数据开发工程师要离职了,一时间一大堆的数据需求急需人来接手,此刻又招不来新的数据开发。没辙,我和同组的另一位Java开发同事算是临危受命,接下了大数据方面的工作,开启了Java工程师

  • Java基础细碎知识点《枚举》2022-11-13 17:25:12

    1.什么是枚举?在数学和计算机科学中,枚举是一个被命名为整型常数的集合,枚举在生活中也很多比如:星期的表示 : SUNDY、MONDY、TUESTDAY、WEDNESDAY、THURSDAY、FRIDAY、SATURDAY性别 : FEMALE女、MALE男简单来说,枚举就是一个集合。当一个类的对象是有限个且个数确定的时候,我们就可以

  • Java中异常处理机制的理解与应用2022-11-13 14:18:36

    异常客观角度:不符合现实生活的各种情况,都可以理解为是异常 Java语言角度:在代码的运行过程中,出现的各种错误导致程序停止运行,那么这些错 误就是异常。 注意:异常在程序种是通过一个个对象来表示 和异常相关的类型: Throwable 该类型是所有异常类的父类 Error:错误 一般表示比较严重的问

  • 基于SpringBoot的疫情防控管理系统(Java项目)2022-11-13 13:37:06

    一、选题背景介绍参考:

  • C#多线程之线程基础篇2022-11-13 13:16:03

    一、概念并行(parallel):同一时间,多个线程/进程同时执行。多线程的目的就是为了并行,充分利用cpu多个核心,提高程序性能线程(threading):线程是操作系统能够进行 运算调度的最小单位,是进程的实际运作单位。 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并行多个线程,每条线程并

  • Java程序员不可错过的12款开发框架2022-11-12 19:56:53

    Java开发应用很广泛,所以程序员求职行业和方向也很多。那么,Java程序员必须要掌握哪些开发框架?下面小编总结了这12款Java程序员必须掌握的开发框架。一起来看看吧!十二个必须掌握Java开发框架如下:Java开发框架一、Spring毫无疑问,Spring 框架现在是Java后端框架家族里面比较强大的一

  • [C++] - GCC和LLVM对方法2022-11-12 19:55:17

    最近做一个C++开源项目发现一个奇怪问题,通过clang编译链接执行程序每到有一个就崩溃了,gcc下则没有此问题。后来通过调试,发现原因是bool返回的方法是没有return语句!问题是为啥还能通过编译呢?#include <iostream>class Test {public: bool yes();};bool Test::yes() { std::cout <<

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有