自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

忽然七日

------自强不息,厚德载物

  • 博客(64)
  • 资源 (18)
  • 收藏
  • 关注

原创 用Java NIO模拟HTTPS

R1:随机数1 R2:随机数2 R3:随机数3 publicKey:公钥 privateKey:私钥。服务端 server hello + R2 + publicKey(验证证书,证书包含公钥)客户端 R3 + R1 + R2 -> 生成会话密钥。服务端 R3 + R1 + R2 -> 生成会话密钥。客户端与服务端使用相同的对称密钥算法生成会话密钥。客户端 client hello + R1。正式通信 对称密钥(会话密钥)加密数据。客户端 R3 publicKey加密。服务端 privateKey解密。

2025-04-12 23:29:23 296

原创 用Java写一个MVCC例子

4:如果被访问数据的DB_TRX_ID在readview的min_trx_id和max_trx_id之间,说明当前事务在访问其他事务修改过的记录,版本不可见,3:如果被访问数据的DB_TRX_ID大于readview的max_trx_id,说明当前事务在访问将来要执行的事务修改过的记录,版本不可见。2:如果被访问数据的DB_TRX_ID小于readview的min_trx_id,说明当前事务在访问已经提交的事务修改过的记录,版本可见。min_trx_id:当前活跃事务中最小的事务id。

2025-04-10 18:41:26 645

原创 vue3响应式原理

案例二:发布订阅、观察者模式。

2025-04-09 10:57:26 178

原创 系统调用、IO模型与Java线程状态

用户进程发起IO请求后,会注册一个或多个文件描述符的IO事件,然后等待这些事件的发生,当有事件发生时,内核会通知用户进程,用户进程可以继续进行IO操作。用户进程发起IO请求后,会向操作系统注册一个信号处理函数,当数据准备好时,内核会发送一个信号给用户进程,用户进程可以继续进行IO操作。用户进程发起IO请求后,如果数据未准备好,进程不会阻塞,而是立即返回,并设置一个标志位,表示数据未准备好。用户进程发起IO请求后,会立即返回,内核会在数据准备好后,自动完成IO操作,并通知用户进程。

2025-04-01 14:06:29 753

原创 三招叫你秒懂JavaScript中得this

/ 箭头函数内的this并不是根据setTimeout调用时的执行环境决定的,而是在函数定义时确定,继承自定义时所在的外层作用域的this。而在静态作用域的语言(如JS)中,这段代码将打印出`"global"`,因为`x`的解析是基于其在源代码中的位置,而`g()`函数从全局范围内解析`x`。如果这段代码运行在一个动态作用域的语言环境中,`g()`函数中的`x`将会引用`f()`函数内的`x`,即打印出`"local"`。作用域链是一个链表结构,每个作用域指向其外部作用域,直到全局作用域。

2025-03-24 16:05:20 335

原创 软件设计原则之迪米特法则

实现功能,从而降低系统的耦合度。它强调“最少知识”,让每个对象专注于自己的职责,是构建模块化、易维护系统的关键原则。在实践中,需结合场景灵活运用,避免过度设计,找到解耦与简洁的平衡点。(如自身的成员变量、方法参数、方法内部创建的对象),避免通过复杂的调用链访问间接对象。迪米特法则通过限制对象间的直接交互,强制开发者通过。一个对象应当尽可能少地了解其他对象,,提高系统的灵活性和可维护性。假设有一个学校管理系统,包含。

2025-03-23 10:52:21 915

原创 函数式编程

函子、Monad、柯里化、引用透明性。

2025-03-22 15:59:35 945

原创 软件设计原则之里氏替换原则

里氏替换原则(Liskov Substitution Principle, LSP)是 SOLID 原则之一,它指出:子类型必须能够替换它们的基类型。换句话说,在使用基类的地方应当可以透明地使用派生类的对象而不会影响程序的正确性。违反里氏替换原则的一个典型反例是正方形(Square)和矩形(Rectangle)的关系。在几何学中,正方形是一种特殊的矩形,其中所有边等长。然而,如果我们在面向对象编程中直接继承关系来实现这一点,可能会违反 LSP。

2025-03-21 19:39:41 652

原创 Java遍历魔法

i = null;// 查看结果数组中值并未改变,由此可以推断test1()结论正确即:// 增强for(for-each)的局部变量是数组或集合中数据的副本System.out.printf("增强for(for-each) 自定义数据类型:%s\n", Arrays.toString(ps));

2025-03-20 19:09:51 203

原创 JSR269注解处理器

