我是谁?

日历

  • 五月 2008
    « Apr    
     1234
    567891011
    12131415161718
    19202122232425
    262728293031  

订阅日志

  • 通过Google Reader订阅
  • 通过抓虾订阅
  • 通过bloglines订阅
  • 通过狗狗订阅
  • 通过和讯博揽订阅
  • 添加到Live.com
  • 添加到My Yahoo!
  • 通过Rojo订阅

分类

存档

常用标签

最新日志

热门日志

随机日志

最新评论

  • flynetcn: 我认为bang先生提倡的“向上看”只是...
  • flynetcn: sql server的插入,和来源表的字段名是...
  • flynetcn: DECLARE @TEMP_TABLE TABLE (id int,count int) i...
  • 上海政府补贴培训网 » Java正则表达式的性能问题: [...] <!-- if (window.location.href.indexOf("h...
  • wf: 穷人是越活越...
  • Cherami: 呵呵,老兄,你可以做代理了,你也...
  • wmgreat: 我不是直接到快钱充值的。我办的浦...
  • Cherami: 呵呵,淘宝的充值页面好像比较贵吧...
  • wmgreat: 我在淘宝上充值好像从来没有遇见过...
  • chenjie: hi,liu son.该一下我的博客地址: i.mop....

天气预报

  • Valid XHTML 1.0 Transitional

RSS

Apr29th

对Sql Server彻底失望

今天为QA写一个报表,使用了存储过程,在里面定义了一个临时表, 然后向临时表插入数据,插入数据的顺序和临时表的字段定义的顺序不一样,结果出来的结果乱七八糟,查了半天也没有想到什么原因,后来突然想到是不是和顺序有关,修改了insert语句里面的字段插入顺序,问题搞定。
唉,不知道是我对SQL了解太少还是SQL server确实很烂。

例子如下:
DECLARE @TEMP_TABLE TABLE (id int,count int)

insert INTO @TEMP_TABLE
select x.id as id, count(x.id) as count
from xxx x group by x.id

insert INTO @TEMP_TABLE
select count(x.id) as count), x.id as id
from xxx x group by x.id

上面的那个insert可以工作,下面的不能,得到的结果和期望的是不一致的

Apr28th

房贷越还越多

房贷满一年,银行调整利率,结果还了一年以后,现在调整后的利息比上个月多出50多,还了一年的钱,本金和利息差不多多

Apr19th

网上购物被骗

前几天在淘宝上手机充值,找了个钻石信誉,100%好评的家伙充值,价格是94.5,给自己和老婆各充了一个,前两天那个家伙还经常在旺旺上上线,第三天下午就不在线了。结果第三天晚上我被加到一个反诈骗联盟的旺旺群里面,里面很多人也是被那个家伙骗了。后来我就上淘宝投诉,要求赔偿,结果淘宝说处罚那个人了,他妈的,那个人早就被处理一百次了,淘宝的处罚结果:

投诉内容:

我需要的不是处罚,是淘宝的经济赔偿!
那个鸟人早就被处罚过了,被封店了,你们现在还能给他什么处罚????
不要想着敷衍我的投诉,我投诉的不是那个鸟人,是淘宝!
在上一个投诉里面已经写得很清楚了,那个鸟人诈骗靠的是“钻石信誉,100%好评”。
你们没有尽到监督的义务,没有及时的发现那个鸟人的信誉是如何得来的,以至最近上十被那个鸟人骗了!

淘宝处理意见:
亲爱的会员,淘宝在此告知,被投诉/举报方因为违反"卖家拒按承诺使用支付宝"被处罚。处罚结果为 警告永久,限制发布商品30天,取消被投诉/举报方的评价权。本次处罚开始时间为:2008-04-19 09 时。 淘宝温馨小贴示: 大家好!我们是淘宝客服中心!经核实,被投诉方已被淘宝监管。根据投诉方的举证内容,淘宝核实卖家确实存在违反支付宝交易流程,在没有发货的情况下诱导买家先行确认收货的行为,投诉作“警告“处理。提醒买家通过支付宝交易时,注意交易安全,切勿在未收到货的情况下确认收货,以免不必要损失。沟通从心开始,请双方友好协商。如有需要或任何疑问请被投诉/举报方拨打我们24小时服务热线:0571-88157858或者在“客服中心”给我们留言 ,小二将竭诚为被投诉/举报方服务。目前淘宝推出满意度调研,欢迎被投诉/举报方对投诉处理的结果给予客观评价。满意度调研的具体路径:我的淘宝–投诉举报–已作出的投诉–查看–满意/不满意!感谢被投诉/举报方的参与!
Mar27th

信心测试的结果

呵呵,外服里面的信心测试结果:

结论:你对自己信心十足,明白自己的优点,同时也清楚自己的缺点。不过在别人眼里,你可能过于狂傲、甚至有点嚣张,你可以在别人面前表现得谦虚一点,这样对处理人际关系有好处。

Mar22nd

代码质量不好

呵呵,昨天做完了Performance review,呵呵,老大对于代码质量给我的评价让我很郁闷,说我的代码质量不是很好,唉,真是冤枉啊。
我现在基本上都是修改别人的代码,所以我在修改的时候基本上保持和原来一致的风格,然后有一次我完成了一个功能的原型的时候,他过来要code review,说了一堆的意见,但是我那个只是随手写写的原型代码,验证下自己的想法而已。
估计因为这这两个原因让他对我的代码质量印象很差,呵呵。

Mar14th

Jboss下查看数据库连接泄露的方法

发现连接池泄露后,使用JMX-Console,搜索服务CacheConnectionManager,调用

listInUseConnections

这样我们就可以得到当前使用的连接池的线程堆栈,很容易就可以知道哪个地方存在数据库连接泄露了。

Mar14th

JConsole

这个好像是JDK1.6里面新推出的,和JBoss的JMX-Console的功能类似,只是这个是GUI的,而且需要远程的服务器启动一些服务,在应用服务器的启动中修改以下配置(就是修改JAVA_OPTS):

-Djboss.platform.mbeanserver -Djavax.management.builder.initial=org.jboss.system.server.jmx.MBeanServerBuilderImpl -Dcom.sun.management.jmxremote  -Dcom.sun.management.jmxremote.port=9998 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

Mar12th

SAXParseException: Document root element is missing

Google了下,发现很多人遇到这个问题,但是和我的都不太一样,我是启动Jboss里面运行的代码没有问题,但是写的单元测试的代码会遇到这个问题,后来想起来我们启动Jboss的时候自定义了XML的解析器,把运行单元测试的那个东东如法炮制,问题解决

Mar11th

SQL Server性能问题

昨天遇到一个奇怪的性能问题,一个SQL对于某些用户特别的慢,需要2分钟以上,但是把那个SQL抓出来,把参数填进去直接运行又非常的快,只要不到2秒,猜测可能是和SQL Server的执行计划出了问题,以前遇到过类似的问题,在某些状况下,SQL Server的执行计划很糟糕,稍稍修改了下SQL,把参数中的一个常量值0直接写到SQL中,问题解决。
修改前的SQL片段(rfpId的值是0,1234两个值,修改后等于1234):
and x.yId in (:rfpId)
修改后:
and x.yId in (0,:rfpId)

原来遇到的一个性能问题类似,就是一个很复杂的SQL,对于某些用户也是非常的慢(该用户相关的数据比较多),查询可能需要2分钟,后来把复杂的SQL切分成两个SQL,总共的查询时间只需要不到1秒。

所以在使用SQL SERVER的时候,能够直接在SQL里面固定的值直接写到SQL里面,不要写太复杂的SQL,SQL Server的执行计划优化器存在很多的问题。

Mar11th

The method getXxx() is undefined for the type Yyy

今天遇到这个问题都快崩溃了,那个方法明明定义了,在JSP中用反射拿到类声明的全部方法并打印出来都可以看到的,但是修改回来后就是编译不过。
Google了下,也是很多人遇到,但是没有人解决,有人说是tomcat的问题,不太相信。
突然想到我的工程是hot deploy的,那个class有两份,一份新的一份旧的,jboss的tomcat在编译那个JSP时用的是旧的类,运行时用的是我Hot deploy的新的类定义。
重新编译发布整个工程,问题解决。

Feb21st

List的问题

今天遇到一个奇怪的问题,从一个List取一个SubList,然后对从SubList删除某些元素,然后再从List里面删除SubList里面剩余的元素,但是所有的删除都没有找到匹配的东西,并没有删除成功,但是原来的List出问题了,它的内容出现不规则的变化,有时候变成0,但是有时候不重新取数据的话还能恢复成原来的状态。
呵呵,怀疑这个是JDK的bug,但是没有时间验证了,做个记号。
现在的解决方法是拿到subList后再创建一个新的List,把SubList的内容加进去,这样就没有问题了。
从JDK的API看,从List得到SubList只是得到了原来的List的一个view,所以进行这些操作的时候原来的List和View之间在进行处理的时候可能有问题。

Feb5th

盛大推广员

呵呵,突然看到这个什么推广员,说得很好,就注册了一个,哈哈

看到的就到下面的页面注册盛大通行证哈:
http://tg.sdo.com/804653494

Feb4th

盛大通行证登陆错误

前几个月注册了个账号想玩纵横天下,结果登陆一直失败。
这次又听到别人提到这个游戏,就又注册了下,第一次登陆成功了,然后第二天又不能登陆了,重置密码后有登陆成功了,而一个朋友说他注册了四个账号没有登陆成功过。
上Goole上搜索了下,发现百度知道里面N多人问这个问题,回答也是五花八门。
后来我仔细的回忆了下登陆的过程然后验证了下自己的猜想,原来盛大的通行证登陆页面存在一个BUG:

填写那些登陆信息后不能按回车登陆,而应该点击那个登陆按钮登陆!
由此可见盛大的测试团队工作不力,呵呵

Jan21st

Travian自动升级脚本

Cherami 其它 阅读全文 none

自己写的Travian自动升级脚本,在FF下使用,需要安装GreaseMonkey扩展。

安装好GreaseMonkey后就可以安装了,右键另存到本地,然后重新命名为travian.user.js,然后拖到FF中即可安装。

注意,自动升级的策略是先升级级别低的,这样做是为了资源最大的利用,以及各种资源生产的平衡。

Jan17th

岳父过世

Cherami 人生 阅读全文 none

历时半年多,癌症晚期的岳父终于走完了他的人生历程,唯一值得欣慰的是他实现了他的全部心愿。