自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 mysql可重复读注意事项

看一下维基关于不可重复读的定义: 在一次事务中,当一行数据获取两遍得到不同的结果表示发生了“不可重复读”. 在基于锁的并发控制中“不可重复读”现象发生在当执行SELECT 操作时没有获得读锁或者SELECT操作执行完后马上释放了读锁; 多版本并发控制中当没有要求一个提交冲突的事务回滚也会发生“不可重复读”现象。[1]举个例子: 有一条记录id:1, name:L 事务A:SET AU...

2018-07-30 23:28:53 1326

原创 程序员初始化脚本之mac

换macbook的时候发现好多软件配置都需要重新手动安装或修改,所以写了个脚本安装软件与配置,比如brew, go, vscode, zsh, iterm2, chrome. 以及vim的配置。分享给大家,脚本可自行修改。从此妈妈再也不用担心我换电脑啦~~~mac的脚本参见https://github.com/Swifree/init-script/blob/master/init-mac.s...

2018-06-28 22:16:22 418

原创 编程规范

nil值对于nil值,应该思考nil对于业务意味着什么,如果就应该nil业务就不该继续,直接抛异常,没必要去check nil的值,调用时自动会抛异常;而如果值为nil需要做分支流程,当前程序还要继续下去,那就需要判空。在返回给客户端的顶层catch住NPE,以错误码形式返回就好了。异常与错误java里面的Exception的定义: * The class {@code E...

2018-06-28 01:17:15 199

原创 分布式基础

分布式系统需要实现的指标scalability: 可扩展性,系统能够适应其工作增长的能力,随着其处理的工作增加,性能和可用性并不会降低performance:性能,通过系统完成的一工作量已经需要的时间或资源衡量,具体要求:低响应时间, 低延迟系统资源使用率低(CPU和内存)高吞吐量latency:延迟, 事件开始到对外部可见之间的时间间隔。eg, 对数据的修改与实际用户观察到数...

2018-06-15 22:22:33 212

原创 paxos协议学习笔记

前言想理解paxos得先知道paxos解决的问题是什么。paxos解决的是2PC,3PC存在的节点阻塞,脑裂,低容错性,单点问题。而且还能做到2PC,3PC不能做到的事,leader选举。3PC是主从结构,如果主节点崩溃了,3PC并没有提供leader选举的算法。推荐资料:lamport老爷子写的论文Paxos Made Simple《从paxos到zookeeper》分布式...

2018-06-03 01:15:32 274

原创 程序员基础之unicode编码

unicode wiki链接utf-16wiki链接看不了链接的请使用科学上网方式基本上看wiki就能对编码unicode编码了解得差不多了(wiki质量甩掉百度百好几条街)计算机内存用的都是unicode编码,具体实现大都为UTF-16或UTF-8内存里一般都是UTF-16实现方式。传输采用采用的是UTF-8。UTF-16:最开始unicode只包

2016-10-12 13:18:47 417

原创 java内存泄露篇

jvm的垃圾回收虽然帮程序员减轻了垃圾回收的工作,但是还是有可能发生内存泄露,说一下常见的注意事项吧:1.尽量不要使用类变量,类变量要类被卸载之后内存才有可能回收2.使用单例模式3.各种连接资源的释放,比如数据库连接

2016-09-08 23:47:10 232

原创 springMVC RedirectAttributes用法

之前看书上说springMVC重定向的时候可以调用RedirectAttributes的addFlushAttribute方法向重定向后的页面传值。但是实践之后在jsp页面并获取不到值。这是我的代码:Controller:@RequestMapping("/test") public String test(RedirectAttributes r) { r.addFlashA

2016-06-11 20:31:41 1261

转载 深入理解java内存模型(七)——总结

转载自并发编程网 – ifeve.com本文链接地址: 深入理解java内存模型系列文章处理器内存模型顺序一致性内存模型是一个理论参考模型,JMM 和处理器内存模型在设计时通常会把顺序一致性内存模型作为参照。JMM 和处理器内存模型在设计时会对顺序一致性模型做一些放松,因为如果完全按照顺序一致性模型来实现处理器和 JMM,那么很多的处理器和编译器优化都要被禁止,这对执行

2016-05-14 21:18:23 416

转载 深入理解java内存模型(六)——final

转载自并发编程网 – ifeve.com本文链接地址: 深入理解java内存模型系列文章与前面介绍的锁和 volatile 相比较,对 final 域的读和写更像是普通的变量访问。对于final 域,编译器和处理器要遵守两个重排序规则:在构造函数内对一个 final 域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间不能重排序。初次读一个包含 final

2016-05-14 21:17:25 396

转载 深入理解java内存模型(五)——锁

转载自并发编程网 – ifeve.com本文链接地址: 深入理解java内存模型系列文章锁的释放-获取建立的 happens before 关系锁是 java 并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息。下面是锁释放-获取的示例代码:class MonitorExample { int a = 0;

2016-05-14 21:16:09 388

转载 深入理解java内存模型(四)——volatile

转载自并发编程网 – ifeve.com本文链接地址: 深入理解java内存模型系列文章volatilevolatile 的特性当我们声明共享变量为 volatile 后,对这个变量的读/写将会很特别。理解 volatile 特性的一个好方法是:把对 volatile 变量的单个读/写,看成是使用同一个锁对这些单个读/写操作做了同步。下面我们通过具体的示例来说明,请

2016-05-14 21:14:30 358

转载 深入理解java内存模型(三)——顺序一致性

转载自并发编程网 – ifeve.com本文链接地址: 深入理解java内存模型系列文章数据竞争与顺序一致性保证当程序未正确同步时,就会存在数据竞争。java 内存模型规范对数据竞争的定义如下:在一个线程中写一个变量,在另一个线程读同一个变量,而且写和读没有通过同步来排序。当代码中包含数据竞争时,程序的执行往往产生违反直觉的结果(前一章的示例正是如此)。如果一个

2016-05-14 21:12:55 557

转载 深入理解java内存模型(二)——重排序

转载自并发编程网 – ifeve.com本文链接地址: 深入理解java内存模型系列文章数据依赖性如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性。数据依赖分下列三种类型:名称代码示例说明写后读a = 1;b = a;写一个变量之后,再读这个位置。写后写a = 1;a = 2

2016-05-14 21:10:24 293

转载 深入理解java内存模型(一)——基础

转载自并发编程网 – ifeve.com本文链接地址: 深入理解java内存模型系列文章并发编程模型的分类在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,线程之

2016-05-14 21:08:28 298

原创 NoClassDefFoundError出现的一个原因

只知道一个,有可能是jar包冲突。如果遇到这个错误的话可以考虑一下有没有这种可能。

2016-05-12 14:49:43 792

原创 springMVC搭建总结

上一篇springmvc搭建并没有整合HIbernate或Ibatis ORM 框架。这篇博客主要关注怎么在SpringMVC里面整合HIbernate框架,并使用c3p0连接池。今天第一次搭建整合了HIbernate的SpringMVC框架,于是参考了以前的Spring3+HIbernate3的搭建方法。但是我使用的是Spring4+HIbernate4。然后就雪崩了.....<b

2016-05-12 14:40:51 252

转载 java classloader机制

转载自http://my.oschina.net/aminqiao/blog/262601目录[-]JDK默认ClassLoader双亲委托模型如何自定义ClassLoader1.loadClass 方法2.findClass3.defineClass不遵循“双亲委托机制”的场景做Java开发,对于ClassLoader的机制

2016-05-05 21:05:22 395 1

原创 java 的Exception和Error

Exception和Error都是Throwable的子类,下面是javase文档关于error的介绍An Error is a subclass of Throwable that indicates serious problems that a reasonable application should not try to catch. Most such errors are

2016-05-05 15:02:57 445

转载 Spring中 @Autowired注解与@Resource注解的区别

转载自http://qiangmzsx.blog.51cto.com/2052549/1359952Spring中 @Autowired注解与@Resource注解的区别在Spring 3.X中经常使用到@Autowired和@Resource进行装配。不禁好奇这两个注解的差异在何处???相同点:@Resource的作用相当于@Autow

2016-05-03 09:15:13 281

原创 搭建使用springmvc的web项目

可以使用新建maven项目和java dynamic web项目。本文是基于java dynamic web项目的。首先我们需要知道spring mvc只是spring framework 的一个模块,要搭建spring mvc项目,我们得用到spring framework,使用spring framewor很简单,只需要导入spring framework的lib目录下的jar包还有其依赖

2016-05-02 18:54:09 786

原创 攻城狮学习之路

做为一名攻城狮,必须有"活到老,学到老"的精神觉悟。"问渠那得清如许,为有源头活水来"。只有不断的学习,才能保持思维的活跃。我们需要经常学些新知识,然而时间有限,这就需要在学习广度和学习深度保持平衡。有的东西你专研太深,必然花费很多时间,就没有时间学习其他东西了。然而要是什么都学,没有一门精通的,那也不行。我的看法是精于一,然后扩展广度。学习一门新技术的时候入门时可以请教别人,也可以Google,

2016-04-29 16:07:07 430

原创 三门问题的误区

三门问题(Monty Hall problem)亦称为蒙提霍尔问题、蒙特霍问题或蒙提霍尔悖论,大致出自美国的电视游戏节目Let's Make a Deal。问题名字来自该节目的主持人蒙提·霍尔(Monty Hall)。参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门可赢得该汽车,另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,节目主持人开启剩

2016-04-27 23:51:10 507

转载 正则表达式学习

据说正则表达式是程序员基本技能之一,于是默默去习之。可是只学习不练习怎么行了,于是乎发现了以下几个开源练习网站。1、RegExr2、Online Regular Expression Tester3、RETester4、Regexpal5、Regular Expression Test Tool6、

2016-04-26 10:42:33 336

转载 Spring学习

认真学spring官网,很容易找到spring4的jar包下载位置摘要:无论学习编程语言还是框架,个人认为与其花大量的时间搜资料,不如静心好好学习官网,官网是最好的学习资料(权威、准确的第一手材料)。原文  http://yanln.iteye.com/blog/2191312无论学习编程语言还是框架,个人认为与其花大量的时间搜资料,不如静心好好学习

2016-04-24 11:19:32 335

原创 java 内存映射效率好高啊

package GrammarPractice;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.RandomAccessFile;import java.

2016-03-20 20:01:47 668

原创 Bellman-Ford 算法证明

已知有向图G(V,E)和权重w(u,v),其中(u,v)∈E,s是源节点节点v有属性d表示s到v的最短估计距离是d.Bellman-Ford算法伪代码:初始化函数initialize(G,s)for each vertex v∈G.vv.d=∞s.d=0松弛操作,是最短估计距离不断趋近于最短真实距离:relax(u,v,w)if v.d>u.d+w(u,v)

2016-03-19 21:24:32 3691

原创 C++和java执行浮点计算的效率测试

之前学习的时候从来没有就C++和java的执行速度进行测试过,今天想就浮点数运算进行一下测试。首先测试一下计数器加1亿次需要的时间:C++代码:#include#include using namespace std;const int N=100000000;int main(){ SYSTEMTIME sys; GetLocalTime( &sys );

2016-01-03 12:51:22 2736

原创 C语言的内存分配

最近复习了一下C语言,看到内存管理分为五个区:1.动态存储区(栈):用来存放函数的形参和函数类的局部变量,函数调用时分配空间,在函数执行完后有编译器自动释放2.堆区:用来存放由动态分配函数分配的空间。但是必须使用free函数释放,否则会造成内存泄漏。3.静态存储区:用来存储全局变量和静态变量。4.字符串常量区:例如 char* pc="123" ;则"123"为字符串常量。5.

2015-12-28 13:45:43 421

原创 springmvc controller的泛化

使用SpringMVC时,发现Controller层的list,delete,add,update这几个基本数据操作对于每个实体都是公共的。就想到进行泛化以提高代码的复用。挺有意思的是父类的@RequestMapping能够被子类继承。因为这个注解的@Retention(value=RUNTIME).对注解不太熟悉的推荐看下面两篇博客。http://www.cnblogs.com/peida/archive/2013/04/24/3036689.htmlhttp://blog.csdn.net/fly_

2015-12-12 19:19:53 882

原创 jQuery对象和DOM对象,注意字体部分

jQuery对象不能使用DOM对象的属性与方法,如$("#id").innerHTML是错误的DOM对象也不能使用jQuery对象的方法。如document.getElementById("id").html()也是错误的 jQuery对象与DOM对象的相互转换(一般书上都有) 如果是jQuery对象,声明时在前面加上$。如下 var $variable=jQuery对象

2015-07-18 14:02:26 276

空空如也

空空如也

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

TA关注的人

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