最近在学习Java网络编程和Netty相关的知识,了解到Netty是NIO模式的网络框架,但是提供了不同的Channel来支持不同模式的网络通信处理,包括同步、异步、阻塞和非阻塞。学习要从基础开始,所以我们就要先了解一下相关的基础概念和Java原生的NIO。这里,就将最近我学习的知识总结一下,以供大家了解。 为了节约你的时间,本文主要内容如下:异步,阻塞的概念操作系统I/O的类型Java NI
转载 2024-06-30 12:52:04
116阅读
简介  SystemServer的进程名实际上叫做“system_server”,通常简称为SS。  系统中的服务驻留在其中,常见的比如WindowManagerServer(Wms)、ActivityManagerSystemService(AmS)、 PackageManagerServer(PmS)等,这些系统服务都是以一个线程的方式存在于SystemServer进程中。  SS是由Zygo
转载 6月前
99阅读
# Java实现SSE ## 简介 SSE(Server-Sent Events)是一种服务器向客户端推送数据的技术。它使用HTTP协议,适用于实时通信和实时更新的场景。相比传统的轮询技术,SSE具有更低的延迟和更高的效率。 本文将介绍如何使用Java实现SSE,并提供相应的代码示例。 ## 什么是SSESSE是一种基于HTTP的协议,它允许服务器实时向客户端推送数据。它使用了HTT
原创 2023-10-05 10:21:51
1312阅读
实现自己的class reload机制,首先需要明白我们面临什么样的问题,首先,虚拟机中使用到的Class都是由各种ClassLoader装载进来的,而绝大部分程序的开发者都不需要关心这个过程,我们面临的第一个问题就是需要将class装载这个过程拦截下来,让所有的需要reload 的class的装载都经过我们的机制,我们才有机会去执行我们的reload机制,因此我们需要拦截系统的ClassLoa
# Java SSE 实现入门指南 Server-Sent Events(SSE)是一种允许服务器推送实时数据更新到浏览器的方法。在这篇文章中,我们将逐步学习如何使用 Java 实现 SSE。我们将分为几个步骤,确保你能够顺利完成。 ## 流程概述 以下是实现 Java SSE 的步骤: | 步骤 | 描述 | | ------- | ----
原创 10月前
261阅读
通过装载类时修改类名加上版本号来实现类重新装载,这时最核心的问题实际上已经解决了,至少类变化时可以马上装载进来使用了,但是同时带来一些问题: * 类名被修改了,反射怎么办?比如,我的类Test里面,有 worker = new Worker(),这时候返回的实际上是一个Worker_V_1的实例,正常的方法调用是没问题了,不过如果worker.getClass().getName()咋整
转载 9月前
24阅读
 这看起来像一个悖论,我们要在应用是使用一个类,初始化它,构造它的实例,调用方法,等等,但是又不能装载这个类,这不忽悠人么? 暂时不管如何做到,先看看问题本身。我们要解决的问题就是当一个类(例如Worker)已经在虚拟机里面使用了,比如有程序Test引用到了Worker,这时候,Worker修改过了(Work'),字节码更新过了,我们需要在不重新启动jvm的情况下,让Test新
# Java实现SSE功能 ## 1. 简介 Server-Sent Events (SSE) 是一种用于实时推送数据的Web技术,使服务器能够主动向客户端发送消息。它建立在HTTP协议上,使用简单的纯文本格式进行通信。 在本文中,我们将介绍如何使用Java实现SSE功能,并教会刚入行的开发者如何实现这一功能。 ## 2. 流程概述 下面是实现Java SSE功能的整体流程图: ```m
原创 2023-10-02 08:35:59
2439阅读
Java Servlet 和 JSP教程(2)2 安装 2.1 安装Servlet和JSP开发工具 要 学习Servlet和JSP开发,首先你必须准备一个符合Java Servlet 2.1/2.2和JavaServer Pages1.0/1.1规范的开发环境。Sun提供免费的JavaServer Web Development Kit(JSWDK),可以从http://java.sun.co
# Java实现SSE服务 ## 1. 简介 Server-Sent Events(SSE)是一种在客户端和服务器之间实现单向实时通信的Web技术。它允许服务器向客户端推送数据,而不需要客户端发送请求。在Java中,我们可以使用Spring框架来实现SSE服务。 在本文中,我们将教会一位新手开发者如何使用Java实现SSE服务。我们将使用Spring Boot框架来构建一个简单的示例,展示S
原创 2023-11-10 04:57:12
708阅读
Java多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。1、继承Thread类实现多线程继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程
1 JavaWeb监听器概述在JavaWeb被监听的事件源为:ServletContext、HttpSession、ServletRequest,即三大域对象。l  监听域对象“创建”与“销毁”的监听器;l  监听域对象“操作域属性”的监听器;l  监听HttpSession的监听器(较少用,了解就行)。三大域对象监听器创建方式为自定义类实现监听器接口,然后在web.
 面向对象设计原则:  单一职责原则 SRP :   一个类或者行为只做一件事 。  降低代码冗余,提高可重用性,可维护性,可扩展性,可读性 使用组合形式   里氏替换原则 LSP :  所有引用基类的地方必须能
作用:SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层使用spring MVC负责请求的转发和视图管理spring实现业务对象管理,mybatis作为数据对象的持久化引擎 原理:SpringMVC:1.客户端发送请求到DispacherServlet(分发器)2.
# 在Java Servlet中实现Server-Sent Events (SSE) ## 引言 随着现代Web应用的不断发展,实时数据传输的需求日益增加。Server-Sent Events(服务器发送事件,简称SSE)是HTML5中一种用于单向实时更新的机制,服务器可以通过HTTP协议主动向客户端发送事件。在这篇文章中,我们将详细探讨如何在Java Servlet中实现SSE,帮助开发者实
原创 8月前
314阅读
用队列来实现基数排序。       在之前的基数排序-JAVA语言实现一文中,采用数组来存储每一个桶中的元素,然后将桶中的元素依次取出进行下一次的排序,由于这种操作方式是先进先出的顺序,满足队列这种数据结构,因此,可以使用对列来作为桶进行数据测存储。首先创建一个队列类,来实现队列的各种操作,队列的各种操作详情见顺序队列-JAVA语言实现一文。public c
作者:木洛前言IM 全称是“Instant Messaging”,中文名是即时通讯。在这个高度信息化的移动互联网时代,生活中 IM 类产品已经成为必备品,比较有名的如钉钉、微信、QQ 等以 IM 为核心功能的产品。当然目前微信已经成长为一个生态型产品,但其核心功能还是 IM。还有一些非以 IM 系统为核心的应用,最典型的如一些在线游戏、社交应用,IM 也是其重要的功能模块。可以说,带有社交属性的应
作为一个rtmp服务器,基本的验证机制是需要有的,srs很巧妙的使用了http callback的方式来实现验证机制,我测试的情况如下:1)首先,在服务器上,使用了如下配置:listen 1935; max_connections 1000; vhost __defaultVhost__ { gop_cache off; queue_l
转载 29天前
399阅读
 一、SSH介绍   什么是SSH?   传统的网络服务程序,如:ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据, 别有用心的人非常容易就可以截获这些口令和数据。而且,这些服务程序的安全验证方式也是有其弱点的, 就是很容易受到“中间人”(man-in-the-middle)这种方式的攻击。所谓“中间
Servlet开发详解一、Servlet简介  Servlet是sun公司提供的一门用于开发动态web资源的技术。  Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个步骤:  1、编写一个Java类,实现servlet接口。  2、把开发好的Java类部署到web服务器中。  按照一种约定俗成的称呼习惯,
转载 6月前
69阅读
  • 1
  • 2
  • 3
  • 4
  • 5