在resource文件夹下创建目录META-INF\services,在其中创建文件javax.annotation.processing.Processor。其中的内容注解处理类的全限定名:org.pp.lombok.BuilderProcessor。

2025-03-17 10:51:29 192

原创 改变世界的12个算法

改变世界的12个算法,以后再完善

2025-03-16 17:42:59 124

原创 垃圾收集算法

Java 最新垃圾回收算法以 ‌低延迟‌(ZGC/Shenandoah)和 ‌自适应分代管理‌(分代式 ZGC)为核心,结合硬件特性实现 TB 级堆内存的高效回收。G1 持续优化混合回收策略,而 Epsilon 为特殊场景提供零开销方案‌。开发者可根据应用需求(延迟、吞吐量、堆大小)选择合适的回收器。

2025-03-15 17:26:00 349

原创 值传递与引用传递

Java、JavaScript、 函数实参、形参、值传递、引用传递

2025-03-14 18:53:40 199

原创 Web 开发的“三件套”

跨平台开发:Electron(桌面应用)、React Native(移动端)等。前端开发:操作 DOM、处理用户事件、实现动画等。后端开发:通过 Node.js 构建服务器端应用。JavaScript:实现动态行为和复杂逻辑。JavaScript应用场景。HTML:定义内容结构。CSS:控制样式布局。

2025-03-13 22:48:06 78

原创 DevOps工具链

参考:https://cloud.tencent.com/developer/article/2322080。2、提供了一个标准化的Java项目结构,我们可以通过Maven快速创建一个标准的Java项目.1、对Jar包进行统一的管理,包括快速引入Jar包,以及对使用的 Jar包进行统一的版本控制。自动化构建工具 Jenkins、GitLab CI/CD、Travis CI。Docker:容器(虚拟化、进程隔离)、镜像(软件)、仓库。Jenkins:持续集成、持续交付、自动部署。K8S:容器编排工具。

2025-03-13 17:11:32 366

原创 人工智能概念

算法:线性回归、逻辑回归、支持向量机、决策树、随机森林、K近邻算法。人工智能应用:自然语言处理、图像识别与生成、语音识别、政务与企业服务...算法:多层感知器、卷积神经网络、循环神经网络、长短期记忆网络。深度学习是实现这一目标的工具,模仿人脑,使用多层神经网络进行学习。机器学习提供框架,使得系统可以从数据中学习。大模型指参数量巨大的深度学习模型。

2025-03-13 17:05:06 73

原创 mysql经典试题共34题

mysql试题,共34题,动力节点试题练习

2025-03-09 21:19:06 964

原创 Java实现二叉树

Java实现一颗二叉树 实现了插入、删除、是否包含、将二叉树转化为主链、将二叉树平衡化、将二叉树写入文件、从文件读取一颗二叉树

2022-12-18 18:53:04 291

原创 zookeeper与kafka集群配置

linux下zookeeper集群、kafka集群启停、服务自启动、ssh免密登录、虚拟机ip地址配置

2022-12-17 11:18:33 373

原创 Linux安装mysql8

linux下mysql8安装

2022-12-15 07:40:24 295

原创 面向对象设计模式-观察者模式

Java设计模式 可复用的面向对象设计软件的基础,观察者设计模式

2022-12-10 14:19:36 110

原创 面向对象设计模式-监听器模式

Java设计模式 可复用面向对象软件的基础 监听器模式

2022-12-09 09:02:41 196

原创 单链表头尾指针

Java中的单链表单链表具有头指针、尾指针、链表大小属性实现了头插入、尾插入、头删除、尾删除等操作

2022-12-06 10:05:25 431

原创 为什么thread1停止执行了???

【代码】为什么thread1停止执行了???

2022-11-20 09:05:06 561

原创 概览

基础篇面向对象设计 设计模式 异常体系、断言、日志和调试反射、泛型、注解和动态代理字符串、数值、日期时间api 数据结构 函数式编程IO/NIO 、序列化和RMI高级应用篇图形编程java与xml、数据库编程网络编程并发编程位运算、类加载和Java安全JNIjava/jvm性能优化规范篇JCP JSR Java语言规范 JVM虚拟机规范JNDIJDBC J...

2020-02-16 20:45:53 136

转载 treegrid级联勾选或深度级联勾选扩展:两种扩展

​treegrid没有级联勾选,要用怎么办?自己扩展呗~ 先明确两个概念:1、级联勾选:不包括未加载的子节点2、深度级联勾选:包括未加载的子节点 两种思路:1、扩展个新方法cascadeCheck,当需要进行级联勾选时,调用该方法进行级联勾选或不勾选。2、扩展onLoadSuccess方法,添加一个自定义属性:cascadeCheck(级联)或deepCas

