关于oracle中的group by

Posted by 猪头小队长 | 程序设计 | Wednesday 29 September 2004 10:16
有这样一张表(buy_detail),存放的是用户的购物信息,字段buyTime是购物时间,精确到秒。
现在要统计用户每天的消费情况:
select name,to_char(buyTime,’YYYYMMDD’) as ti , sum(cost)
from buy_detail
group by name,ti
这样做是有语法错误的,应该为:
select name,to_char(buyTime,’YYYYMMDD’) as ti , sum(cost)
from buy_detail
group by name,to_char(buyTime,’YYYYMMDD’)

[@more@]

利用流来clone对象

Posted by 猪头小队长 | 程序设计 | Thursday 23 September 2004 18:11

现在需要clone的对象是HashMap needCloneMap,要将其clone为cloneMap.

操作如下:

ByteArrayOutputStream out = new ByteArrayOutputStream();
ObjectOutputStream objectout = new ObjectOutputStream(out);
objectout.writeObject(needCloneMap);

ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
ObjectInputStream objectin = new ObjectInputStream(in);
HashMap cloneMap = (HashMap) objectin.readObject();

克隆完毕。

[@more@]

解释问题与解决问题

Posted by 猪头小队长 | 简单生活 | Wednesday 22 September 2004 09:26
昨天在水母上看到lpqi网友说到这样一句话:辩证法可以解释任何问题,但不解决任何问题。
看了这句话颇以为是,当然我对辩证法不是很了解,我是指后半句,有的时候有的人习惯于明白很多事情,这样无论什么事情,都能解释,但是如何才能真正的解决问题就不清楚了。不过总能解释问题的去做客服比较不错。呵呵。

[@more@]

变形金刚应该是黑白的

Posted by 猪头小队长 | 简单生活 | Tuesday 21 September 2004 18:46

昨天室友在看变形金刚,于是跟着看了几眼,感觉是那么的亲切和陌生。

记忆中的变形金刚是黑白的,因为电视机是黑白的,小时候自己都能讲变形金刚中的主要博派人物一一画出,可是现在看着色彩丰富的汽车人,却有种陌生的感觉。还是记忆中的东西是美好的。

[@more@]

关于oracle的CLOB类型的字段使用存储过程的问题

Posted by 猪头小队长 | 程序设计 | Tuesday 21 September 2004 18:40
在Oracle中,如果字段的类型是CLOB(不知道其他类似类型是否也是如此),那么在使用存储过程的时候,将参数声明为Varchar2格式,那么在调用存储过程的时候可以直接传入String类型的参数。
例如:
CREATE OR REPLACE PROCEDURE SP_CreateTemplate(
p_Template IN VARCHAR2,
p_out OUT NUMBER
)
这里p_Template的类型其实是CLOB,但是在这里写成了Varchar2之后,那么调用的时候,可以:
stmt.setString(1, "this is a template");

[@more@]

String.replaceAll(str1,str2)方法的缺陷

Posted by 猪头小队长 | 程序设计 | Friday 17 September 2004 16:38

在jdk1.4以前,java中没有现成的字符串替换的方法,jdk1.4以后终于有所改观,提供了此方法。但是此方法不够人性化,没有掩盖它内部的实现方式(使用正则表达式实现)。

例如:
"a.bcd".replaceAll(".","#")

这里,我期望的结果应该是"a#bcd",然后他的返回值却是"#####"。因为在正则表达式中,"."是一个特殊字符,代表任意一个字符。

而我们在使用jdk的时候,应该不管你是怎么实现的,我要的就是将所有的"."转化为"#",所以在jdk的此方法中,应该先将用户输入的字符中所有的特殊字符经过转义之后再使用正则表达式替换。

例如:将"."先替换为"."。等等

这里有一个好玩的东西,如果要将字符串中的""全部转化为"",猜猜该怎么写?
应该是:

"abcd".replaceAll("","");

哈哈

[@more@]

初试 FindBugs

Posted by 猪头小队长 | 程序设计 | Friday 17 September 2004 11:27
翻翻网站(http://www-900.ibm.com/developerWorks/cn/java/j-findbug1/index.shtml#fig1),发现了FindBugs(http://findbugs.sourceforge.net/manual/eclipse.html)
这个小东西安装使用起来都比较容易,尤其是集成到eclipse中,非常方便使用。
不过他的检查功能还是比较弱,似乎只是语法级的检查,不过作为入门级Java开发者,使用这个工具可能会比较容易的改善代码质量并养成好习惯。

[@more@]

CVSNT的一个小BUG

Posted by 猪头小队长 | 程序设计 | Sunday 12 September 2004 17:00
在用CVSNT的cvs系统中,使用Eclipse一个本地的Project,想要将其导入CVS,会出现下面这个错误:
CVSNT repository ‘:pserver:ADministrator@localhost:/cvsroot’ is configured to use a repository prefix.However,CVSNT does not always properly communicate resource paths in this mode resulting in the failure of some specialized Eclipse CVS operations. The use of a repository prefix should be disable if the full functionality of the Eclipse CVS client is desired.
eclipse的buglist也提到了这个问题:https://bugs.eclipse.org/bugs/show_bug.cgi?id=39516
新版本的CVSNT已经修正了此问题,但是没有作为默认配置:
打开CVSNT的service control panel,advanced选项卡,选上pretend to be a unix CVS version,即可解决此问题。

[@more@]