2015年1月8日

logback基本用法

摘要: logger代码使用slf4j-api提供的统一接口(来自logback官网http://logback.qos.ch/xref/chapters/introduction/HelloWorld1.html)package chapters.introduction;import org.slf4j... 阅读全文

posted @ 2015-01-08 18:08 黄亚平 阅读(860) 评论(0) 推荐(0) 编辑

log4j:特定类的日志输出到指定的日志文件中

摘要: 问题描述:我有一个类foo.bar.Baz,我想让Baz这个类的日志输出到指定的日志文件中,其它的就使用默认的配置。log4j.rootLogger=ERROR, logfilelog4j.appender.logfile=org.apache.log4j.DailyRollingFileAppen... 阅读全文

posted @ 2015-01-08 09:56 黄亚平 阅读(4001) 评论(0) 推荐(0) 编辑

2014年10月15日

数字证书和数字签名

摘要: 数字签名服务器首先使用RSA算法生成私钥-公钥对,并只公开公钥。客户端拿到公钥就可以安全地与服务器通信了。举个例子,服务器发送的内容是abc,则有:content=abchash值=hash(content)数字签名=私钥加密hash值客户端验证签名过程:1. 公钥解密数字签名得到hash值2. 实... 阅读全文

posted @ 2014-10-15 10:05 黄亚平 阅读(291) 评论(0) 推荐(0) 编辑

2014年8月8日

mysqldump备份与恢复数据库

摘要: -- export all tables structure and datamysqldump -uroot -p db-name>/path/to/dump.sql-- export all tables structure and data,reset AUTO_INCREMENTmysqld... 阅读全文

posted @ 2014-08-08 22:11 黄亚平 阅读(501) 评论(0) 推荐(0) 编辑

2014年5月1日

设计模式——工厂方法

摘要: 目的定义创建对象的方法/接口,然后让子类来决定创建具体的类的对象。通过不同的类,使得实例化延迟至子类。特点必须引入继承,才能算是工厂方法模式。Found in JDK APIjava.util.Calendar#getInstance()java.text.NumberFormat#getInsta... 阅读全文

posted @ 2014-05-01 18:46 黄亚平 阅读(328) 评论(0) 推荐(0) 编辑

2014年4月18日

Oracle表分区

摘要: 当一张表很大时,查询效率可能急剧下降,特别是那些需要排序的查询。Oracle的表分区功能是一种解决方案。原理表分区的原理是水平分割表,就是把所有的行分散在几个分区。比如1-100行在A分区,101-200行在B分区。作用/优势提高查询性能;对应用程序端透明(不用修改增删改查SQL语句);可以对单个分... 阅读全文

posted @ 2014-04-18 18:31 黄亚平 阅读(264) 评论(0) 推荐(0) 编辑

2014年4月9日

多租户技术实现:Hibernate + AOP

摘要: Hibernate FilterHibernate Filter过滤特定租户ID的数据,实现共享表级别的数据隔离;提取出Filter的代码,通过AOP方式(Spring集成)作用于特定方法中;Filter只能作用于查询集合,对单个查找(比如通过主键)是不起作用的,因为这是没有意义的。Filter的定义包括两个部分,名字,参数(参数类型的值都是小写字母): Filter的使用声明也包括两个部分,名字,过滤条件:比如:salary > :amountname like :name:asOfDate BETWEEN eff_start_dt and eff_end_dt:参数名是参数,其它是数 阅读全文

posted @ 2014-04-09 10:10 黄亚平 阅读(2423) 评论(1) 推荐(0) 编辑

2014年4月3日

只通过索引访问数据

摘要: 有些时候,我们只是访问表中的几个字段,并且字段内容较少,我们可以为这几个字段单独建立一个组合索引,这样就可以直接只通过访问索引就能得到数据,一般索引占用的磁盘空间比表小很多,所以这种方式可以大大减少磁盘IO开销。如:select id,name from company where type='2';如果这个SQL经常使用,我们可以在type,id,name上创建组合索引create index my_comb_index on company(type,id,name);有了这个组合索引后,SQL就可以直接通过my_comb_index索引返回数据,不需要访问company表 阅读全文

posted @ 2014-04-03 09:26 黄亚平 阅读(185) 评论(0) 推荐(0) 编辑

2014年3月31日

数据类型之ENUM

摘要: 在很多应用中,会存在这样一种数据,性别(男、女、其它),国家(CHINA, USA...),衣服尺寸(SMALL, MEDIUM, LARGE),部门(MARKETINIG, R&D)。对于这类数据,建表时选取的数据类型一般是int或varchar,比较下来它们各有优势,int性能好,varchar直观易维护,但是数据库中有一种数据类型叫ENUM,可以兼顾int与varchar的优势,在应用程序端,对应的是String或者Enum类型。参考:The ENUM Type 阅读全文

posted @ 2014-03-31 15:16 黄亚平 阅读(550) 评论(0) 推荐(0) 编辑

2014年3月28日

Spring多数据源的配置与使用

摘要: 从单数据源转变到多数据源的环境,应用程序面临的其中一个问题是,不同的模块对应不同的数据源,如何透明地使用不同的数据源,达到程序的最小改动。Spring框架提供了自定义数据源路由功能,可以根据规则获取不同的数据源。实现思路:参考Oliver Gierke在stackoverflow上的回复。剽窃一张图片说明一下(原文链接),图片中的DynamicDataSource对应下面配置中的dataSource主要配置: ... 阅读全文

posted @ 2014-03-28 11:24 黄亚平 阅读(562) 评论(0) 推荐(0) 编辑

导航