- 探究 Java SPI 原理与实战_打造高扩展性的应用架构
随风九天
javajava架构开发语言JavaSPI
1.引言1.1为什么需要模块化与扩展性设计在大型软件系统中,良好的架构设计是至关重要的。模块化和可扩展性设计使得我们能够:将功能划分为独立的模块;在不修改原有代码的前提下引入新功能;实现松耦合、高内聚的设计目标。Java提供了多种机制来支持这种设计,其中SPI(ServiceProviderInterface)是一种轻量级的服务发现机制,广泛用于构建插件化系统。1.2Java中的常见扩展机制概述扩
- 网络安全协议之SSL协议
北邮23级网安
sslweb安全网络
SSL协议简介什么是SSL协议?SSL协议是一种安全套接层协议,它可以在TCP协议的基础上提供数据的加密、身份验证和完整性保护。SSL协议主要由两部分组成:握手协议和记录协议。握手协议负责建立安全连接,交换公钥和证书,商定对称密钥等;记录协议负责使用对称密钥对数据进行加密和解密,以及检测数据的完整性。SSL协议常用于Web浏览器和Web服务器之间的通信,例如HTTPS。(HTTPS是一种安全的HT
- 你懂安全优化SSL嘛?
巴依老爷coder
安全安全ssl网络协议
一文带你了解SSL全部内容CIA?SSL概述加密算法对比数字签名与证书RSA加密算法代码实操1.更完善的错误处理2.证书验证3.资源管理改进常见的面试问题CIA?在信息安全领域,CIA(保密性、完整性、可用性)是核心原则,各有其实现方法与面临的威胁:保密性:实现方法:运用加密技术,对称加密(如AES)适合大量数据快速加密,非对称加密(如RSA)用于密钥交换与数字签名;借助访问控制手段,像基于角色的
- OpenSSL 与 OpenSSH 离线升级至最新版本 9.9p2
OpenSSL与OpenSSH离线升级至最新版本9.9p2一、前言在网络安全日益重要的今天,保持系统中的OpenSSL和OpenSSH为最新版本是至关重要的。然而,在一些内网环境中,由于网络限制,无法直接从互联网上下载最新的软件包进行升级。本文将详细介绍如何在离线环境下将OpenSSL和OpenSSH升级到最新版本9.9p2。二、准备工作2.1下载所需软件包https://wwyq.lanzouo
- MySQL(118)如何使用SSL进行加密连接?
使用SSL进行加密连接可以有效地保护数据在传输过程中的安全性,防止数据被窃取或篡改。下面我们将详细介绍如何在Java应用中使用SSL与MySQL数据库建立加密连接。一.准备工作在开始之前,请确保你已经安装了MySQL,并且有Java开发环境(如JDK和Maven)。二.生成SSL证书生成自签名证书:你可以使用OpenSSL工具来生成自签名证书。以下是生成CA证书、服务器证书和客户端证书的步骤。#生
- Story2:自动化免密登录CSDN和百度+Spring AI文档,并进行页签切换
开发环境搭建以及前期回顾请移步至CSDN自动写博客系列(总)一、整体方案构思,文字描述:1、CSDN免密登录,参考Story1:自动化_CSDN免密登录2、百度免密登录,原理同CSDN免密登录,但是这里注意一下:(1)百度免密登录扫码获取cookie用的是百度APP,请下载好百度APP进行扫描(2)在实现百度免密登录的时候会碰到一个问题,当添加百度cookie的时候,原CSDN的cookie是已经
- Spring for kafka系列——1、快速浏览
虾条_花吹雪
SpringforApacheKafkaSpringkafka
先决条件:您必须安装并运行ApacheKafka。然后,您必须将SpringforApacheKafka(SpringKafka)JAR及其所有依赖项放在类路径上。最简单的方法是在构建工具中声明依赖关系。如果您没有使用SpringBoot,请在项目中将Springkafka-jar声明为依赖项。org.springframework.kafkaspring-kafka3.3.7使用SpringBo
- 大数据技术之Flink
第1章Flink概述1.1Flink是什么1.2Flink特点1.3FlinkvsSparkStreaming表Flink和Streaming对比FlinkStreaming计算模型流计算微批处理时间语义事件时间、处理时间处理时间窗口多、灵活少、不灵活(窗口必须是批次的整数倍)状态有没有流式SQL有没有1.4Flink的应用场景1.5Flink分层API第2章Flink快速上手2.1创建项目在准备
- 2025主流AI大模型终极指南:横向对比+实战测评+官方注册教程
AI新视界
AI工具全指南:从入门到精通解锁高效生产力人工智能
《2025主流AI大模型终极指南:横向对比+实战测评+官方注册教程》在人工智能技术飞速发展的今天,大型语言模型(LLM)已成为推动数字化转型的核心引擎。作为CSDN资深AI技术专家,我将通过本文为您全面剖析2025年主流大模型的技术特点、应用场景和性能差异,并提供详细的官方注册和使用指南,帮助您快速掌握这些强大的AI工具。一、2025年主流大模型全景概览1.1大模型技术发展现状2024-2025年
- Postgresql中不同数据类型的长度限制
行星008
数据库postgresqlsql运维
目录一、字符类型(CharacterTypes)二、二进制类型(BinaryTypes)三、数值类型(NumericTypes)四、其他类型五、全局限制:单行数据总大小示例对比表注意事项验证命令在PostgreSQL中,不同数据类型的最大长度限制各异。以下是关键类型的详细说明:一、字符类型(CharacterTypes)VARCHAR(n)/CHAR(n)最大长度:n最大可设置为10485760(
- paimon.disk包:磁盘处理
FileIOChannel接口FileIOChannel是Paimon内部用于磁盘I/O操作的一个核心抽象,尤其在需要将大量数据溢出(spill)到本地磁盘的场景(例如外部排序)中扮演着关键角色。它代表了对一个底层文件的I/O通道,并提供了一套管理其生命周期(创建、读写、关闭、删除)的标准化方法。下面我们分部分来解析这个接口。这个接口定义了一个I/O通道的基本行为。//...existingcod
- MySQL 学习 之 你还在用 TIMESTAMP 吗?
zxguan
mysql学习数据库
目录1.弊端1.1.取值范围1.2.时区依赖1.3.隐式转换2.区别3.解决1.弊端1.1.取值范围TIMESTAMP的取值范围为1970-01-0100:00:01UTC到2038-01-1903:14:07UTC,超出范围的数据会被强制归零或触发异常。具体表现为在基金债券等业务中,到期日可能是一个比较晚的未来的时间,很可能就会出现超出TIMESTAMP范围的时间。现在已经2025年了,系统崩
- PostgreSQL-XL之 序列(Sequence)
行星008
数据库postgresql数据库
目录序列的定义和作用PostgreSQL-XL中序列的特殊性序列的使用方法1.创建序列2.在分布式表中使用序列3.手动操作序列值4.查看序列与表的关联关系关键注意事项典型使用场景故障排查技巧在PostgreSQL-XL中,序列(Sequence)是一种特殊的数据库对象,用于生成唯一的数值序列。作为分布式数据库,PostgreSQL-XL中的序列需要特殊处理以保证全局唯一性。序列的定义和作用定义:序
- 基于python+flask框架的某图书馆书籍推荐系统的设计与实现(开题+程序+论文) 计算机毕设
zhihao502
pythonflask课程设计
本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在数字化时代,图书馆作为知识传播与积累的重要场所,面临着如何更有效地服务于广大读者的挑战。随着信息量的爆炸式增长,读者在浩瀚的书海中寻找符合个人兴趣和需求的书籍变得日益困难。传统的图书检索方式已难以满足读者快速、精准获取推荐书籍的需求。因此,开发一套智能化的图书馆
- 如何在YashanDB中实现灵活的数据建模?
数据库
随着信息技术的不断发展,数据量的快速增长使得数据建模成为数据库设计中的一个核心问题。尤其是在面对复杂的业务需求时,合理的数据模型能够有效支撑数据的存储、查询和管理。在这样的背景下,如何在YashanDB中实现灵活的数据建模,成为开发者和数据库管理员亟需解决的技术挑战。核心技术点分析支持多种存储结构YashanDB提供了多种存储结构的支持,包括行存(HEAP)、B树存储(BTREE)以及列存储(MC
- 如何制定YashanDB数据库的维护与管理计划
数据库
数据库在现代应用程序中扮演着至关重要的角色。然而,随着数据量的不断增加和复杂性的加剧,数据库的性能瓶颈、数据一致性问题、存储的高可用性等正成为技术管理者面临的共同挑战。为了确保数据库的高效运营,制定一份全面的数据库维护与管理计划是必要的。本文旨在帮助技术团队理清YashanDB的维护与管理步骤,为提升数据库的可用性和性能提供指导,目标读者包括DBA、系统管理员和IT管理人员。了解YashanDB架
- android源码中添加GPIO服务供上层调用
mmoyula
androidandroidframework
android源码中添加GPIO服务供上层调用指定make时需要编译进system中的服务添加源码编译添加api更新类与字段(此步骤可以通过makeupdate-api命令更新)注册服务Context中添加字段添加源码文件启动服务编写Service源代码指定make时需要编译进system中的服务以rk源码为例,在deveice/rockchip/common/device.mk中添加服务PROD
- 【Python】深入解析 Hydra 库
宅男很神经
python开发语言
第一章:混沌的终结:在配置泥潭中挣扎与Hydra的曙光在任何一个软件项目的生命周期中,无论是小型的个人脚本,还是大型的企业级分布式系统,我们都无法回避一个核心问题:如何管理配置。配置,是连接我们静态的代码逻辑与动态的运行环境之间的桥梁。它决定了我们的程序连接哪个数据库、使用哪个API密钥、以多大的批次处理数据、模型的学习率应该是多少、日志应该输出到哪里、以何种级别输出…可以说,配置定义了程序的行为
- 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级的理解
一:缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间(例如:我们设置缓存时采用了相同的过期时间,在同一时刻出现大面积的缓存过期),所有原本应该访问缓存的请求都去查询数据库了,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。解决办法:大多数系统设计者考虑用加锁(最多的解决方案)或者队列的方式保证来保证不会有大量的线程对数据库一次性进
- 深入解析 SAE 训练输出文件:结构与意义
阿正的梦工坊
LLM语言模型人工智能自然语言处理
深入解析SAE训练输出文件:结构与意义在利用SAELens框架进行稀疏自编码器(SparseAutoencoder,SAE)训练时,训练完成后会生成一组关键文件,这些文件记录了模型的权重、状态以及相关信息。本文将详细解析路径SAELens/tutorials/checkpoints/n78ngo5e/final_122880000下生成的四个文件:activations_store_state.s
- “解锁自动化新可能:使用Robocorp构建Python机器人“
sjufgwgfhoia
自动化python服务器
在这个快速变化的技术时代,自动化已经成为提高生产力和效率的关键驱动力。Robocorp提供了一种强大且灵活的平台,帮助开发者构建和运行Python机器人,以满足各类业务需求。引言在本文中,我们将深入探讨如何使用Robocorp构建和操作可以运行在任何地方且具备任意规模的Python工作器。本文旨在帮助你快速上手Robocorp平台的安装和设置,并分享如何在实践中应用它。主要内容1.Robocorp
- Conda 虚拟环境与 venv、virtualenv、pipenv 的对比
drebander
condavirtualenvpython
1.引言在Python开发中,虚拟环境是解决不同项目依赖冲突的关键工具。Python提供了多种虚拟环境管理工具,包括Conda、venv、virtualenv和pipenv。每种工具都有其独特的特点和适用场景。本篇博客将简要对比这些工具,帮助你选择最适合的虚拟环境管理工具。2.Conda虚拟环境2.1Conda概述Conda是Anaconda提供的跨平台、跨语言的包和环境管理工具。除了管理Pyth
- 量化开发(系列第3篇): C++在高性能量化交易中的核心应用与技术栈深度解析
Natsume1710
c++开发语言性能优化python
本文为《量化开发》系列第3篇参考GitHub项目:Awesome-QuantDev-Learn前言在量化交易领域,Python以其开发效率高、生态系统丰富等优势,成为策略研究、数据分析及中低频交易的首选语言。在本系列前两篇文章中,我们详细探讨了Python在量化入门与策略回测中的实践。然而,当进入对延迟要求极为严苛的高频交易(High-FrequencyTrading,HFT)领域时,Python
- 量化策略进阶:事件驱动与另类数据挖掘实战
前面的章节,我们已经详细探讨了量化系统的基础架构:从数据的获取与管理(数据层),到策略的研发与验证(回测层),再到指令的高速执行(交易执行层),以及确保资金安全的防线(风控与监控运维层),我们共同构建了一套完整的量化交易体系。今天,我们将深入探讨量化策略的更高维度:事件驱动型策略和另类数据挖掘。这不仅仅是技术栈的扩展,更是对市场洞察力和信息处理能力的全面提升,旨在帮助您的策略在传统量价数据之外,捕
- 什么是bigkey
BigKey(大键)是Redis中的一种潜在性能问题,通常指的是占用大量内存或者元素数量过多的键。它可能导致Redis性能下降,甚至阻塞其他请求,因此在使用Redis时需要特别关注。一、什么是BigKey?在Redis中,BigKey并不是指某个特定的Redis数据类型,而是指那些在内存中占用较多空间的键。具体来说,BigKey是指以下两种情况:一个键的数据量非常大:例如,一个非常大的字符串(几M
- 什么是TCP的三次握手
秋恬意
tcp/ip网络网络协议
TCP(传输控制协议)的三次握手是一个用于在两个网络通信的计算机之间建立连接的过程。这个过程确保了双方都有能力接收和发送数据,并且初始化双方的序列号。以下是三次握手的详细步骤:第一次握手(SYN):客户端发送一个带有SYN(同步序列编号)标志的TCP段到服务器,这个SYN报文段包含一个初始序列号(ISN)。客户端进入SYN-SENT状态,等待服务器的确认。第二次握手(SYN-ACK):服务器收到客
- MVVM和MVC区别
秋恬意
mvcvue
MVVM(Model-View-ViewModel)和MVC(Model-View-Controller)是两种常见的软件架构模式,它们在处理用户界面与业务逻辑之间的交互时有一些不同的设计理念和实现方式。下面我将详细说明这两种模式的区别。1.架构概述MVC(Model-View-Controller)Model:表示应用的核心数据和业务逻辑,通常是与数据库交互的部分。View:用户界面,负责显示数
- Java NIO 核心知识总结
NIO简介在传统的JavaI/O模型(BIO)中,I/O操作是以阻塞的方式进行的。也就是说,当一个线程执行一个I/O操作时,它会被阻塞直到操作完成。这种阻塞模型在处理多个并发连接时可能会导致性能瓶颈,因为需要为每个连接创建一个线程,而线程的创建和切换都是有开销的。为了解决这个问题,在Java1.4版本引入了一种新的I/O模型—NIO(NewIO,也称为Non-blockingIO)。NIO弥补了同
- 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级
1.缓存雪崩(CacheAvalanche)定义:缓存雪崩是指大量缓存中的数据在同一时间过期,导致大量请求同时访问数据库,造成数据库压力骤增,甚至可能导致数据库崩溃。原因:多个缓存的key在同一时间过期;当这些key不再命中缓存时,所有请求都会同时访问数据库。应对策略:设置过期时间加随机值:避免缓存的key在相同时间过期。比如,如果某个key设置过期时间为1小时,可以随机设置在59分钟到61分钟之
- Windows环境下串口通信开发实战工具包
八大山狗
本文还有配套的精品资源,点击获取简介:在Windows操作系统中,串口是一种用于计算机与外部设备通信的接口,尤其适用于旧式硬件和特定嵌入式系统。串口通信简单且实用,适合点对点或多点数据传输。本文介绍了Windows环境下如何使用串口开发工具进行调试和开发。提供了包括串口模拟工具和串口命令收发工具在内的实用程序,这些工具可以帮助开发者无需实际连接硬件即可测试和验证串口通信协议,提高开发和调试效率。同
- scala的option和some
矮蛋蛋
编程scala
原文地址:
http://blog.sina.com.cn/s/blog_68af3f090100qkt8.html
对于学习 Scala 的 Java™ 开发人员来说,对象是一个比较自然、简单的入口点。在 本系列 前几期文章中,我介绍了 Scala 中一些面向对象的编程方法,这些方法实际上与 Java 编程的区别不是很大。我还向您展示了 Scala 如何重新应用传统的面向对象概念,找到其缺点
- NullPointerException
Cb123456
androidBaseAdapter
java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImportantForAccessibility()' on a null object reference
出现以上异常.然后就在baidu上
- PHP使用文件和目录
天子之骄
php文件和目录读取和写入php验证文件php锁定文件
PHP使用文件和目录
1.使用include()包含文件
(1):使用include()从一个被包含文档返回一个值
(2):在控制结构中使用include()
include_once()函数需要一个包含文件的路径,此外,第一次调用它的情况和include()一样,如果在脚本执行中再次对同一个文件调用,那么这个文件不会再次包含。
在php.ini文件中设置
- SQL SELECT DISTINCT 语句
何必如此
sql
SELECT DISTINCT 语句用于返回唯一不同的值。
SQL SELECT DISTINCT 语句
在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。
DISTINCT 关键词用于返回唯一不同的值。
SQL SELECT DISTINCT 语法
SELECT DISTINCT column_name,column_name
F
- java冒泡排序
3213213333332132
java冒泡排序
package com.algorithm;
/**
* @Description 冒泡
* @author FuJianyong
* 2015-1-22上午09:58:39
*/
public class MaoPao {
public static void main(String[] args) {
int[] mao = {17,50,26,18,9,10
- struts2.18 +json,struts2-json-plugin-2.1.8.1.jar配置及问题!
7454103
DAOspringAjaxjsonqq
struts2.18 出来有段时间了! (貌似是 稳定版)
闲时研究下下! 貌似 sruts2 搭配 json 做 ajax 很吃香!
实践了下下! 不当之处请绕过! 呵呵
网上一大堆 struts2+json 不过大多的json 插件 都是 jsonplugin.34.jar
strut
- struts2 数据标签说明
darkranger
jspbeanstrutsservletScheme
数据标签主要用于提供各种数据访问相关的功能,包括显示一个Action里的属性,以及生成国际化输出等功能
数据标签主要包括:
action :该标签用于在JSP页面中直接调用一个Action,通过指定executeResult参数,还可将该Action的处理结果包含到本页面来。
bean :该标签用于创建一个javabean实例。如果指定了id属性,则可以将创建的javabean实例放入Sta
- 链表.简单的链表节点构建
aijuans
编程技巧
/*编程环境WIN-TC*/ #include "stdio.h" #include "conio.h"
#define NODE(name, key_word, help) \ Node name[1]={{NULL, NULL, NULL, key_word, help}}
typedef struct node { &nbs
- tomcat下jndi的三种配置方式
avords
tomcat
jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。命名服务将名称和对象联系起来,使得我们可以用名称
访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。
tomcat配置
- 关于敏捷的一些想法
houxinyou
敏捷
从网上看到这样一句话:“敏捷开发的最重要目标就是:满足用户多变的需求,说白了就是最大程度的让客户满意。”
感觉表达的不太清楚。
感觉容易被人误解的地方主要在“用户多变的需求”上。
第一种多变,实际上就是没有从根本上了解了用户的需求。用户的需求实际是稳定的,只是比较多,也比较混乱,用户一般只能了解自己的那一小部分,所以没有用户能清楚的表达出整体需求。而由于各种条件的,用户表达自己那一部分时也有
- 富养还是穷养,决定孩子的一生
bijian1013
教育人生
是什么决定孩子未来物质能否丰盛?为什么说寒门很难出贵子,三代才能出贵族?真的是父母必须有钱,才能大概率保证孩子未来富有吗?-----作者:@李雪爱与自由
事实并非由物质决定,而是由心灵决定。一朋友富有而且修养气质很好,兄弟姐妹也都如此。她的童年时代,物质上大家都很贫乏,但妈妈总是保持生活中的美感,时不时给孩子们带回一些美好小玩意,从来不对孩子传递生活艰辛、金钱来之不易、要懂得珍惜
- oracle 日期时间格式转化
征客丶
oracle
oracle 系统时间有 SYSDATE 与 SYSTIMESTAMP;
SYSDATE:不支持毫秒,取的是系统时间;
SYSTIMESTAMP:支持毫秒,日期,时间是给时区转换的,秒和毫秒是取的系统的。
日期转字符窜:
一、不取毫秒:
TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
简要说明,
YYYY 年
MM 月
- 【Scala六】分析Spark源代码总结的Scala语法四
bit1129
scala
1. apply语法
FileShuffleBlockManager中定义的类ShuffleFileGroup,定义:
private class ShuffleFileGroup(val shuffleId: Int, val fileId: Int, val files: Array[File]) {
...
def apply(bucketId
- Erlang中有意思的bug
bookjovi
erlang
代码中常有一些很搞笑的bug,如下面的一行代码被调用两次(Erlang beam)
commit f667e4a47b07b07ed035073b94d699ff5fe0ba9b
Author: Jovi Zhang <
[email protected]>
Date: Fri Dec 2 16:19:22 2011 +0100
erts:
- 移位打印10进制数转16进制-2008-08-18
ljy325
java基础
/**
* Description 移位打印10进制的16进制形式
* Creation Date 15-08-2008 9:00
* @author 卢俊宇
* @version 1.0
*
*/
public class PrintHex {
// 备选字符
static final char di
- 读《研磨设计模式》-代码笔记-组合模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
abstract class Component {
public abstract void printStruct(Str
- 利用cmd命令将.class文件打包成jar
chenyu19891124
cmdjar
cmd命令打jar是如下实现:
在运行里输入cmd,利用cmd命令进入到本地的工作盘符。(如我的是D盘下的文件有此路径 D:\workspace\prpall\WEB-INF\classes)
现在是想把D:\workspace\prpall\WEB-INF\classes路径下所有的文件打包成prpall.jar。然后继续如下操作:
cd D: 回车
cd workspace/prpal
- [原创]JWFD v0.96 工作流系统二次开发包 for Eclipse 简要说明
comsci
eclipse设计模式算法工作swing
JWFD v0.96 工作流系统二次开发包 for Eclipse 简要说明
&nb
- SecureCRT右键粘贴的设置
daizj
secureCRT右键粘贴
一般都习惯鼠标右键自动粘贴的功能,对于SecureCRT6.7.5 ,这个功能也已经是默认配置了。
老版本的SecureCRT其实也有这个功能,只是不是默认设置,很多人不知道罢了。
菜单:
Options->Global Options ...->Terminal
右边有个Mouse的选项块。
Copy on Select
Paste on Right/Middle
- Linux 软链接和硬链接
dongwei_6688
linux
1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。
【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连
- DIV底部自适应
dcj3sjt126com
JavaScript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- Centos6.5使用yum安装mysql——快速上手必备
dcj3sjt126com
mysql
第1步、yum安装mysql
[root@stonex ~]# yum -y install mysql-server
安装结果:
Installed:
mysql-server.x86_64 0:5.1.73-3.el6_5 &nb
- 如何调试JDK源码
frank1234
jdk
相信各位小伙伴们跟我一样,想通过JDK源码来学习Java,比如collections包,java.util.concurrent包。
可惜的是sun提供的jdk并不能查看运行中的局部变量,需要重新编译一下rt.jar。
下面是编译jdk的具体步骤:
1.把C:\java\jdk1.6.0_26\sr
- Maximal Rectangle
hcx2013
max
Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing all ones and return its area.
public class Solution {
public int maximalRectangle(char[][] matrix)
- Spring MVC测试框架详解——服务端测试
jinnianshilongnian
spring mvc test
随着RESTful Web Service的流行,测试对外的Service是否满足期望也变的必要的。从Spring 3.2开始Spring了Spring Web测试框架,如果版本低于3.2,请使用spring-test-mvc项目(合并到spring3.2中了)。
Spring MVC测试框架提供了对服务器端和客户端(基于RestTemplate的客户端)提供了支持。
&nbs
- Linux64位操作系统(CentOS6.6)上如何编译hadoop2.4.0
liyong0802
hadoop
一、准备编译软件
1.在官网下载jdk1.7、maven3.2.1、ant1.9.4,解压设置好环境变量就可以用。
环境变量设置如下:
(1)执行vim /etc/profile
(2)在文件尾部加入:
export JAVA_HOME=/home/spark/jdk1.7
export MAVEN_HOME=/ho
- StatusBar 字体白色
pangyulei
status
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
/*you'll also need to set UIViewControllerBasedStatusBarAppearance to NO in the plist file if you use this method
- 如何分析Java虚拟机死锁
sesame
javathreadoracle虚拟机jdbc
英文资料:
Thread Dump and Concurrency Locks
Thread dumps are very useful for diagnosing synchronization related problems such as deadlocks on object monitors. Ctrl-\ on Solaris/Linux or Ctrl-B
- 位运算简介及实用技巧(一):基础篇
tw_wangzhengquan
位运算
http://www.matrix67.com/blog/archives/263
去年年底写的关于位运算的日志是这个Blog里少数大受欢迎的文章之一,很多人都希望我能不断完善那篇文章。后来我看到了不少其它的资料,学习到了更多关于位运算的知识,有了重新整理位运算技巧的想法。从今天起我就开始写这一系列位运算讲解文章,与其说是原来那篇文章的follow-up,不如说是一个r
- jsearch的索引文件结构
yangshangchuan
搜索引擎jsearch全文检索信息检索word分词
jsearch是一个高性能的全文检索工具包,基于倒排索引,基于java8,类似于lucene,但更轻量级。
jsearch的索引文件结构定义如下:
1、一个词的索引由=分割的三部分组成: 第一部分是词 第二部分是这个词在多少