`
文章列表
作了个笔记: 在Eclipse下,创建了一个Java Dynamic Web工程,部署、运行,按部就班都很正常。 重命名了这个工程,再部署、启动Tomcat日志,输出错误:java.lang.IllegalArgumentException: Can't convert argument: null 上述问题,是由于在Eclipse下重构JEE项目名时,Eclipse自动更新了部署文件web.xml,重新生成了xml文件的头部声明,新增加了javaee的命名空间, web.xml 文件更新后的内容变为: .... <servlet> <serv ...
转载自Log4D 原文链接: http://dddspace.com/2010/04/notepad-shortcut-keys.html 如果Notepad++是程序员的一个生产工具,那么快捷键的使用就可以提高生产效率,记住一些快捷键是挺有用的:-)。 http://notepad-plus.sourceforge.net/uk/shortcuts.php这上面有完整的快捷键表格,但是很多都记不住,因为很少用。除了Ctrl-C,Ctrl-X,Ctrl-V,Ctrl-Y,Ctrl-A,Ctrl-F,Ctrl-S,Ctrl-O,Ctrl-N,Ctrl-W,Ctrl-Tab,Ctrl-P,Alt ...
今番又遇到乱码问题,有时候真觉得英语母语的那些地区确实挺省事的,至少不用为了这个经典麻烦去折腾。 网络上讨论乱码问题的文章很多,因为各作者使用的计算机环境的不同,往往不是很全面。 这里非常推荐的一篇文章: http://dohkoos.name/java-garbled-analysis.html 简而言之,乱码的“根本原因是由于编码和解码采用的不是同一种码”。例如作者所举的例子,使用GBK编码为UTF-8,使用ISO-8859从UTF-8解码,可能会导致乱码问题。这就好比有一篇中文文章想给王五看,不过这篇文章先由张三翻译成为了英文,然后再由李四翻译成俄文(而不是翻译回中文),但是王五只看得 ...
直接从官方网站上下载得到的demo压缩包,按照其readme介绍的办法,解压到web容器上并且尝试打开jqgrid.html使之运行,结果并不能得到像http://www.trirand.com/blog/jqgrid/jqgrid.html一般的效果。 我因为使用的是java web server,并没有去配置php,但是如果能按照如下方式对原有的下载资源文件作一些替换,则能在本地获得官网demo的演示效果。 1.jqgrid.html 代码中第40行 <script src="js/jquery.js" type="text/javascript&qu ...
下面的单元测试能够通过,这可能不符合直觉。 @Test public void passed() { String a = "\\"; assertFalse(a.length() == 2); assertTrue(a.length() == 1); String b = "\\\\"; assertTrue(b.length() == 2); } 原因在于"\"在这里被JVM解释为转义符,所以如果当你需要一个"\",在Java里面同时需要为JVM提 ...
现如今,关于软件项目管理的话题以及衍生出来的各种软件管理流程,确实不少;但是仅就软件项目的特点,究其本质,仍然没有太多变化,基于三角约束(范围、进度、成本)下的可交付、以及基于客户满意的软件质量。 同时,软件项目通常所面对的各种压力,与其它行业中常见的情形,也没有太多的变化,但是我们通常所看到的项目问题,往往表现为“进度问题”,为了解决这个问题,于是很多的项目都掉进了“加班赶进度”大坑,直到软件交付、回款到位。最后本着“下一个项目我们会改进”的意愿,不幸的掉入下一个大坑。 我们想“潇潇洒洒的活”,最后只不过是个“窝窝囊囊的活”,或者“窝窝囊囊的死”。 所谓的进度问题,掩盖了很多问题背后的问 ...
最近开始学习appfuse,为了搭建调试环境,过程感觉是有些郁闷的,在这里记录下来,供人参考,少走弯路。 大致上,可以参考http://www.appfuse.org/display/APF/AppFuse+QuickStart+-+Chinese步骤,顺便补充一下必要的调整和操作: 前提条件: 1. 下载安装jdk,推荐使用1.6,指向jdk目录而非jre目录 2. 安装mysql,我本地使用的是5.0.45,也是ok的 3. smtp 这步骤暂且可以跳过 (如果不想太偷懒的话,可以先配置连接到google的smtp) 4. 使用maven 2.2.1+  (文章中轻描淡写的说如果用mav ...
正在阅读Juven.Xu写的《Maven实战》一书,书中第9章讲的是"使用Nexus创建私服" 关于私服的优点,书中提到“它仅仅是一种衍生出来的特殊的Maven仓库”, “通过建立私服,可以降低中央仓库负荷、节省外网带宽、加速Maven构建、自己部署构件等,从而高效地使用Maven” 目前流行的私服软件包括三种:Nexus, Archiva 和 Artifactory。Nexus最为最流行的Maven仓库管理软件,可再细分为开源版和专业版。 Nexus是典型的Java Web应用,可从http://nexus.sonatype.org/downloads/下载,安装包分 ...
原文: http://www.aqee.net/2011/03/01/how-do-programmers-in-the-west-see-programmers-in-the-east/ 最近,在国外著名的stackexchange网站上出现了一个有趣的问题,有人问:西方的程序员眼里,东方的程序员是什么样的?他描述道: 世界的东方(印度/ ...
原文: http://www.aqee.net/2009/10/24/simplifying-java-code-with-google-collections-guava-and-static-imports/ Java程序员经常会有这样的抱怨:在Java里,一些常见的功能却需要大段的代码去实现。有些人试图去寻找一种更简洁的、能够作为替代品的其它JVM语言,另外一些人却在致力于从API层扩展现有的各种Java特性来解决Java的繁冗的问题。 最近有两个以扩展API为途径的范例项目,它们是Google的Collections 和 Guava 类库。不久前的一篇博客,“ 使用 Google C ...
iBatis(现在更名为myBatis了)可以被看做是一个"半自动化"的ORM工具(通过sql-mapper),或者更严格的说,是一个关于JDBC API的强大封装。简单易学是它的优点,这也就是为什么在很多项目中,我都倾向于使用iBatis,尤其是提供大量复杂查询或者报表功能的应用当中。 在<<iBatis in Action>>这本书中,讲解了关于iBatis的各种用法,但是作者也特别强调了:在Dataaccess这层上,通过调用存储过程是一个反模式,不推荐使用;于是关于通过iBatis调用存储过程,只是非常简单的一笔带过。 但是我们也通常会在很 ...
由于各种原因,正在进行中的一个项目,并没有严格遵守测试先行的最佳实践。我们先写功能代码,然后再补充测试代码。 这是一个普通的Java WebApp项目,在服务器端使用的是SpringMVC 3 和 Hibernate 3.6, 按照最一般的层次划分,采用的是MVC + Service + Persistence 的做法。在开发过程中,对于Service这层,初始开发过程中,并没有立即采用面向接口的方式,拟考虑在Service功能代码相对稳定之后,通过重构来抽取接口。 于是起初原始Service层的代码只有 ****ServiceImpl 等诸如这样的类,例如: ...... ..... ...
我是JavaEye的粉丝。 昨天发了一篇博客,因为标题以及内容的歧义,可以被视作是提问帖。4个小时之后,该文从论坛挪到了问答区。 虽然这个不是我的本意,但是为了维护JavaEye一贯的高水准,我还是很佩服JavaEye支持人员的辛勤工作。 希望JavaEye再接再厉,越办越好。 ps: 因最近用新浪微博上瘾,个人觉得其实JavaEye可以到各大网站开微博账户,继续扩大影响力。
新近接触了SpringMVC3.0,从个人感觉来讲我非常喜欢。之所以从3.0版本才开始学习,也是对于旧版本的XML配置有所忌惮。SpringMVC从2.5版本引入了annotation,到了3.0有了进一步增强。 参考了文章http://bulargy.iteye.com/blog/179781的一些观点,我也觉得有时候Annotation较之于XML-configuration有其固有的限制。混搭比较好,比如说想在发布环境上动态修改接口的具体实现,但是不想重新编译Java代码的情况下。 为了同时能够利用到XML和Annotation的优点,我做了一个试验,想验证当我同时在XML和Ann ...
受Windows上的应用所限,我们在提取PDF部分页面的时候,有效办法不是很多。Linux我不熟悉,但是作为一个开放环境,Freeware甚至是OpenSourceware的工具应该是有的吧。 今天我试了如下的办法,应该是比较有效地。所需要的软件: 1. Windows OS (这个不是免费的,没辙。) 2. 福昕阅读器 3. CutePDFWriter 将一个PDF文件中的一部分页面提取出来作为一个较小的PDF文件。基本上以前都依赖于“争议软件”来做这样的事情。 今天碰巧想到了一个比较可行的办法,使用CutePDFWriter的打印功能,通过虚拟打印机,输出指定页面范围,从一个169页的P ...
Global site tag (gtag.js) - Google Analytics