- 浏览: 511198 次
- 性别:
- 来自: 深圳
最新评论
-
di1984HIT:
学习了~~
jackson JSON对象映射出多余字段的bug -
lvye351:
当然,在tomcat还有JPDA这种方式 ,来远程debug: ...
配置linux下tomcat的远程debug -
hety163:
好,语言简单明了易懂
Http和Socket连接区别 -
高军威:
<b>行不行</b>
XSS转码 && struts2 property标签的bug -
chjy1983:
请教下,我这样:JSONObject jsonObject = ...
HttpClient4 POST数据及问题
文章列表
基干基干,就是基础的干部。。职级很低,有的甚至无职级,临时指挥几个兵而已。
最近的项目有幸能有机会带一个小team,忙了一个月还是小有一些感慨,于是也做了一些思考,整理下来备忘:
1.基干的工作 ...
很有一阵子没更新博客了,连微博都是懒得写。当然是跟心境有关系。
突然会想起当年非常喜欢看javaeye上的帖子,于是在csdn几次当机故障之后果断把blog搬到javaeye,觉得这里比起CSDN靠谱的多。 几年过去物是人非,javaeye被CSDN收编,被oracle挟持改名iteye,还有满首页的文章看上去也不怎么合口味。只能说一时间的兴起不容易,而基业长青则是难上加难。对于人生也是一样。
由于工作本身的原因,已经比较少去关注java的开源项目和java本身,一来实践和解决问题的机会比较少,二来也是思想上纠结的原因。
我 ...
世界上最远的距离往往就是java到c++,而不是pptA到pptB。
管理学和职场管理的技能,可以走遍大江南北;但是同一个领域,哪怕你是专家,只要是敲代码的岗位,往往也迈不过编程语言不同的沟。
适当的学会敲代码之外的事情,才是现实社会中生存之道。每个开发,都是伤不起的:)
要开始储备职业规划和管理的知识了
场景1:数据库存有 xx,yy,zz,aa,bb 等字段, 但是前台根据不同场景需要选择性的展示部分字段,并且需求频繁调整。
这里的需求调整可以有前台展示的调整,也会有后台DB字段的调整
场景2:自定语法的模版语言 ...
一。了解背景
下面两张图,比较html转义和js的转义。
一定要区分清楚的是,内容回写页面,一定要做的是JS转义!!而不仅仅是html转义
从上面两张图可以看出,js里面需要转义到的 单引号',反斜杠\ 均不在html转义字符之列!(如果针对XSS的话,只要对
<
>
'
")
二。<s:property value="xx"/>的稀烂之处
1.这个标签默认是带了html转义的,即完全等同于<s:property value="name" escape="tru ...
近来看美剧《Lost》,可惜下载的rm文件名太长,很难找到自己看到第几集了。。于是又想起多年前的一段批量文件改名脚本,这次折腾成了swing的,支持DND(drag and drop)
bug肯定有不少,不过折腾这个文件肯定是足够的,呵呵。直接使用replaceAll替换
试了一下进度条组件,其实很容易用的,就是要注意需要同时设置min&max value
支持买盐
03/17 14:25:40 [ERROR] FileUploadInterceptor: File too large: picFile "upload_276c1698_12ec27b8b1d__8000_00000052.tmp" 780831
这东东在struts2默认拦截器栈里面。 but, 拦截之后并非返回“input”的result,而是会让action继续执行下去!!
也就是说如果不在action里面去手动捕获,你会发现上传文件的action执行成功,但是看不到图片。
解决方式:
if(getFi ...
中国首届微博开发者大会在北京举行,这是国内微博行业的首场技术盛宴。作为国内微博市场的绝对领军者,新浪微博将在此次大会上公布一系列针对开发者的扶持政策,以期与第三方开发者联手推动微博行业的整体发展。图为微博平台首席架构师杨卫华演讲。以下为演讲实录:大家下午好,在座的大部分都是技术开发者,技术开发者往往对微博这个产品非常关心。最晚的一次,是12点多收到一个邮件说想了解一下微博底层是怎么构架的。很多技术人员对微博的构架非常感兴趣,就是一个明星他有300万粉丝,这个技术怎么来实现?今天在这里跟大家分享一下微博的底层机构,让大家对微博的底层技术有更好的了解。另外不管是做客户端、1.0、2.0、论坛、博客都 ...
1. 鼓起勇气去谈加薪,绕来绕去还是被绕过去这个话题。看起来是秘而不宣啊。也想起来当年比较傻。。面试的时候不知道要大刀
2.在组织不完善的前提下,对公司不利,对个人是有利的! 确实,就像股票从1到10,比起200到210来说,收获会更多。
只是在被动的环境下,个人需要发挥主动、能动、敢动的特性,不然一定会消沉下去。
3.重复、浪费都是某种程度上合理的,唯一不能浪费的是时间。 2010的电子商务是烧钱的时代,就像淘宝烧了这么久,突然大家发现盈利居然到50E了。有时候投入就是为了达到一种垄断, 浪费和重复的投入对与公司战略也会是有整体价值考量的。唯一不能浪费的,就是个人的职业生涯, ...
下面的代码是一个实例化SocketChannel的过程:
SocketChannel channel = SocketChannel.open();
//要设置连接超时
channel.socket().connect(addr,connectionTimeOut_ms);
//设置读超时
channel.socket().setSoTimeout(timeout_ms);
然后基于NIO的一贯性崇拜,会出现channel.read()读取数据
int java.nio.channels.ReadableByteChannel.read(B ...
直接上代码了:在页面input标签中嵌套s:property赋值语句
<input id="Category" name="Category" value='<s:property value="Category"/>'/>
仔细看,为了不使得input标签里面双引号套双引号,在value的地方使用了单引号'做范围界定。今天被测试发现一个悲剧的bug。。
如果value的值带有单引号',用s标签输出到页面就会被截断。
<input id="fuwuCatego ...
先看一段代码:the IP address of the local host. 在大多数机器上都可以取到本机ip
InetAddress.getLocalHost().getHostAddress()
但是多网卡配置的时候,就悲剧了:下图这个机器使用上面的命令取回的是127.0.0.1。
用ifconfig看网卡:
这个时候就需要枚举多网卡判断了
Enumeration<NetworkInterface> netInterfaces = NetworkInterface.getNetworkInterfaces();
然后结合IP ...
1.这种攻击不会出现在BS的应用中,因为要从web页面模拟攻击比较累。而CS程序则天生可能会隐藏这种问题。
2.经过认真的跟进,最终发现问题出在sizeThreshold 这个参数上。
让人费解的来由是:
org.apache.commons.fileupload.FileUploadBase这个基类351行,解析request调用了
OutputStream os = item.getOutputStream();
跟进去看方法实现:
public OutputStream getOutputStream()
throws I ...
先从一句代码开始,//创建固定线程数的线程池:
newFixedThreadPool = Executors.newFixedThreadPool(THREAD_POOL_SIZE);
跟进这个方法,发现是一套默认参数创建出的ThreadPoolExecutor,而实际上,构造参数的参数是很多的,有门道
public static ExecutorService newFixedThreadPool(int nThreads) {
return new ThreadPoolExecutor(nThreads, nThreads,
...
偶然间从一个blog上看到这个项目,于是就花时间看了看,真的值得一试.
优点比较明显,总结了几个自己适用的:
1.直接使用,无需重启需要监听的进程。
下载btrace,解压,写监控类, 然后获取需要监控程序的pid进程号,运行bin/btrace <pid> HelloWorld.java ,就这么简单一气呵成。 即时启用,即时关闭。
e.g(每次进程start()都会打印一条消息)
import com.sun.btrace.annotations.*;
import static com.sun.btrace.BTraceUtils. ...