2012-04-09 17:22:52 3260

原创 Servlet简介

开发中常用MVC模式,MVC对应的各个组件如下:M:model,模型,对应JavaBean(处理用户请求)。V:view,视图,对应Jsp(显示页面,如显示表格、菜单树等)。C:controller,控制器,对应Servlet(只负责请求转发)。此前,Servlet也是同时充当视图层、业务逻辑层以及持久层的动态网页编程技术。Jsp是Servlet的一种简化,使用Jsp只需要完成程序

2012-04-04 19:19:29 599

原创 Cookie与session

Cookie常用于网站记录客户的某些信息。一旦用户下次登录,网站可以获取到客户的相关信息,根据这些信息,网站可以对客户提供更友好的服务。Cookie会一直存放在客户端机器上,直至超出Cookie的生命期限。JSP使用response内置对象增加Cookie,它提供如如下方法:增加Cookie的步骤:(1).创建Cookie实例(2).设置Cookie的最大保存期限(3).向

2012-04-04 19:18:51 450

转载 struts2核心工作流程与原理

1. Struts2架构图 这是Struts2官方站点提供的Struts 2 的整体结构。  2. Struts2部分类介绍 这部分从Struts2参考文档中翻译就可以了。 ActionMapper         ActionMapper其实是HttpServletRequest和Action调用请求的一个映射,它屏蔽了Action对于Request等java S

2012-03-20 20:38:49 783

转载 jRebel

想必大家对项目开发中,调试类文件修改时,容器自动重新加载漫长的过程早已厌倦,我今天闲来无事,于是,想试试javaRebel  (jRebel)这个东西,javaRebel(jRebel)现在是收费软件,不过在网上可以下载到确解版的。在网上查了一下相关资料,可以实现修改类文件后,不用容器重新加载的功能,高兴之余顺手一试高下,先是下载了MyEclipse7.0(包括了eclipse)安装之,想在一个全

2012-03-20 18:25:57 10587

转载 oracle生成树

下面我们以PF_MENU这张表当作我们的数据表。 1、首先,我们查得整个表的数据: //CDID:菜单ID; FCDID:父菜单ID;CDM:菜单名称。 FCDID=0是最高级菜单;CDM=- 是 分割线SELECT CDID,FCDID,CDM FROM PF_MENU 得到的数据,如下(以下列举部分数据,不是完整的):CDID FCDID CDM30

2012-03-20 13:23:49 1313

转载 文件锁

读写相关的问题是永远存在的,文件锁就是为了解决这个问题而做的,其实它就是个简单的信号量。读写相关性指由于同时读写文件造成文件数据的随机性冲突。为了明确知道在何时通过何种操作对更改或是读取了文件中的那些数据,有必要对操作进行序列化,原子化,同步化,使用户能确知在何时文件中有什么数据。文件锁就是其中一个工具。文件系统一般有两种锁,共享锁及排它锁,也可被称为读锁和写锁。文件系统锁的特点:

2012-03-19 09:52:19 560

转载 农夫养牛

