- 博客(47)
- 收藏
- 关注
原创 Timer scheduleAtFixedRate与schedule的区别
scheduleAtFixedRate与schedule的区别主要是基准时间点以及第一次执行时执行的次数 timer.scheduleAtFixedRate(TimerTask, startTime, period): 如果执行时间executeTime>startTime,则一执行就会从startTime开始(startTime时就会跑一次),每隔peroid跑TimerTa...
2014-04-15 17:37:06
365
原创 ServletContextListener获得spring注入的bean对象
public class SystemInitListener implements ServletContextListener { private Logger logger = LoggerFactory.getLogger(getClass()); private CityService cityService; private WebApplication...
2014-04-15 16:16:41
898
原创 MapReduce在相似度计算中的应用及优化
需求:计算用户的相似度,有用户列表U和特征列表F以及用户和特征的关系<U,F>。 根据<U1,Fn> ∩ <U2, Fm>的交集数来判断U1和U2的相似度。解决方法:一、用户维度的Join最暴力低效的方法,因为用户量一般很大,所以join效率极低。一般不考虑。二、特征维度将用户对特征的矩阵转成特征对用户的矩阵。1、转成特征对用户的矩阵...
2014-03-26 17:05:57
588
原创 Hadoop 新版api中的JobControl实现
依赖关系组合式MapReduce 答案是采取JobControl,直接上代码。JobControl依赖关系组合式MpaReduce。旧版实现:org.apache.hadoop.mapred包下Configuration job1conf = new Configuration();Job job1 = new Job(job1conf,"Job1");.........
2014-03-24 17:56:54
249
原创 Hadoop远程调试
由于mapreduce为child进程,所以不能直接通过bin/hadoop文件中开启远程调试端口,具体操作如下:1、 选定一台调试机器,修改mapred-site.xml文件,添加如下配置:<property> <name>mapred.child.java.opts</name> <value>-agentlib:...
2014-03-24 15:25:33
162
原创 hbase读 源码分析(0.96)
一、调用RPC框架:Caller和Callable主要对象用途caller主要是进行rpc的重复尝试调用;callable由caller来调用,负责寻找目标regionserver以及进行rpc调用。流程图说明1、hbase客户端的rpc调用框架主要通过RpcRetryingCaller来调用,它的核心方法callwithRetires()会尝试一定次数直到成功或超...
2014-01-07 15:41:32
308
Solr空间索引原理及源码分析
看不到图片的可到我的github博客上看。 solr的4.0-4.1版本使用GeohashField.createSpatialQuery(), 未使用IntersectsPrefixTreeFilter(继承于AbstractVisitingPrefixTreeFilter)。4.2版本开始使用IntersectsPrefixTreeFilter。4.2和4.3及以后的区别好像只是小...
2013-12-30 23:08:00
293
Spring MVC3 默认页面(welcome-file)问题
<servlet> <servlet-name>spring3mvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> &l...
2013-12-23 17:36:00
398
Solrj JavaBinCodec分析
solr请求回来的数据为字节流,solrj通过JavaBinCodec对其进行解析。一、JavaBinCodec的主要标识tag各tag的定义: public static final byte NULL = 0, BOOL_TRUE = 1, BOOL_FALSE = 2, BYTE = 3...
2013-12-03 12:22:00
230
java调用linux脚本
有时候要使用Java调用linux脚本,且需要设置超时时间,以下是我封装的简单的类:超时使用Thread.join(time)来实现。public class ProcessUtils { /** * @parma taskName 任务名 * @param processName 进程名 * @param cmd * @param timeout ...
2013-11-18 11:53:00
176
Java调用Hbase
遇到的问题1、java调用hbase时(hbase0.96)报以下错误:Exception in thread "main" java.io.IOException: java.lang.reflect.InvocationTargetException at org.apache.hadoop.hbase.client.HConnectionManager.createConne...
2013-11-16 18:06:00
295
hadoop 2.2.0安装
hadoop 2.2.0相比于hadoop 0.20.X的安装很不一样。1、准备三台机器 test01(master),test02(slaves), test03(slaves),并把test01的公钥放到test02/test03的~/.ssh/authorized_keys以打通master和集群的通信。2、下载hadoop-2.2.0.tar.gz3、在hadoop 2.2....
2013-11-16 12:40:00
129
solrj数据请求流程
一、写流程add1、SolrServer的add方法:创建UpdateRequest对象,UpdateRequest.add(docList)。然后调用UpdateRequest.process(SolrServer)方法。2、UpdateRequest.process():调用SolrServer(一般是HttpSolrServer)的request方法 (这里设置了ElaspedTi...
2013-11-13 15:47:00
149
eclipse调试solr
1、下载solr源码,src包或svn(我这里的版本的是4.4)2、使用ant编译,ant需要将ivy-xxxx.jar 复制到 %ANT_HOME%\lib。然后ant eclipse。3、这时就可以将solr源码导到eclipse中。4、找到StartSolrJetty类,该类可以在本机以Main的方式启动一个Solr服务。5、修改StartSolrJetty,结果像下面这样...
2013-11-12 23:19:00
155
hbase安装部署
下载hbase-0.94.12.tar.gz并解压一、本地模式编辑conf/hbase-site.xml,添加hbase.rootdir, 不是hbase.root.dir<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <co...
2013-11-07 20:47:00
355
hbase eclipse调试源代码
1、引入源代码下载hbase的源码,用mvn eclipse:eclipse来使工程可导入eclipse,其中需要安装protoc(需要gcc环境)。导入hbase源码后,hbase-common中的util包中的Bytes类中的importsun.misc.Unsafe;会报错,在eclipse里不能直接编译,要到项目的属性,Java Compiler,Errors/Warnings(...
2013-11-07 19:35:00
166
java访问hive的方式
保证hive --service hiveserver1、jdbc方式hive的lib下的jar全部都包含进去,另外要包含hadoop-0.20.2-core.jar/** * 通过jdbc方式访问hive */publicclass HiveClient { privatestatic Connection conn = ...
2013-11-07 18:58:00
285
hive安装/启动以及源码调试
hive安装1、安装hadoop并启动2、安装hive3、配置metastore(默认是derby,多用户操作时要改成mysql库)metastore_db无权限,或在EmbeddedMetastore模式下启用多个客户端都会报Errorinmetadata:java.lang.RuntimeException:Unabletoinstantiateorg.apache.h...
2013-11-07 18:57:00
215
SolrJ源码:基本文档和域对象
SolrInputDocument相当于Document,而SolrInputFiled就是域。SolrInputFiled也存了域名称默认boost都是1.0, boost用于标准化因子:docBoot*fieldBoot*? 即文档或域的重要程度一、SolrInputDocument对象:输入文档对象class SolrInputDocument implements Map&l...
2013-11-01 00:28:00
171
空间位置存储方案
空间查询原理:先缩小查询范围,得到对应的点集,再对点集一一进行过滤。如geohash的1、near N: 在query点的geohash为中心的九格范围内的点(通过geohash前缀匹配来快速查找),计算这些点与query点的距离再排序得到最近的N点。(这只是简单情况,当N很大超过九格内的所有点数时就要外扩)2、near distance: 缩小范围与1方法一样,再得到可能的点集...
2013-09-23 22:20:00
190
快排以及快排的中位数算法
1、快排算法 java/** * quicksort to sort array * */public class QuickSort { int partition(double a[], int low, int high) { double tmp = a[low]; int i = low, j = high; while (i < j) ...
2013-08-28 11:53:21
713
原创 Eclipse Virgo插件
这两天被virgo整的好惨,就这一个小插件。。。 官方Wiki说明http://wiki.eclipse.org/Virgo/Tooling#Install_Eclipse 其实一早就能成功,在new Software输入http://download.eclipse.org/virgo/milestone/tooling,再只要选择Virgo Tooling一项即可。这样插件...
2012-07-19 21:51:47
281
原创 spring mvc中的乱码解决方法
今天在做spring mvc 的ajax,使用@ResponseBody时返回乱码,找到了一种解决方法在servlet-mvc开头加上这段 <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" > <property name="mes...
2011-03-06 11:39:13
103
原创 hibernate移植多对多关系
User和Role多对多,同时存在临时用户TempUser,现在的需求是把TempUser的Role移到User中,(Role均是mappedBy被维护对象) user.setRoles(tempUser.getRoles());tempUser.setRoles(null);//不这样的话就会报found shared references to a collection 异常(在集...
2011-03-04 21:26:27
84
原创 java 可变数组参数
今天用了java的可变数组参数Object...,就可以传入0到多个Object对象但当如果是这种情况则要注意:doA(Obejct... values){}doB(int a, Object... values){doA(a,values);}main中{doB(1,2,3);//这时反映在doA中的结果将为(1,Object[]),而不是(1,2,3)}...
2011-03-03 20:30:40
140
原创 HQL主动抓取关联表数据
众所周知,lazy=false时,在取parent的同时也能取得children的数据,但很多情况下这是不需要的,很会影响性能。可是如果变成lazy=true却又有一些不便之处,比如user和role,要显示user的所有role,如果得到user后,再根据user select出role,这样效率是很差的。解决方法:利用fetchselect u from User u inner ...
2011-03-03 14:56:45
143
原创 smartupload支持中文编码版
旧版的smartupload.jar不支持中文,我的是myFile.getFileName()时如果有中文路径就会乱码 解决方法:直接改它的源码。要改两个地方一、upload()方法:找到localObject = new String(this.m_binArray, this.m_startData, this.m_endData - this.m_startData + ...
2010-05-16 16:17:48
266
原创 深入研究java对String字符串对象的创建以及管理
转:Constant Pool常量池的概念:在讲到String的一些特殊情况时,总会提到String Pool或者Constant Pool,但是我想很多人都不太明白Constant Pool到底是个怎么样的东西,运行的时候存储在哪里,所以在这里先说一下Constant Pool的内容.String Pool是对应于在Constant Pool中存储String常量的区域.习惯称为String P...
2010-05-11 20:39:59
117
myeclipse cvs安装配置
今天自己玩了下CVS ,版本CVSNT2.5.03(附件下载)新建一个文件夹CVS,在其中建你的空工程目录MyProject安装成功后<!--StartFragment -->选择Repository,确定即可。<!--StartFragment -->要把All users are read删掉,否则不能上传更改确定后CVS服务端就安装...
2010-04-16 17:30:40
149
提高JSP执行效率的七种方法
转: 你时常被客户抱怨JSP页面响应速度很慢吗?你想过当客户访问次数剧增时,你的WEB应用能承受日益增加的访问量吗?本文讲述了调整JSP和servlet的一些非常实用的方法,它可使你的servlet和JSP页面响应更快,扩展性更强。而且在用户数增加的情况下,系统负载会呈现出平滑上长的趋势。在本文中,我将通过一些实际例子和配置方法使得你的应用程序的性能有出人意料的提升。 其中,某些调优技术...
2010-04-09 14:04:19
98
本域内网页数据的提取与导入(类似MAXTHON的智能填表)
目的是要完成本域内所有网页数据(文本框)信息的提取与导入。方法:为了达到能将不同网页(不能跨域)的数据(文本框)进行提取,我采用了IFRAME,即动态赋予IFRAME的SRC值。现在关键是要能在IFRAME上进行矩形区域的选择,但IFRAME只能在被引用的网页中添加鼠标移动等事件,不能通过父页进行定义,所以要考虑在主页上对IFRAME进行区域选择(这就要求IFRAME的宽高必须达到最大on...
2010-04-08 10:38:48
92
前台文本框数据与EXCEL的导入与导出
主要实现两个功能点:(文本框只是单纯在一张图片上,都是无规则的,但是会在同列或同行上,大小长短不一)1。将前台指定区域内的所有文本框的值导出成EXCEL表2。将EXCEL表中数据放到前台指定区域内的所有文本框中 步骤:导出1。用JS选择矩形区域2。获得所选区域内文本框信息(通过与所选区域坐标是否相交或包含来判断是否在区域内),将各文本框信息组装成长串(也要把每个文本框被...
2010-03-31 14:09:36
165
点击按钮出现上传文件框
<!-- 隐藏的文件上传组件,点击IMPORT时让该DIV显示即可--> <div id="upLoadForm" align="center" class="area" style="width:200 height:200 visibility:hidden"> <form name="upform" method=&qu
2010-03-31 13:49:17
577
iframe使用心得
<iframe>是框架的一种形式,也比较常用到。例子1。<iframe width=420 height=330 frameborder=0 scrolling=auto src=URL></iframe>width插入页的宽;height插入页的高;scrolling 是否显示页面滚动条(可选的参数为 auto、yes、no,如果省略这个参数,则默认为auto...
2010-03-30 14:55:00
181
js 鼠标画矩形选择区域
今天一直在纠结JS画矩形,找了很多资料,终于找到个像样点的了,自己改了点,不过还存在一些问题<form name="myForm" action="exportToExcel" method="POST"> <div style="position:absolute;top:1260px;left:400px;z-index:-1;"> <in
2010-03-30 14:30:00
1363
两个矩形是否相交
假定矩形是用一对点表达的(minx,miny)(maxx, maxy) 那么两个矩形rect1{(minx1,miny1)(maxx1, maxy1)}, rect2{(minx2,miny2)(maxx2, maxy2)} 相交的结果一定是个矩形,构成这个相交矩形rect{(minx,miny)(maxx, maxy)}的点对坐标是: minx...
2010-03-30 10:33:53
132
Java Excel文件下载
import jxl.Workbook; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; public class ExcelDownload extends HttpServlet { pub...
2010-03-29 14:55:39
78
JAVA同步
转 java中synchronized用法 收藏 synchronized的一个简单例子public class TextThread { /** * @param args */ public static void main(String[] args) { // TODO 自动生成方法存根 TxtThread tt = new TxtThread(); ...
2010-03-22 15:37:10
97
Timer schedule scheduleAtFixedRate
schedule和scheduleAtFixedRate的区别在于,如果指定开始执行的时间在当前系统运行时间之前,scheduleAtFixedRate会把已经过去的时间也作为周期执行,而schedule不会把过去的时间算上。比如SimpleDateFormat fTime = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); Date d1 = ...
2010-03-22 09:05:18
246
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人