`
qing_gee
  • 浏览: 118138 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论
文章列表
我相信,看到标题后的你一定很好奇,究竟什么样的Java程序员算是在“备孕期”呢?在我看来,“备孕期”主要指那些初入Java编程的新人,他们正下足功夫准备,以求在10个月后以高薪的姿态进入一家软件公司——此时正是职 ...
前言:《程序开发心理学》,书名就让我觉得找到了启明星,我最近亟需要探究程序猿的内心世界,尤其是看到“程序开发团队”,我知道,我必然会从其中找到自己想要的东西,“探究内心世界,感知做猿道理”。   开发团 ...
前言:和出资人合伙搭建了舒适的办公环境,正式踏上了创业的路上,而在这条路上,首先要做的就是:从0到1打造属于我的高效团队,然而这并不容易,有幸拜读《技术管理之巅》,真是让人兴奋不已。   创业维艰 其实,有的时候机会来得好像比较容易,不知道是自己幸运还是自己的努力有目共睹,在我26岁的人生中,终于可以自己做主来搭建一个团队,一个技术团队。创业最需要什么?显然就是人才!   在没有离开上一家公司时,我一直认为在其职谋其事,所以即使出资人拉拢我创办公司,我依然觉得我在没有离职之前就不要做离职后的事情,所以我对人员并没有太多的付出(当然,我也有意谈过一个将要离职的同事),然而最后被他回绝 ...
前言:横看成岭侧成峰,远近高低各不同。不识庐山真面目,只缘身在此山中。苏轼的这首诗和金出先生的“像外行一行思考,像专家一样实践”有着异曲同工之妙,原本以为这本书不太适合自己阅读,然而认真的读完试读文章 ...

伪异步IO

    博客分类:
  • Java
前言:同步阻塞IO会有很大的性能问题,那么使用线程池控制呢,就有了伪异步IO,通过线程池对消息队列和最大线程数进行控制,例子见下 package com.honzh.mwq.bio.server.handler; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; publ ...

BIO

    博客分类:
  • Java
前言:今天在学习netty,看了BIO一章,内容也非常的简单,书中的例子也非常的简单,我又把其中的代码敲了一遍,感觉虽然简单,却受益匪浅,使我对阻塞同步式IO有了更清晰的认知。 经典的BIO例子,就是有一个服务端,负责监听客户端连接,然后为每一个客户端建立线程,处理客户端的请求,处理完成后销毁。 通过代码,我们就可以看出来,同步阻塞IO的弊端就是当客户端连接数膨胀后,系统的性能将会急剧下降,因为为每一个客户端开启一个线程,然后处理完成一个请求关闭,将会造成大量的内存垃圾。 package com.honzh.mwq.bio.server; import java.io.IOExce ...
前言:最近总需要一个ftp服务器向远程服务器传输文件,刚开始的时候使用的是Windows自带的ftp服务,通过iis管理目录下加载ftp服务来启动默认的ftp工具,但是需要系统安装文件,然后今天在创建ftp服务时,没有这个安装文件,在网上找了一款名为xlight ftp server的工具,用起来还不错,有简体中文版的,见一下地址 http://www.xlightftpd.com/cn/   有需要的人可以试用下,还不错。
前言:之前写了一篇dwz的树形下拉框组件,只能满足单页面的使用,但是面对实际应用时,以上应用暂时不能满足,于是乎又重新对树形菜单进行改造。  然后先说一下思路,本思路有很大弊端,也希望有看到的大牛有好的办法时,请多多指教。 思路:页面上通过一个input标签进行value值和title值的动态设定 <span class="combo"> <input type="text" id="memlistserial" name="proxyserial" class="c ...
前言:eclipse一直作为我的首选开发工具,多少对其有些偏执,但是以前在写前端代码时,总是没有找到合适的方法对语法提示进行改善,昨天有幸在读《锋利的JQuery》的时候看到了aptana,那么今天就在尝试如何让其作为eclipse的插件安装成功。   第一步:确认eclipse的版本,注意aptana的官网上说明studio3.6插件需要的eclipse版本要在3.5或者更高,我刚开始的版本可能比较低,于是就先到eclipse的官网上下载最新版的luna(dota里面为月之骑士,我最喜欢的英雄,没有之一),下载完成后,注意环境变量中jdk的版本是64还是32位   第二步:在ecli ...
前言:从同事的http://www.cnblogs.com/ImaY/p/4036154.html该文章处获取灵感,对dwz切换页数时的bug进行修复,期间主要是几个地方的参数名称不一致导致的。   第一点:报错如下 错误 写道 TypeError: form[DWZ.pageInfo.numPerPage] is undefinedif (args["numPerPage"]) form[DWZ.pageInfo.numPerPage].value = args["numPerPage"]   第二点:经过调查,发现dwz的dwz.ajax ...
前言:在之前的博客中写了一个不在dwz环境下制作的树形下拉框,但是使用dwz后,发现需要为dwz扩展一个自己的组件,通过value属性为服务端传递请求参数,通过title属性显示树形下拉框当前选中项目,效果图见如下:   改造步骤见如下: 第一步:准备材料,可在附件中下载combotree.7z ,目录如下   第二步:在dwz的index.jsp页面中准备菜单 <!-- 下拉框的树形菜单 --> <div id="menuContent" style="display: none; position: absolute;&quo ...
前言:今天使用到dwz的combox组件,根据官方API上写的“value属性则用来指定combox的默认值”,但是经过实践发现,该属性并没有起到作用,结合到dwz的检索功能,还会重新刷新当前navTab,经过对dwz源码的分析,做了以下的调整   ...
前言:今天在写改代码的过程中,代码中有许多的多余注释,需要替换掉,刚开始的时候一个个删除,后来实在太痛苦,突然想到了使用正则替换,下面就说一下如何使用eclipse替换   1.使用ctrl+f打开替换或者查找窗口,选中Regular expressions正则模式 2.我的文件中有很多 /* */public String getEmail() /* */{ /* 269 */return this.email; 3.使用以下模式进行替换,正则我就不多介绍了,大家都知道\s是空白\d是数字,*是匹配零个或多个  最后替换就行了
前言:小小扎马,让我明白好的编程思路,能够让你事半功倍,而如果思路偏了,那么给你带来的痛苦可是要命了。        今天在做一个项目的时候,需要为用户随机生成一个四位编号,编号可以选择区间,并且可以跳过指定数字,另外不能和数据库中已存在的编码重复。刚开始的时候,我的做法是先依据0-9生成一个随机的四位数字,然后再判断该数字是否在指定范围,并且是否包含有指定数字等等,最后发现,这个想法有很大的漏洞,如果指定范围为0-1,我的while写法要跑上很大一阵功夫。          那接下来我不知道突然一个想法浮现在脑海,便产生了以下代码 /** * 根据开始编号、结束编号、带四标记、 ...
前言:在网上找了N多的例子,如何直接设置tomcat运行时,通过request.getRemoteAddr()来获取对应的ipv4地址,而不是win7默认的ipv6,那么反复的实验后,终于找到了,当然还是要感谢网上其他的人让我找到了-Djava.net.preferIPv4Stack=true。   第一种,如果你是直接在eclipse的tomcat环境下运行,那么,你只需在tomcat的运行参数中加入“-Djava.net.preferIPv4Stack=true”,位置在run config中的vm argument。   第二种,如果你是通过tomcat的start.bat进行启 ...
Global site tag (gtag.js) - Google Analytics