关闭

jvisualvm插件安装的正确姿势(解决网络问题)

原文链接:http://www.dubby.cn/detail.html?id=9061jvisualvm是学习JVM的必备神器,其本身的功能已经非常强大了,但是还有更加丰富的插件,可以让我们用的更得心应手。安装插件的步骤如下:但是安装的过程中,是不是遇到了网络错误:没错,我也遇到了,很头疼,咋办呢?没想到这个站点都关了,看来这个方法是没办法了,所以,只有自己下载插件,然后本地安装了。https:/...
阅读(8) 评论(0)

【浅度渣文】BTrace简介

原文链接:http://www.dubby.cn/detail.html?id=9060 别着急着上手,请按捺住你的迫切的心情,稍微花点时间看看BTrace的介绍,然后开始动手操作。注意,这里给出最简单,最基本,也是最常用的使用方法。 BTrace是一个安全的,动态的Java跟踪工具。BTrace通过运行Java程序的动态(字节码)工具类来工作。BTrace将追踪操作插入到正在运行的Java程序...
阅读(15) 评论(0)

【浅度渣文】JVM——G1收集器

原文链接:http://www.dubby.cn/detail.html?id=90591. 概述介绍本文涵盖Java中Java虚拟机(JVM)G1垃圾收集(GC)的基础知识。 在文的第一部分中,提供了对JVM的概述以及对垃圾收集和性能的介绍。 接下来的学生将看到CMS收集器如何与热点JVM一起工作。 接下来,一步一步的指导垃圾收集如何使用G1垃圾收集与热点JVM的工作。 接下来,提供了一个覆盖G1...
阅读(33) 评论(0)

根据前序遍历和中序遍历的结果确定后序遍历

原文链接:http://www.dubby.cn/detail.html?id=9058 已知前序遍历和中序遍历: 前序遍历: GDAFEMHZ 中序遍历: ADEFGHMZ 求:后序遍历我们根据前序遍历可以找到第一个root节点; 然后这个根据中序遍历可以知道这个root节点在哪里; 如果root两边都有元素,说明这个root有左子树和右子树; 如果root只有左边有...
阅读(23) 评论(0)

二叉树遍历(前序遍历,中序遍历,后序遍历)

原文链接:http://www.dubby.cn/detail.html?id=9056定义树的节点类型(为节省篇幅省略了getter/setter):public class TreeNode { private T value; private TreeNode left; private TreeNode right; }前序遍历前序遍历Preorde...
阅读(17) 评论(0)

从“熔断”和“降级”说起

随着微服务的兴起,很多名词都不断的提出,我想大家都听过一些,但是很多其实并不了解,今天起来看到了DD分享的《白话:服务降级与熔断的区别》,觉得分享的非常好,通俗易懂,可是我心中想要的东西不止这些,所以这里献丑,分享一下我的想法。就从“熔断”和“降级”说起吧。什么是熔断?其实很多时候,看到他真正的原词,你就会明白他是个什么东西了,因为作者总是希望你们能理解他的意图,所以命名时总会挑选一个最接近的词。...
阅读(32) 评论(0)

使用Disruptor的几个代码演示

原文链接:http://www.dubby.cn/detail.html?id=9052代码地址:https://github.com/dubby1994/disruptor-demo 关于Disruptor的原理,实在是太过复杂,限于我水平有限,这里就不一一展开。如果读者有兴趣,可以去看他们的官方文档,代码库已迁移到GitHub,https://github.com/LMAX-Exchange...
阅读(45) 评论(0)

伪共享(False Sharing)

原文地址:http://ifeve.com/false-sharing/ 原译文地址:http://ifeve.com/falsesharing/ 作者:Martin Thompson 译者:丁一 缓存系统中是以缓存行(cache line)为单位存储的。缓存行是2的整数幂个连续字节,一般为32-256个字节。最常见的缓存行大小是64个字节。当多线程修改互相独立的变量时,如果这些变量共...
阅读(142) 评论(0)

Disruptor入门

转载自并发编程网 – ifeve.com 本文链接地址: Disruptor入门 本文作者翻译的已经非常好了,这里就不献丑,再次翻译了,直接转载,更正其中一些问题(小瑕疵,而且,其实是官方文档的错误,作者只是翻译时没有注意罢了),补全官方文档后没有翻译完的部分内容,并附上demo代码。 获得Disruptor可以通过Maven或者下载jar来安装Disruptor。只要把对应的jar...
阅读(26) 评论(0)

Spring系列——MyBatis(XML版)

原文链接:http://www.dubby.cn/detail.html?id=9049 我相信读者如果看了《Spring系列——MyBatis》,肯定会不爽,因为习惯了用XML来写SQL,用什么注解?害得我又要重新学习,而且某些特性注解确实没有XML方便。所以,我来了,带来这篇XML版的MyBatis。 访问www.dubby.cn获取更多精彩内容。 1. 你需要准备 如果你看过...
阅读(259) 评论(0)

