- Java编程最佳实践: 从零开始构建线程安全的单例模式
keyBird在成长
java安全单例模式
引言各位Java开发者朋友们,大家好!单例模式作为设计模式中的经典实现,被广泛应用于各类系统中。然而,在多线程环境下实现一个真正线程安全的单例模式,需要考虑诸多细节和潜在问题。今天,我将带领大家从零开始,一步步构建出完美的线程安全单例模式,并在过程中融入Java编程的多项最佳实践,帮助你在实际开发中写出更加优雅、高效的代码。代码结构与组织单例模式的基本结构在构建单例模式时,首先需要确保类的结构清晰
- Go语言深度解析:从Java到Go的范式革命与实践指南
唯一为空
golang开发语言后端
引言:编程范式的十字路口在软件工程领域,编程语言的选择往往代表着技术路线的抉择。当Java开发者第一次接触Go时,常会陷入两种思维范式的激烈碰撞:一面是传承20年的面向对象正统,一面是追求极简主义的新锐语言。本文基于笔者主导的三个大型系统重构项目(Java转Go)的实战经验,深度剖析两种语言的核心差异,揭示Go语言的独特优势,并为转型开发者提供万字避坑指南。第一部分:哲学根基——两种世界观的对撞1
- 初级:I/O与NIO面试题深度剖析
佩奇的技术笔记
Java面试小册niojava
一、引言在Java开发中,I/O(输入/输出)操作是程序与外部设备(如磁盘、网络等)进行数据交互的重要方式。传统的I/O模型在处理大规模数据和高并发场景时存在一定的局限性,而NIO(NewI/O)则通过引入缓冲区、通道等概念,提供了更高效、更灵活的I/O操作方式。面试官通过相关问题考察候选人对I/O和NIO的理解深度和实际应用能力,以及在实际开发中优化I/O操作的经验。本文将深入剖析常见的I/O与
- 中级:Maven面试题精讲
佩奇的技术笔记
Java面试小册mavenjava面试
一、引言在Java开发中,Maven作为一款强大的项目管理和构建工具,被广泛应用于项目构建、依赖管理和插件机制等方面。面试官通过相关问题考察候选人对Maven核心功能的理解和实际应用能力,以及在复杂项目场景下合理配置和优化Maven的能力。本文将深入剖析Maven的项目构建、依赖管理、插件机制等相关的面试题,结合实际开发场景,帮助读者全面掌握这些知识点。二、项目构建面试题:Maven的项目构建生命
- 在java中使用openCV实现对图片的分割(仅限java)
伊利十二个圈
opencvopencvjava分割图片
针对java开发,希望可以对大家有帮助1.首先:下载opencv点击下载,下载完成后341版本和320版本,是需要jdk1.8支持的。310版本只需要jdk1.7就可以。大家如果不愿意花积分的话也可以去官网进行下载https://opencv.org/releases.html2.下载完成后需要要导入opencv的jar包,把dll和jar放在一
- vue一些npm i 时报错问题解决【JAVA前后端分离】
华如锦
2023-FUSE-时代JAVA微服务开发本地环境配置vue.jsnpm前端javaspringboot
前端vuenpmi安装时出现作为一个懂些前端得JAVA开发自然是要粗暴解决这个问题了问题解决使用命令npx-pnpm@6npmi即可编译原因:ERESOLVE与npm版本有关,因为npm版本高对某些事情比npm6.x更严格。通常,最简单的解决方法是将--legacy-peer-deps标志传递给npm(e.g.,npmi--legacy-peer-deps),或者使用npm@6如果这不能立即起作用
- 关于决定开始写博文的介绍
庖丁解java
java
半路出家,搞java开发三年后,偶然发呆想到一个问题:什么是java?我突然发现面对这个问题,我居然只能说出一句话:面向对象编程语言。e,突然发现,我该系统的学习一下java底层了。原因就是这个原因,浑浑噩噩三年就过去了,关于java还是一问三不知。这感觉,很挫败。当然,除了挫败,还有个疑惑?就是为什么?为什么我都从业三年了,也一直在工作,需求也一直在写,(强烈依靠百度和通义灵码),但为什么,对j
- Springboot最简单的实战介绍 整合kafka-生产者与消费者(消息推送与订阅获取
冷る_1234
Java经验分享开发语言面试
前言你的努力,终将成就无可替代的自己本科毕业后就一直从事Java开发的工作,和多数人一样,最开始从事crud的工作,看着自己的同学一步一步往上走,自己还是在原地踏步,说实话这不是自己想要的状态。一年半后开始沪漂生活,又摸爬滚打了一年半,薪资基本上在16K。疫情在家开始了系统的学习,目的就是为了进大厂,得到更多的学习机会,也是为了自己到所谓的“35岁”之后,也能在老家恰一口好饭。努力也没有白费,8个
- IntelliJ IDEA 高效开发:必备技巧与插件推荐
寒冰碧海
Java爬坑之路ideintellijideajava
作为Java开发者最喜爱的IDE之一,IntelliJIDEA以其强大的功能和优秀的用户体验著称。无论是新手开发者,还是经验丰富的编程高手,都能在IDEA中找到提升效率的方法。本文将详细分享一些实用的IDEA使用技巧和必备插件,帮助开发者在日常开发中事半功倍。二、核心使用技巧1.代码导航快速跳转:Ctrl+N(类)、Ctrl+Shift+N(文件)最近文件:Ctrl+E方法跳转:Ctrl+F12书
- Java 类与对象 -- Java 语言的类与对象、构造器、static、final、包和 JAR
栗筝i
栗筝i的Java技术栈(付费部分)#Java基础-专栏栗筝i的Java技术栈Java基础Java入门Java类与对象Java
大家好,我是栗筝i,这篇文章是我的“栗筝i的Java技术栈”专栏的第006篇文章,在“栗筝i的Java技术栈”这个专栏中我会持续为大家更新Java技术相关全套技术栈内容。专栏的主要目标是已经有一定Java开发经验,并希望进一步完善自己对整个Java技术体系来充实自己的技术栈的同学。与此同时,本专栏的所有文章,也都会准备充足的代码示例和完善的知识点梳理,因此也十分适合零基础的小白和要准备工作面试的同
- 深入解析 Spring Boot 注解:原理与实战
要努力努力呀
springboot
SpringBoot作为Java开发的主流框架,以其简洁、高效的特点深受开发者喜爱。而在SpringBoot中,注解是至关重要的,它们帮助开发者以更少的代码实现强大的功能。本篇文章将带大家深入了解SpringBoot注解的核心原理,并通过代码示例加深理解。SpringBoot常见核心注解SpringBoot提供了大量注解,涵盖组件管理、请求映射、参数绑定、事务管理等多个方面,下面我们分门别类地进行
- Java编程最佳实践:日志记录的艺术,让Bug无处可藏
keyBird在成长
java代码规范设计规范
引言各位Java开发者朋友们,你是否曾经遇到过这样的情景:系统深夜突然报错,却找不到任何线索;用户反馈功能异常,但无法复现问题;或者代码运行结果与预期不符,却不知道程序在哪个环节出了问题?这些情况下,一个设计良好的日志系统往往能成为我们排查问题的救命稻草。日志记录是程序开发中不可或缺的一部分,它就像是程序运行的"黑匣子",记录着系统的行为轨迹。本文将带您深入探讨Java日志记录的最佳实践,让那些隐
- JAVA背景知识----JRE基础知识
wiki843
java学习开发语言
JRE概念:JRE(JavaRuntimeEnvironment)即Java运行环境,包含Java虚拟机(JVM)和Java程序所需要的核心类库,计算机中安装JRE即可运行开发好的Java程序。JDK中包含了JRE无需单独下载JREJDK与JRE、JVM的关系JRE=JVM+核心类库JDK=JRE+JAVA开发工具JDK>JRE>JVM
- 不愧是高级Java开发岗,确实有点难~
后端java
今天和大家分享一下组织内部成员在高级Java开发工程师岗位的面经详解,看看面试强度如何(删除了跟主人公项目相关的问题):面经详解1.线程池参数怎么配置?拒绝策略?线程池参数配置:核心线程数(corePoolSize)•CPU密集型任务:通常设置为CPU核心数+1,例如4核CPU设置5。•IO密集型任务:建议设置为CPU核心数×2,例如4核CPU设置8,或通过公式CPU核心数×(1+平均等待时间/计
- 五分钟带你了解Java是如何从容而优雅地实现接口数据校验
风平浪静如码
Java程序员java编程语言后端程序员经验分享
本篇文章给大家分享平时开发中总结的一点小技巧!在工作中写过Java程序的朋友都知道,目前使用Java开发服务最主流的方式就是通过SpringMVC定义一个Controller层接口,并将接口请求或返回参数分别定义在一个Java实体类中,这样SpringMVC在接收到Http请求(POST/GET)后,就会自动将请求报文自动映射成一个Java对象。这样的代码通常是这样写的:@RestControll
- JAVA面试宝典(纯享版)
爱技术的大龄码农
java面试开发语言设计模式
一、Java基础1、Java开发平台都有什么Ee:webSe:客户端Me:嵌入式应用开发2、Jdk和jre的区别Jdk是开发人员使用Jre是java程序运行平台3、list、set、map的区别List和set是conllection的子类Java容器分为Collection和Map两大类,Collection集合的子接口有Set、List、Queue三种子接口。我们比较常用的是Set、List,
- Java开发环境搭建
自在天荒
开发语言java
JDK下载、安装与卸载卸载JDK(详情如下)删除Java的安装目录删除JAVA_HOME删除path下关于Java的目录Javas-version右击我的电脑->点击属性->找到高级系统设置->找到环境变量->找到JAVA_HOME并点击->复制地址并在我的电脑打开->找到jdk文件夹,shift+delete永久删除->回到环境变量,找到JAVA_HOME并点击删除->找到path里Java的相
- Java中的分布式监控
城南|阿洋-计算机从小白到大神
java分布式开发语言
大家好,我是城南。在当今这个微服务和分布式系统大行其道的时代,分布式监控已经成为确保系统稳定性和性能的关键工具。Java开发者在面对复杂的分布式架构时,需要一种高效且全面的监控手段,以便及时发现问题并迅速解决。那么,今天我们就来深入探讨一下Java中的分布式监控技术。分布式监控概述分布式监控的核心在于收集和分析跨多个服务的请求和数据流。通过分布式追踪(DistributedTracing),我们可
- AI 时代 Java 程序员必备技术栈:从基础重构到智能开发的全维升级
琢磨先生David
javaSpringboot
一、AI时代的技术范式变革在AI技术渗透率突破37%的2025年,Java开发者面临着前所未有的职业挑战与机遇。根据GitHubCopilot的年度报告,其代码补全功能已覆盖全球62%的开发场景,传统编码模式正在被颠覆。本文将从技术栈重构、AI融合开发、云原生架构、大模型应用四个维度,系统解析Java程序员的能力升级路径。二、核心基础的智能化重构1.语言特性的深度演进Java17的密封类、模式匹配
- 编程中的英语单词大全
@一叶之秋
编程必会单词java
学习Java中用到的专业术语单词总结day1掌握1、JDKabbr.Java开发工具包(JavaDeveloper'sKit)(abbr.缩写)2、JREabbr.Java运行环境(JavaRuntimeEnvironment)3、JVMabbr.Java虚拟机(JavaVirtualMachine)4、system['sɪstəm]Systemn.制度,系统;5、out[aʊt]adj.外面的;
- 记录一下java的常用单词
彭于晏op
黑马程序员java基础javajvm开发语言
Java课程系列———————————————————————————1Java编程语言单词汇总Java研究院版本:V2.0step-01掌握1、JDKabbr.Java开发工具包(JavaDevelopmentKit)(abbr.缩写)2、JREabbr.Java运行环境(JavaRuntimeEnvironment)3、JVMabbr.Java虚拟机(JavaVirtualMachine)4、
- Java依赖注入完全指南:高效解耦、技术深析与实践落地
领码科技
技能篇低代码java依赖注入设计模式SpringGuice
摘要依赖注入(DependencyInjection,DI)是Java开发中用于实现松耦合和提升系统灵活性的重要设计模式。本文从依赖注入的基本原理出发,深入解析五种核心方案(包括构造器注入、Setter注入、接口注入、注解驱动注入和XML配置注入)的特点、适用场景与优缺点,并对Spring、Guice和Dagger三大主流框架进行对比分析。结合企业级应用、测试驱动开发、微服务架构等实际场景,本文提
- Mybatis日志模块--适配器模式
为了妹子而奋斗
Mybatis学习适配器模式日志模块Mybatis
Mybatis日志模块采用了适配器模式,在JAVA开发中,常用的日志框架有Log4j、Log4j2、java.util.logging、slf4j等,这些工具对外的接口不尽相同,为了统一这些工具的接口,Mybatis定义了一套统一的日志接口供上层使用。publicinterfaceLog{voiddebug(Strings);...}importorg.apache.ibatis.logging.
- Trae CN 设置Java开发环境
一只编程菜鸟
java开发语言
1、插件市场安装插件2、配置环境Ctrl+Shift+P配置settings.json{"java.compile.nullAnalysis.mode":"automatic","java.configuration.updateBuildConfiguration":"automatic","java.configuration.maven.userSettings":"D:\\develop\
- 深入探讨 Spring 中的自定义注解及其使用场景
AI_Frank
javaspringBoot1024程序员节
在现代Java开发中,注解(Annotation)作为一种元数据形式,极大地简化了开发者的代码配置和逻辑实现。Spring框架充分利用了注解的功能,实现了依赖注入、事务管理、AOP(面向切面编程)等核心特性。随着项目复杂度的增加,开发者可能会发现需要定义一些自定义注解,以满足更灵活的业务需求。本文将深入探讨在Spring框架中如何创建和使用自定义注解,并结合具体的应用场景给出实际的示例,帮助开发者
- Java开发---基础编程规范
星星重行行
javajava开发语言
编程规约(一)命名风格1.【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。反例:_name/$Object/name$/Object$2.【强制】代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式也要避免采用。正例:alibaba/taobao/youku/hang
- 探秘Netty:高性能网络应用框架的源码解析
张姿桃Erwin
探秘Netty:高性能网络应用框架的源码解析去发现同类优质开源项目:https://gitcode.com/如果你在Java开发中寻找一款高效、稳定且功能强大的网络通信库,那么Netty绝对值得你深入了解。这篇推荐文章将带你走进Netty的世界,通过源码解析,揭示其内在的技术魅力,并为你展示它的广泛应用场景。项目介绍Netty源码解析是一份详细且深入的开源文章系列,旨在帮助开发者更全面地理解Net
- Flutter和React Native在开发app中,哪个对java开发工程师更适合
getapi
flutterreactnativejava
对于一名Java开发工程师来说,选择Flutter或ReactNative来开发移动应用需要综合考虑多个因素,包括技术栈的熟悉程度、学习曲线、项目需求以及未来的维护成本等。以下是对两者的详细分析,帮助你做出更明智的选择:1.技术栈与语言的适配性Flutter编程语言:Flutter使用Dart作为开发语言。优点:Dart的语法相对简洁,与Java有一定的相似性(例如类定义、类型系统等),因此从Ja
- 如何提升 Java 开发能力?
MingDong523
java
如何提升Java开发能力?要系统提升Java开发能力,需从基础巩固、技术拓展、实战经验、持续学习四个维度入手。以下是详细的进阶路径和具体建议:一、夯实Java核心基础深入理解语言特性必学内容:JVM原理:类加载机制、内存模型(堆/栈/方法区)、垃圾回收算法(CMS、G1、ZGC)。并发编程:synchronized底层原理、volatile可见性与有序性、ThreadPoolExecutor线程池
- Java基础-03-Java入门-JDK的安装和下载
落榜程序员
java开发语言
Java基础教程:JDK的安装与下载引言欢迎来到Java编程世界!在开始编写Java程序之前,你需要确保你的计算机上已经安装了Java开发工具包(JDK)。本文将指导你如何下载并安装最新的JDK版本。一、选择适合你的JDK版本随着技术的发展,Oracle定期更新JDK。截至2025年3月,推荐使用最新稳定版的JDK进行开发。你可以访问OracleJDK官网或OpenJDK来获取最新的JDK版本信息
- 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 <bookjovi@gmail.com>
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、一个词的索引由=分割的三部分组成: 第一部分是词 第二部分是这个词在多少