- 博客(190)
- 资源 (26)
- 收藏
- 关注
转载 数据库主从不一致,怎么解?
在聊数据库与缓存一致性问题之前,先聊聊数据库主库与从库的一致性问题。 问:常见的数据库集群架构如何?答:一主多从,主从同步,读写分离。如上图:(1)一个主库提供写服务(2)多个从库提供读服务,可以增加从库提升读性能(3)主从之间同步数据画外音:任何方案不要忘了本心,加从库的本心,是提升读性能。问:为什么会出现不一致?答:主从同步有时延,这个时延期间读从库,可能读到不一致的数据。如上图:(1)服务发...
2018-07-10 20:56:34
7737
转载 缓存,究竟是淘汰,还是修改?(转)
允许cache miss的场景,不管是memcache还是redis,当被缓存的内容变化时,是改修改缓存,还是淘汰缓存?这是今天将要讨论的话题。问:KV缓存都缓存了一些什么数据?答:(1)朴素类型的数据,例如:int(2)序列化后的对象,例如:User实体,本质是binary(3)文本数据,例如:json或者html(4)...问:淘汰缓存中的这些数据,修改缓存中的这些数据,有什么差别?答:(1)...
2018-07-10 20:40:11
543
转载 究竟先操作缓存,还是数据库?
缓存存储,也是数据的冗余。(1)数据库访问数据,磁盘IO,慢;(2)缓存里访问数据,存操作,快;(3)数据库里的热数据,可在缓存冗余一份;(4)先访问缓存,如果命中,能大大的提升访问速度,降低数据库压力;这些,是缓存的核心读加速原理。 但是,一旦没有命中缓存,或者一旦涉及写操作,流程会比没有缓存更加复杂,这些是今天要分享的话题。 读操作,如果没有命中缓存,流程是怎么样的?答:如下图所示(1)尝试从...
2018-07-10 20:00:31
2336
原创 递归删除Windows某一文件夹下的 .svn文件夹
递归删除Windows某一文件夹下的 .svn文件夹命令为:C:\Users\lenovo>for /r C:\Users\lenovo\Desktop\XXXFolder %a in (.svn\) do @if exist "%a" rd /s/q "%a"
2016-07-21 22:50:29
3250
原创 mysql远程连接报错: Host * is not allowed to connect to this MySQL server,解决方法
解决此问题有以下2个方法:localhost改成%1.进入mysql的BIN目录注:root为管理员用户名,password为用户root的密码:mysql -u root -p passwordmysql>use mysql;mysql>update user set host ='%'where user ='root' and
2016-07-17 09:41:42
24928
2
原创 eclipse neon安装svn4.0插件报错
SVN: '0x00400006: Validate Repository Location' operation finished with error: Selected SVN connector library is not available or cannot be loaded.If you selected native JavaHL connector, please che
2016-07-16 19:33:37
12163
原创 mybatis与spring整合事务管理
1.最重要的spring配置文件<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSour
2016-03-03 21:16:08
6847
原创 SQLite一条SQL语句插入多条记录,批量插入
为了减少数据库连接的I/O开销,一般会把多条数据插入放在一条SQL语句中一次执行。以前用Mysql做开发一直是这样用的:INSERT INTO TABLE(col1, col2) VALUES(val11, val12), (val21, val22) ;最近用SQLite才发现这个语法并非标准SQL,故而SQLite并不支持。经过一番查找,发现如下方法可以替代:INSERT IN
2016-03-02 23:09:55
23662
3
原创 Mybatis批量增加,删除,更新Oracle
最近需要用到Mybatis批量新增oracle数据库,刚开始在网上找到的方法是都是更新mySQL的,试了一下发现不适合Oracle,后来发现正确的oracle批量新增的sql是:insert into ATTRACTIONS (ID, NAME, LONGITUDE, LATITUDE, UPDATE_TIME) (select #{item.id,
2016-03-02 22:49:21
1441
转载 2分钟读懂大数据框架Hadoop和Spark的异同
谈到大数据,相信大家对Hadoop和Apache Spark这两个名字并不陌生。但我们往往对它们的理解只是提留在字面上,并没有对它们进行深入的思考,下面不妨跟我一块看下它们究竟有什么异同。解决问题的层面不一样首先,Hadoop和Apache Spark两者都是大数据框架,但是各自存在的目的不尽相同。Hadoop实质上更多是一个分布式数据基础设施: 它将巨大的数据集分派到一个由普通计
2016-02-09 21:25:56
1268
原创 外网下的svn服务器搭建
外网下的svn服务器搭建 由于需要在不同的地方联合开发项目,因此需要能够搭建一个能够在外网访问的svn服务器,这里为叙述方便,假设svn服务器所在为机器S,客服端机器为C,S和C通过互联网相连。 步骤一:首先登陆路由器查看外网ip地址,即为wlan口状态下ip地址。这里假设为205.33.23.13。使用ipconfig命令查看局域网ip地址,这里假设为
2015-11-12 21:17:36
20617
1
原创 安卓学习(二)
Android 使用fastjson lib找不到fastjson包问题的解决方法:java.lang.classnotfoundexceptioncom.alibaba.fastjson.JSON 在普通的java项目下,只需要导入fastjson.jar就可以,无需依赖其他包,这一点相比json-lib要好多,json-lib依赖五六个包。但是将fast
2015-08-14 21:31:07
503
转载 磨刀不费砍柴功——Android编程中的实用快捷键
转自:http://blog.youkuaiyun.com/tanjunjie621/article/details/6611757作为一个优秀的程序员,不但要能开发出漂亮的软件,也要能熟练掌握编程的技巧,包括IDE的快捷键使用。比如linux下的VI编辑器,对于不熟练快捷键的人来说就是一个噩梦,但一旦你熟练了VI的快捷键,VI的效率会比用鼠标的编辑器还高。甚至VI为了减少手指在主键盘区和方向键之间切
2015-08-13 20:36:39
1152
转载 一个码农对软件项目基层人员管理的思考——会议篇
会议是项目内部沟通、管理的重要手段之一。以敏捷开发为例,典型的会议可能有晨会(站立会议)、迭代开工会议、迭代总结会议、周例会,以及一些重要方案的讨论、评审会议,内部的交流和培训会议等。 会议的目的是什么?是为了更好的沟通,具体的说,无非是为了高效传达一些事情,比如站立会议主要是为了相互了解彼此的进展和问题;或者集思广益、对一些问题达成一个统一的意见,比如一些方案的讨论、评
2015-08-13 19:58:39
671
原创 安卓学习(一)
在安卓手机设备上运行应用 要在设备上运行应用,首先应设置设备允许其运行非Google Play商店应用: Android 4.1或更早版本的设备,选择“设定 → 应用项”,找到并勾选“未知来源”选项。 Android 4.2版本的设备,选择“设定 → 安全”项,找到并勾选“未知来源”选项。其次,还需启用设备的USB调试模式。 Andro
2015-08-13 18:35:48
557
转载 外网访问自己的tomcat
我们平常学习时经常会写一下javaweb程序,我们为了更能逼近现实,就想着自己的javaweb程序发布后,外网的同学能够访问我们的网站,难道我们去买空间,去买域名嘛,其实也没必要,我们只是学习,测试之用,在自己的电脑上搭建一个服务器完全可以满足要求。上次写的一篇博客,PC服务端与Android客户端实现网络通信,就是利用这个原理。我们分为三步走来实现:(我这里用的示例javaweb程序是我
2015-08-12 23:03:57
2060
原创 spring配置文件中xsd引用问题
XML的一些概念首先来看下xml的一些概念:xml的schema里有namespace,可以给它起个别名。比如常见的spring的namespace: xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/co
2015-07-04 22:47:33
83859
9
转载 BigDecimal常用方法工具类
BigDecimal.java工具类: [java] view plaincopyimport java.math.BigDecimal; public class Arith { /** * 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精 * 确的浮点数运算,包括加减乘除和四舍五入。
2015-06-23 18:32:05
9452
原创 Java 基础知识
一.==与equals区别java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==),比较的是他们的值。 2.复合数据类型(类) 当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出
2015-06-22 22:14:12
490
转载 mybatis实战教程(mybatis in action),mybatis入门到精通
MyBatis目录(?)[-]mybatis实战教程mybatis in action之一开发环境搭建mybatis实战教程mybatis in action之二以接口的方式编程mybatis实战教程mybatis in action之三实现数据的增删改查mybatis实战教程mybatis in action之四实现关联数据的查询mybatis实战教程mybatis in
2015-06-14 22:36:28
1125
转载 MyBatis3整合Spring3、SpringMVC3
开发环境:System:WindowsWebBrowser:IE6+、Firefox3+JavaEE Server:tomcat5.0.2.8、tomcat6IDE:eclipse、MyEclipse 8Database:MySQL开发依赖库:JavaEE5、Spring 3.0.5、Mybatis 3.0.4、myBatis-spring-
2015-06-14 22:02:52
800
转载 在Spring MVC中,事务可以加在Controller层
一般而言,事务都是加在Service层的,但是爱钻牛角尖的我时常想:事务加在Controller层可不可以。我一直试图证明事务不止可以加在Service层,还可以加在Controller层,但是没有找到有力的论据来支持我这个想法,搞得我一度认为事务只能加在Service层,直到我读过spring官方文档并实践之后,我知道我的想法是对的。 在spring-framework-refer
2015-06-13 18:11:48
1215
1
转载 Java集合框架面试问题集锦
Java集合框架(例如基本的数据结构)里包含了最常见的Java常见面试问题。很好地理解集合框架,可以帮助你理解和利用Java的一些高级特性。下面是面试Java核心技术的一些很实用的问题。Q:最常见的数据结构有哪些,在哪些场景下应用它们?A. 大部分人都会遗漏树和图这两种数据结构。树和图都是很有用的数据结构。如果你在回答中提及到它们的话,面试者可能会对你进行进一步进行的考核。
2015-06-08 22:58:49
550
原创 eclipse在debug模式下鼠标移动到变量上不显示值的问题
在eclipse中调试时,鼠标移动到变量上不显示值,使用ctrl+shift+i,或者通过配置达到目的: Window->Preferences->Java->Editor->Hovers 将[Variable Values]选择即可,如果第一个[Combined Hover]已经勾选,则将这个勾去掉,勾选[Variable Values]。如果还不行,就只能用ctrl+shift+i快捷
2015-06-08 20:26:52
32056
1
原创 jodd.bean.BeanException: Simple property not found错误
23:42:54,151 [DEBUG] - [AWT-EventQueue-0] jodd.bean.BeanException: Simple property not found: oDqkccn. Invalid property: Knife#oDqkccn (Knife#oDqkccn, forced=false) Renaming the primary key
2015-05-31 00:01:56
2036
转载 ibatis 中isNull, isNotNull与isEmpty, isNotEmpty区别
在iBATIS中isNull用于判断参数是否为Null,isNotNull相反isEmpty判断参数是否为Null或者空,满足其中一个条件则其trueisNotEmpty相反,当参数既不为Null也不为空是其为true 判断之后做相对应的表达式操作如下代码: select count(cus_id) from cus_
2015-05-07 23:41:34
835
转载 每个程序员都应该知道的福利
眼下正是年后跳槽的黄金时期,园里的大牛小牛拿了去年的年终奖后,有些肯定想给自己加点工资。园里的大牛小牛都是我们中国软件业的精英,跳槽的时候 肯定手里握着好几个Offer, 不知道选择哪家。先不管工作的内容和前途,就工作本身的待遇,我们还是可以比较的。 HR是专门负责谈薪资的, 当我们跟HR讨价还价的时候, HR会介绍公司有的福利,而回避公司没有的福利。 作为程序员,我们一定要对跟我们利益息息相关的
2015-05-06 22:11:07
717
转载 优化 SQL SELECT 语句性能的 6 个简单技巧
SELECT语句的性能调优有时是一个非常耗时的任务,在我看来它遵循帕累托原则。20%的努力很可能会给你带来80%的性能提升,而为了获得另外20%的性能提升你可能需要花费80%的时间。除非你在金星工作,那里的每一天都等于地球上的243天,否则交付期限很有可能使你没有足够的时间来调优SQL查询。根据我多年编写和运行SQL语句的经验,我开始开发一个检查列表,当我试图提高查询性能时供我参考。在进行
2015-05-04 21:34:02
578
转载 使用poi导入、导出Excel内容
在报表中我们经常会用到导出数据、或者从外部导入数据。所以我通过poi来对excel进行导入导出操作。 支持功能: 1、可定制导入/导出数据字段 2、可以对导入/导出的数据进行编码转换。例:在用户表中的sex性别字段,数据存储为:0:男;1:女,则在导出数据的时候可以对编码进行转换,导出结果为男/女。同样在导入时,可以将文字转换为编码存储到数据库中。
2015-04-26 13:45:23
1613
转载 android开发 用到的十个好工具
本文作者:Tikitoo本文出处:http://www.jianshu.com/p/e4efec23d4d4在做Android 开发过程中,会遇到一些小的问题,虽然自己动手也能解决,但是有了一些小工具,解决这些问题就得心应手了,今天就为大家推荐一些Android 开发必备的小工具。Android PixelAndroidPixel 是一个简单的将不同的分辨率的换算工具,
2015-04-12 21:01:07
530
转载 JavaScript规范
原文: https://github.com/airbnb/javascript注:本人根据自己的开发习惯删除和修改了部分规范JavaScript规范内容列表类型对象数组字符串函数属性变量条件表达式和等号块注释空白逗号分号类型转换命名约定存取器构造器事件模块jQueryES5 兼容性性能资源哪些人在使用翻译JavaScript风格指南贡献者许可类型
2015-04-12 20:58:08
833
原创 android http://dl-ssl.google.com/android/eclipse/访问不了
在纯净的eclipse中安装adt插件: 这个dl-ssl.google.com域名经常会访问不了,可以使用dl.google.com。ping dl.google.com,正在 Ping dl.google.com [203.208.49.162] 具有 32 字节的数据:来自 203.208.49.162 的回复: 字节=32 时间=22ms TTL=48。打开C:\
2015-03-13 20:22:12
18342
原创 itext in action英文版教程demo中关于Hsqldb的设置
1.运行cmd,进入D:\Backup\desktop\tecnolegy\hsqldb\resources\db文件夹下,运行命令:java -cp hsqldb.jar org.hsqldb.server.Server --database.0 file:filmfestival --dbname.0 xdb成功后显示:D:\Backup\desktop\tecn
2014-04-27 11:32:08
1354
转载 项目延期原因及应对之道
每个项目经理都希望能有效地控制项目进度。但这件看似简单的事情,实际操作起来却常常不尽如人意。即使在成熟的大公司里,有着完善的项目管理流程,配备着一流的团队,项目延期事件还是频频发生。这里分析主要的三个原因。常见的原因之计划不清很多项目经理,计划做得很漂亮,却总是计划赶不上变化。原因 在于,有些时候,按工作量预估的发布日期却得不到领导的同意,领导有时会说我们现在就是和时间赛跑,这个项
2014-04-27 11:28:37
4705
转载 作为面试官,告诉你们互联网公司需要什么样的人
工作快三年,从最初的求职者,转换为现在的既是求职者,也是面试官的角色,心中还是很多的体会吧。 从去年第一次在做面试官开始,先后面试过10几位求职者,有校招,也有社招的同学。自己也出去找过工作,一些实际的体会告诉大家吧。 (一)简历 简历是求职者拿到面试机会很重要的一环,通常可以投递的方式就是智联,51job,等招聘网站,再个就是关注公司的招聘官网,可以
2014-03-29 22:30:08
1756
转载 关于eclipse的indigo和myeclipse 2013版中文注释时字体太小的问题
eclipse目前最新版代号indigo, 在win7上使用时中文注释时字体太小的问题. 为什么会这样?首先我们应该知道, 在win7系统中, font是有"显示"和"隐藏" 状态的. 默认情况下, eclipse使用的默认字体courier new是处于"隐藏"下的. 这样当eclipse打开时就会使用另一种字体consolas这时我们看到的字体就是根据我前面说的字体的状态, 大
2013-07-28 21:17:46
2957
原创 Mybatis 中#和$区别
#号与$区别:#号表示参数,$代表一个字符串。如:select a,b,c from table1 where id=#value#,传入参数后如:value="1",则可生成:select a,b,c from table1 where id=‘1’。select a,b,c from table1 where city like '%$value$%',传入参数后:valu
2013-05-30 21:52:31
11269
原创 Spring 学习笔记(一)
一.不能被Spring AOP事务增强的方法:1.基于接口的动态代理:除public外的其他所有的方法,此外public static也不能被增强。2.基于CGLib的动态代理:private、static、final的方法。二.混合数据访问技术框架:1.Hibernate+Spring JDBC或iBatis,事务管理器:org.springframework.orm.hiber
2013-05-27 22:50:42
4751
bootstrap3.0实用组件插件完整版demo
2015-06-15
Lucene全文搜索小例子
2010-08-16
java开发规范java编程
2010-05-03
JAVA程序常用设计模式
2009-12-25
IDEA算法(java)
2008-10-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人