ALL is Well!

敏捷是一条很长的路,摸索着前进着

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  30 随笔 :: 23 文章 :: 71 评论 :: 0 Trackbacks

2010年11月16日 #

     摘要: 快速排序的算法思想:
快速排序采用了分治的策略,将原问题分解为若干个规模更小但结构与原问题相似的子问题。用递归方法解决子问题,然后将这些子问题的解组合为原问题的解。
  阅读全文
posted @ 2011-04-09 17:37 李 明 阅读(2059) | 评论 (1)编辑 收藏

     摘要: 在项目中实现了一个工具(独立运行的Java工程,打成jar包后 通过 java -jar **.jar 执行的。),该工具通过配置能够实现一些业务功能,
并且该工具提供了接口与抽象类,供其他人扩展它的功能。

这就涉及到一个问题:别人在扩展它的时候,需要引入一些jar或者配置文件,本来工具依赖的jar和配置文件都记录在manifest文件中了,
不可能别人加了jar包和配置文件就要修改manifest文件的。
所以我为工具提供了另外一个入口,通过 该通过的配置文件 进行配置 路径,由于考虑到扩展的人可能多人或者多组,所以配置文件如下定义:
以ext_classpath开头的,诸如 ext_classpath_biz1等对应的路径均被加入到classpath中。
以ext_resourcepath开头的,诸如 ext_resourcepath_biz1等对应的路径均被加入classpath中。  阅读全文
posted @ 2011-04-01 20:39 李 明 阅读(13687) | 评论 (1)编辑 收藏

posted @ 2011-03-30 13:07 李 明 阅读(719) | 评论 (0)编辑 收藏

posted @ 2011-03-17 11:17 李 明 阅读(2813) | 评论 (0)编辑 收藏

     摘要: 问题:
freemarker在解析数据格式的时候,默认将数字按3位来分割,例如1000被格式化为1,000,这样做看似美观,但在实际操作时候会带来问题。例如我一个页面有一个元素,该元素的值由后台绑定且超过1000,那么当我要使用这个元素的值的时候,便会出现问题。  阅读全文
posted @ 2010-12-29 14:54 李 明 阅读(5811) | 评论 (6)编辑 收藏

     摘要: 总体上来说,jMock 是一个轻量级的模拟对象技术的实现。它具有以下特点:
1.可以用简单易行的方法定义模拟对象,无需破坏本来的代码结构表;
2.可以定义对象之间的交互,从而增强测试的稳定性;
3.可以集成到测试框架;
4.易扩充;
  阅读全文
posted @ 2010-12-17 09:28 李 明 阅读(12056) | 评论 (3)编辑 收藏

     摘要: 浅谈TDD
JUnit4的用法介绍
测试方法 @Test
@Before(SetUp)
@After(TearDown)
@Before和@After小结
@BeforeClass和@AfterClass
测试异常@Test(expected=XXXException.class)
参数化测试
  阅读全文
posted @ 2010-12-15 15:34 李 明 阅读(13197) | 评论 (1)编辑 收藏

     摘要: 本次分页组件着重于页面(Freemarker部分)、及Action部分。
至于Service及持久层处理,只是做了一个模拟的实现,实际开发中,我是应用了iBatis,封装了分页调用。
由于用法有所不同,所以就不放在源码范围内,也不在这里介绍了。
这里的分页功能只提供了 上一页、下一页、指定页 的分页,但在分页Java代码中包含了 首页、末页的实现。有需要的可自行添加。


分页的效果如图:  阅读全文
posted @ 2010-12-01 17:35 李 明 阅读(5850) | 评论 (4)编辑 收藏

     摘要: struts2 的Result type chain:基本用途是构造成一条动作链。前一个Action将控制权转交给后一个Action,而前一个Action的状态在后一个Action里仍然保持着。
但这种数据传递前提是数据要在Value stack里。
本文介绍基于Struts2 Result type 为 chian时, 通过增加拦截器、注解的方式,实现Action之间的数据传递。所传递的数据可以不在Value stack里。
实现的基本思路是Result type为chain时,在准备执行当前Action时,可以得到上一个Action对象的实例,上一个Action的实例被加入到了ValueStack中...
  阅读全文
posted @ 2010-11-19 17:25 李 明 阅读(5291) | 评论 (2)编辑 收藏

     摘要: 默认情况下,freemarker的变量必须有值,如果没有被赋值的变量在页面上使用就会抛出异常,出错的信息都会显示在页面上,让人感觉不爽(开发时还可以忍忍)。
以下介绍四种解决办法。  阅读全文
posted @ 2010-11-17 13:54 李 明 阅读(2317) | 评论 (0)编辑 收藏

     摘要: 统一处理系统中的异常并将其以固定的格式显示在页面上。

当使用js做前台的表单验证的时候,提示用户的输入有问题,则可以使用 Message.showMsg('...'),提示信息也会显示在同一个位置。

这样就实现了异常提示信息的统一展示了。

这是一个比较简易的实现,只提供一个思路。  阅读全文
posted @ 2010-11-16 14:53 李 明 阅读(2785) | 评论 (0)编辑 收藏