MyBatis插入记录获取自增的ID(MySQL)

如果想只用简单的查询语句查出刚刚插入的记录的自增ID,我们可能会想到select max(id) from table_name,但是,很明显这是不可取的,只要稍微有点并发,这就是个错误的结果。没错,使用LAST_INSERT_ID()就可以了。SELECT LAST_INSERT_ID()为什么可以,因为这个是基于connection的,每个数据库连接是相互独立的,在使用各种ORM框架操作数据库时...
阅读(85) 评论(0)

Spring系列——MyBatis

原文链接:http://www.dubby.cn/detail.html?id=9047 本来是打算今天写使用JdbcTemplate来操作数据库的,可是转念一想,这根本不会有人用,最多也就是让读者了解其原理,所以就直接跳到了MyBatis这一节吧。毕竟,这是很实用的。 1. 你需要做的准备 JDK 8 + Maven 3.0 + MySQL 在MySQL中间一个测试库,并创建测试表 CREAT...
阅读(59) 评论(0)

Spring系列——定时任务

原文链接:http://www.dubby.cn/detail.html?id=9046 本文简单介绍在Spring项目中怎么使用定时任务. 1. 你需要准备的 JDK 1.8 + Maven 3.0+ 2. 动手写代码2.1 项目依赖pom.xml <project xmlns="http://maven.apache...
阅读(47) 评论(0)

Spring系列——@RequestMapping

原文链接:http://www.dubby.cn/detail.html?id=90441. 基本用法可以修饰类,也可以修饰方法。修饰类是代表URI由此类(controlller)里的方法处理,修饰方法是详细指定哪个方法处理哪个URI请求。2. HTTP方法method可以指定特定的HTTP方法才可以映射:@RequestMapping(path = "/hello", method = Reque...
阅读(141) 评论(0)

Spring系列——上传文件

原文链接:http://www.dubby.cn/detail.html?id=90431. 我们要做什么使用Spring实现一个最基本的文件上传,文件下载的web应用。2.你需要什么 MySQL 5.6或者更高版本 大约15分钟 一个最爱的编辑器或者IDE JDK 1.8 + Maven 3.0+ 3. 创建项目3.1 项目依赖pom.xml<?xml version="1.0" encoding...
阅读(100) 评论(0)

Spring系列——使用JPA来操作数据

原文链接:http://www.dubby.cn/detail.html?id=9042代码地址:https://github.com/dubby1994/spring-demo JPA全称Java Persistence API,Java持久性API(简称JAP)是类和方法的集合,以数据关系映射持久并存储到数据库,这是由Oracle公司提供方案技术。可以减少开发者自己操作数据库时需要很多臃肿的...
阅读(40) 评论(0)

Spring系列——访问MySQL

原文链接:http://www.dubby.cn/detail.html?id=90411.我们要做什么本文介绍如果使用Spring + JPA来实现最简单的MySQL访问的web应用。2.你需要什么 MySQL 5.6或者更高版本 大约15分钟 一个最爱的编辑器或者IDE JDK 1.8 + Maven 3.0+ 3.创建项目3.1 项目结构maven项目,结构如下:└── src └──...
阅读(67) 评论(0)

Spring系列——RESTful的web项目

原文链接:http://www.dubby.cn/detail.html?id=90401.目标是什么构建一个web应用,我们可以请求:http://localhost:8080/greeting返回一个JSON:{"id":1,"content":"Hello, World!"}还可以发起一个带参数的请求:http://localhost:8080/greeting?name=User返回一个JS...
阅读(405) 评论(0)

雪花算法(snowflake)

雪花算法简单描述: + 最高位是符号位,始终为0,不可用。 + 41位的时间序列,精确到毫秒级,41位的长度可以使用69年。时间位还有一个很重要的作用是可以根据时间进行排序。 + 10位的机器标识,10位的长度最多支持部署1024个节点。 + 12位的计数序列号,序列号即一系列的自增id,可以支持同一节点同一毫秒生成多个ID序号,12位的计数序列号支持每个节点每毫秒产生4096个ID序号。看...
阅读(136) 评论(0)

什么时候使用Unchecked Exception / Checked Exception?

Java为我们提供了异常,通常是通过throws来申明方法可能会抛出的异常,用throw来抛出异常,用try-catch来捕获异常并处理,但是,我们知道除了强制申明或捕获的异常(Checked Exception)之外,Java还为我们提供了Unchecked Exception。 强制申明或捕获Checked Exception是通过编译器保证的。 对习用过C的人来说,可能觉得Exceptio...
阅读(32) 评论(0)
151条 共8页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:90705次
    • 积分:2196
    • 等级:
    • 排名:第18016名
    • 原创:123篇
    • 转载:24篇
    • 译文:4篇
    • 评论:11条
    博客专栏