我说的中文乱码不是全部是乱码,而是部分是乱码,例如海明威主题里面默认的那个single.php页面里面包含edit this entry的链接,我修改为中文不行,变成乱码了,但是其它的中文都没有问题,原因不明。一个解决的方法就是把中文换成HTML的转义格式,也就是&#加上一个数字并加一个分号的格式。
阅读全文
我说的中文乱码不是全部是乱码,而是部分是乱码,例如海明威主题里面默认的那个single.php页面里面包含edit this entry的链接,我修改为中文不行,变成乱码了,但是其它的中文都没有问题,原因不明。一个解决的方法就是把中文换成HTML的转义格式,也就是&#加上一个数字并加一个分号的格式。
阅读全文
公司的产品要引入单元测试以及代码覆盖,让我做一个框架方便我们写单元测试代码,上网找了一下,找到一个不错的基础:MockEJB,大家可以先了解下相关的内容:
MockEJB项目简介信息
使用MockEJB简化EJB测试
我在这个基础上进行了扩充,框架具有如下的特性:
测试代码范例:
阅读全文
列出我常用的工具软件:
再列出我常用的FireFox插件:
常常在论坛上看到人问如何成为高手,就我自己的感觉来讲,就是要保持自己深入研究的精神以及了解新知识的兴趣,感受最深的就是做日本外包的软件的朋友好像经过两年以上似乎对于Java的了解还是不够深入,因为做日本外包需要了解的东西并不是很多,大部分时间都是在做一些简单的重复工作。其实我自己本身开始也是做日本外包的,在东软国合,但是这并不影响我提高自己的能力,因为我在每个项目中都能够深入去了解我所使用的框架(外包的项目一般都是日本做设计,中国这边只是做编码,框架由日本那边提供),遇到问题我也会深入研究为什么会导致这个问题,而不是停留在解决问题后就不去想自己为什么会犯这个错误以及这个问题最根本的原因。
所以我想给所有的做软件的朋友的建议是:
遇到问题,要思考为什么我会犯这个错误,这个错误是什么原因导致的,是OS?还是服务器软件?是配置的问题吗?是使用的框架的问题吗?还是自己的代码的问题。在这个之外,还要考虑是否有什么改进的方法可以以后避免这个问题。只有保持一个深入理解各种问题的精神,你才能逐步的提高自己的能力。
WordPress使用htaccess文件完成缺省的链接到自定义链接的转换,但如果是在linux下的apache下建站,而且一般都是有多个虚拟主机的,直接修改整个系统的AllowOverride配置不太好,我们可以只修改你的虚拟主机的AllowOverride配置,如下:
<Directory /www/jiehoo>
AllowOverride All
</Directory>
<VirtualHost *:80>
ServerAdmin cherami.lm@gmail.com
DocumentRoot /www/jiehoo
DirectoryIndex index.php
ServerName www.jiehoo.com
ServerAlias jiehoo.com
ErrorLog logs/jiehoo-error_log
CustomLog logs/jiehoo-access_log common
</VirtualHost>
我以前的一些专栏或者Blog
以前的一些文章或者作品:
下面是我使用的一些其他的服务:
单元测试和代码覆盖工具对于提高代码质量确实是很有帮助的,但是不能迷信,详细的内容已经有人代劳了:
昨天晚上在构建我自己想做的东西的时候,本来没有打算写单元测试的,但是后来看看时间,做新的功能似乎不够,就写了写单元测试,结果发现代码质量不是一般的差,几个我认为肯定没有问题的地方也出问题了。以后的代码一定要坚持写单元测试,而且今天晚上回去就要把代码覆盖的工具也用上,可能是emma或者Cobertura。
今天Bruce问我spring怎么样,我的感觉主要是:
但是:Spring不是必须的。
对于小项目,引入spring可能反到增加不必要的复杂性,毕竟spring也是需要很多配置的,有时候就没有一个new来得简单,而且使用spring后很多错误要到运行的时候才能发现,而修改配置已经来不及了,只能重启 web服务器。
(在spring的配置太多的时候,启动好像很慢,这个是因为要预先初始化很多类并组装好)
但是总体上感觉spring是个好东西,在以后的项目中要尽量使用。
最后推荐:疑惑:为什么要用Spring?以及简化Spring
bruce说我的那个得到GMT时间的
代码是错误的,和他讨论了很长时间,后来发现果然是我的理论方面有问题,就java.util.Date类的定义而言,它本来就是当前的GMT时间相对于
1970年1月1日的GMT时间的long值,但是如果使用System.out.println()等方法打印出其内容的时候,也就是使用
Date.toString方法的时候,我们看到的是经过时区修正的结果,这个看看java.util.Date的实现就可以知道:
从代码我们可以看到是使用时区格式化的结果(JDK5的代码和这个不同)。
问题是:当我们将这个GMT的Date值转换到java.sql.Date或者java.sql.Timestamp存到数据库里面以后,数据库里面的值
是我们的本地时间而不是GMT时间,因此,如果你需要数据库存储GMT时间的时候,还是需要使用我的那个方法进行转换。至于为什么要存储GMT时间,这个
是有跨时区应用的时候要考虑的问题,例如一个系统中国的用户和美国的用户同时使用,否则时间会很混乱。
本来以为得到GMT时间很简单,通过Calendar
date = Calendar.getInstance(TimeZone.getTimeZone(“GMT”));然后
date.getTime()就是,但是实际的结果不是,要得到GMT时间还是需要转换下的,以下是得到当前的GMT时间:
public static Date getGMTDate ()
{
Calendar calendar = Calendar.getInstance();
int offset = calendar.get(Calendar.ZONE_OFFSET)/3600000 +
calendar.get(Calendar.DST_OFFSET)/3600000;
calendar.add(Calendar.HOUR,-offset);
return calendar.getTime();
}
© 2025 解惑
本主题由Anders Noren提供 — 向上 ↑