一,了解之前先了解一下网络基础首先理清一个概念:网络编程 != 网站编程,网络编程现在一般称为TCP/IP编程一般的网络编程都称为Socket编程,Socket的英文意思是“插座”网络编程的目的:直接或者间接的通过网络协议与其他计算机进行通信。网络编程中有两个主要的问题:-->如何准确定为网络上一台或者多台主机:IP和端口号-->找到主机后如何可靠搞笑的进行数据传输
转载
2024-06-25 17:46:50
10阅读
引言之所以我想总结一下java中不太用的东西,是因为我再研究每个版本jdk中,发现有些内容“热火朝天”,但是有些东西却“门可罗雀”。比如说jdk1.5中新增了泛型,强化for循环和枚举等,但是前两者已经被各位熟知了,但是枚举在日常开发中都不太会用的。在本篇博文中,我会详细介绍enum的使用方式,同时比较常量与enum的优劣。笔者目前整理的一些blog针对面试都是超高频出现的。技术点在jdk1.5中
转载
2023-08-11 11:03:19
0阅读
DelayQueue 简介由优先级堆支持的、基于时间的调度队列,内部基于无界队列PriorityQueue实现,而无界队列基于数组的扩容实现。队列创建BlockingQueue<String> blockingQueue = new DelayQueue();要求入队的对象必须要实现Delayed接口,而Delayed集成自Comparable接口应用场景对缓存超时的数据进行移除当向缓
转载
2023-08-11 20:12:19
134阅读
传输层的两大协议TCP和UDP,到底用哪一个?这是所有基于网络通讯的应用程序在设计、开发时需要考虑的。下面,我们先分别来看看TCP和UDP的优缺点,在后面,再来分析一下,什么时候该用TCP、什么时候该用UDP。TCP的优点:可靠,稳定TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源。TCP
原创
2016-09-19 15:33:35
4164阅读
为什么要有Spark SQL? 以往在使用Hadoop时,Hive作为一个数据仓库,但在使用中,我们更多感觉Hive是一个解析引擎,而Hive的底层走的也是MapReduce,而这个MapReduce是Hadoop的,在前面我们也解释了Hadoop的MapReduce的缺点,那么此时我们是使用了Spark实现的MapReduce计算模型,
转载
2023-09-10 19:41:55
237阅读
作者述:JUC是对Java体系内现有数据结构的特性扩展,通过精细化锁控制,和对基本数据类型的特性加工用以支持并发应用场景的业务需求,并提供了并发情况下的池化解决方案。有基础的同学可以直接跳到第四节内容.一、Collections工具类在学习JUC之前我们应当了解一下Collections工具类,该类应用工厂模式及装饰者模式为已有数据结构进行加工,赋予dynamically(checked) 、em
转载
2024-06-06 10:39:47
783阅读
《dubbo应用场景示例一》中我们介绍了3种dubbo应用场景,今天我们接着聊聊dubbo几种应用场景。1、线程模型如果事件处理的逻辑能迅速完成,并且不会发起新的 IO 请求,比如只是在内存中记个标识,则直接在 IO 线程上处理更快,因为减少了线程池调度。但如果事件处理逻辑较慢,或者需要发起新的 IO 请求,比如需要查询数据库,则必须派发到线程池,否则 IO 线程阻塞,将导致不能接收其它请求。如果
转载
2023-07-18 17:05:44
223阅读
在Java并发场景中,会涉及到各种各样的锁,比如:分段锁、公平锁,独享锁、共享锁、乐观锁,悲观锁等等,感觉特别的繁杂,一句话很难描述清楚,但又特别的重要。下面我就通过图文并茂的方式,一起来梳理和详解最全锁!——嘀嘀!上车了!准备上车了!!——乐观锁 VS 悲观锁乐观锁与悲观锁是一种广义上的概念,在Java并发编程和数据库中都有实际的应用场景。1.乐观锁顾名思义,就是很乐观,每次去拿数据的时候都认为
转载
2023-08-15 20:45:52
446阅读
传输层-TCP和UDP应用场景 TCP(传输控制协议) 需要将要传输的文件分段传输,建立会话,可靠传输,流量控制 UDP(用户报文协议) 一个数据包就能完成数据通信,不需要建立会话,不分段,不用流量控制,不可靠传输 UDP使用场景 DNS域名解析,QQ聊天,多媒体教室屏幕广播 TCP使用场景 HTT
原创
2021-06-17 19:24:02
1148阅读
关于java中的HashMap,我们在项目中经常使用到,但是我们的场景是否使用对了呢? 下面分为四个部分来阐述我的HashMap的理解 1、为什么要使用hashMap? 在项目中,需求的实现需要使用到一些数据结构来保存key-value形式的数据,也就是说hashMap其实就是一个装载数据的容器。例如,我需要查询水果的价格,那么很自然就会想到将这些数据存放在一个hashMap里面,苹果:
转载
2023-07-12 13:10:00
197阅读
反射的应用场景一、概述反射技术: Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类中的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
转载
2023-09-04 13:48:41
130阅读
TCP和UDP的区别以及使用场景
原创
2021-12-31 10:28:40
513阅读
一、TCP 和 UDP 的定义TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它通过三次握手建立连接,在数据传输过程中进行拥塞控制、流量控制和错误校验等,确保数据的准确传输。UDP(User Datagram Protocol,用户数据报协议)是一种无连接的、不可靠的传输层协议。它不建立连接,直接将数据封装成数
一:什么是TCP(Transmission Control Protocol,传输控制协议) tcp是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,只简单的描述下这三次对话的简单过程:主机A向主机B发出连接请求
转载
2019-03-28 17:08:00
253阅读
2评论
在构建并发应用程序时,`synchronized`关键字在Java中扮演了至关重要的角色。理解其使用场景可以帮助我们在多线程环境中有效地维护共享资源的一致性。
## 问题背景
在一个电商系统中,存在一个结算服务,需要对用户的账户余额进行实时更新。在高并发的情况下,多个用户可能同时尝试进行支付操作,导致账户余额的更新不一致,从而影响用户体验,甚至产生财务损失。
> “因为我们系统的用户量不断增
# 使用 RocksDB 的 Java 实现指南
## 1. 引言
RocksDB 是一个高性能的键值存储库,它特别适用于需要大量读写的场景,比如缓存、实时数据分析等。Java 的应用程序可以通过 RocksDB 与其良好地交互。本文将详细介绍如何在 Java 中使用 RocksDB,包括具体步骤和示例代码。
## 2. 实现流程概述
以下是使用 RocksDB 在 Java 项目中实现的
1 前言: 多线程的意义: (1)java一般被定义为网络编程语言,主要应用场景是服务器端编程,在用于服务器端编程的时候面临的重要问题就是客户端的并发请求,所以多线程对于java语言非常重要; (2)多线程的存在是在抢CPU的资源和执行权,这样可以提高程序的执行速度和资源的使用效率; (3)对于多核CPU可以充分发挥其优势,对于单核CPU可以防止阻塞。2 应用: (1)实现方式1:继承Thread
转载
2024-06-28 08:47:24
83阅读
Java日常学习之集合以下是本篇文章正文内容,下面内容为自己日常学习总结,可能有些地方不太全面,望谅解 集合一、集合及其应用环境二、集合和数组的对比三、集合架构和分类1.List2.Set3.Map四、补充 一、集合及其应用环境Java集合类存放在java.util包中,是一个用来存放对象的容器。注意: ①集合只能存放对象,不能放基本的数据类型。
转载
2023-10-10 08:35:46
100阅读
# Java synchronized使用场景
## 引言
在多线程编程中,为了保证数据的一致性和线程安全性,我们需要使用同步机制。Java中的synchronized关键字就是一种用于实现同步的机制。本文将介绍Java synchronized的使用场景及相应的代码示例。
## 流程
下面是使用Java synchronized实现同步的一般流程:
|步骤|内容|
|---|---|
|1
原创
2023-10-29 12:36:37
83阅读
# Java中的IoC使用场景及其应用
在Java开发中,IoC(控制反转)是一种设计原则,其主要目标是降低程序模块之间的耦合度。IoC通过将控制权(例如对象的创建、生命周期管理等)从程序代码转移到框架或容器中来实现这一目标。Spring框架是IoC的典型实现,它通过依赖注入(DI)的方式来管理对象之间的关系。本文将探讨IoC的几个主要使用场景,并通过代码示例进行说明。
## IoC使用场景