package excise;import java.util.ArrayList;import java.util.List;/** * 问题描述: * * 一头母牛在3—10岁的时候每年可以生一头小牛,生公牛和母牛的比率是50%, * 在牛12岁的时候就送入屠宰场买了。现在有一个农夫有1头1岁大的母牛, * 在母牛3岁的时候就送到附近的农场去配种,请问40年后这

2012-03-17 12:27:59 651

原创 关于NetBeans的界面风格转换详细操作

http://wiki.netbeans.org/Main_Pagehttp://www.blogjava.net/daisheng/articles/245909.htmlhttp://be-evil.org/netbeans-color-theme-collection.html

2012-03-15 13:55:46 1610

转载 历届奥斯卡获奖影片(1927—2009)

2009(81届)  获奖  《贫民窟的百万富翁》(Slumdog Millionaire),福克斯 提名  《贫民窟的百万富翁》(Slumdog Millionaire),福克斯 《本杰明·巴顿奇事》(The Curious Case of Benjamin Button),派拉蒙  2008(80届)  获奖  《老无所依》No Country fo

2012-03-14 19:20:21 2301

转载 各种字符编码详解(ascii,utf-8,unicode,gbk,gb2312,iso8859-1等)

1. ASCII 我们需要了解的最早编码是ASCII码。它用7个二进制位来表示,由于那个时期生产的大多数计算机使用8位大小的字节,因此用户不仅可以存放所有可能的ASCII字符,而且有整整一位空余下来。如果你技艺高超,可以将该位用做自己离奇的目的:WordStar中那个发暗的灯泡实际上设置这个高位,以指示一个单词中的最后一个字母,同时这也宣示了WordStar只能用于英语文本。  由于字节有

2012-03-10 22:41:40 859

原创 一些网址导航

版本控制Github https://github.com/progit/progit/tree/master/zh数据库MySql http://doc.mysql.cn/Java图形 http://www.cnblogs.com/cocowool/archive/2010/08/16/1800954.html骑士的卓越誓言blog  http://xokni

2012-03-07 22:29:04 1429

转载 疯人院之大家别去美国,一个愚蠢而落后的国度

原文地址:大家别去美国,一个愚蠢而落后的国度【转载】作者:金鑫大家别去美国,一个愚蠢而落后的国度    来美国已多时了。我后悔当初的选择。一直都被西方媒体所蒙蔽欺骗,让我错误地以为美国是一个现代化国家。怀着学习美国先进科技报效祖国的豪情,我翻山越岭来到了这个“强大”的国度。可是结果让我大失所望!   (1) 美国真的是个还未经开发的大农村.在中学时,老师们就教过

2012-03-05 13:17:12 6354

原创 树1

树节点类:package org.zp.datastruct;public class TreeNode { public Object data; public TreeNode leftChild; public TreeNode rightSib; public TreeNode () {} public TreeNode (Object obj) {}

2012-03-03 23:30:44 395

原创 疯人院之语言、编码、计算机

在数据结构总结1那篇文章中我已经提到了数据是信息的载体,语言是信息交流的工具,人类是个独立又相互联系的矛盾体。现在就来简单说说人类是如何进行相互联系的。毫无疑问至今为止人类交流的方式是丰富多彩、千奇百怪的。比如最基本的交流方式就是口语即说话,也就是规定一系列的符号,然后发送者通过声波(声带振动)的形式发送出去,接受者通过耳膜(共振)将接受到的声波信息转换为电信号通过神经传导至大脑,大脑经过分析

2012-03-03 11:25:47 1094

计算机科学技术.pdf

计算机科学与技术要学的课程

2020-03-25

知识图谱标准化白皮书2019.pdf

知识图谱标准化白皮书2019.

2020-03-10

CPU结构_8086指令系统_汇编.pdf

CPU结构--运算单元和总线单元 8086指令系统---intel指令集 汇编--x86汇编语言,只总结了一点点大概,不包含伪指令 3个知识点总结合集

2020-02-12

2019-20(CST)剑桥大学计算机科学与技术教学大纲.pdf

2019-20(CST)剑桥大学计算机科学与技术教学大纲.pdf 看看计算机排名第一的大学在学啥,在研究啥

2020-01-27

从C和C++到Java.pdf

整理了C语言 C++语言 到Java的一些知识点包括C语言声明、GCC、gdb C++面向过程与面向对象知识点 以及Java JVM线程知识

2020-01-27

java网络编程

java网络编程包括socket tcp/udp io/nio讲解 http协议 jdbc rmi java的安全框架等知识

2019-03-11

java ssh框架

hibernate封装底层数据库操作,提供持久化数据服务 spring管理hibernate--数据源,事务 dao层提供数据库访问接口;service层(事务控制)提供业务接口 struts提供视图转发控制器、视图模板 下节: 使用SpringMVC替换、hibernate二级缓存、hibernate乐观锁与并发 slf4j + log4j + logback 日志系统 p6spy+sqlprofile sql监控调优 jUnit测试

2015-04-28

bookmarks-2012-04-06.json

bookmarks-2012-04-06.json

2012-04-06

netbeans_themes2

netbeans_themes2

2012-03-15

netbeans_themes

netbeans_themes

2012-03-15

bookmarks-2012-03-12.json

bookmarks-2012-03-12.json

2012-03-12

精通版本管理系统之WinCVS

精通版本管理系统之WinCVS,用过才知道在怎么样,学会比较

2012-03-08

计算机网络

谢希仁 计算机网络课件,讲的很好,学习参考的好书

2012-03-05

Linux基本命令

Linux 命令

2012-02-11

Tomcat数据源

MLDN课程--tomcat数据源

2012-02-04

JSON深度详解及org.json库详细剖析

JSON深度详解及org.json库详细剖析

2012-02-02

Google之Gson库深度剖析及使用范本

毫无疑问这是初学者必要要看的,毫无疑问这是初学者必要要看的

2012-02-02

免费jsp空间使用攻略

免费jsp空间功能说明:提供至少10Mjsp空间和5Mb mysql 空间 ,支持ftp管理.

2011-05-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除