`
mingj
  • 浏览: 23163 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
文章列表
安装、启动Sonar: Sonar的安装很容易,按照Sonar官方主页的安装指南解压缩即可。 Sonar默认使用derby作为数据库,你只需要在sonar.properties文件中去掉对derby数据库属性的注释,然后启动Apache derby数据库。 按照文档介绍,启动Sonar,默认的主页地址是http://localhost:9000,登录用户名和密码是sonar/sonar。 使用Sonar检查代码: 要使用Sonar检查代码,也很容易。 如果待检查项目是maven项目,则只需要安装sonar maven plugin即可;如果是非maven项目,则需要在项目根目录 ...
问题 前一阵子使用JSF开发web应用程序的过程中,碰到一个需求:A页面上存在一个链接,用户点击链接会被重定向B页面。页面B上存在一个单选框,如果是通 过A页面的链接过来,会把单选框置为“选择”的状态。这是非常典型的页面转向,根据JSF的页面转向配置,以及对JSF隐含对象param的介绍,下面的 代码“貌似”可行: A页面: < h:commandLink  value ="Add"  action ="add" >    < f:param  name ="type&quo ...
(节选自本人翻译中的《ThoughtWorks Anthology》一书的第7章“What Is an Iteration Manager Anyway?”) 第7章 迭代经理是什么角色? 行业日新月异,敏捷、迭代式和迭代这些热门词已是“飞入寻常百姓家”,一个定义模糊的新角色—— ...
  关于重构 重构是一种改善已有代码和设计的有效手段,Martin Fowler的著作Refactoring:Improving the Design of Existing Code 一书里提出了若干种重构的模式,深刻地影响了众多的开发人员。但如果认为重构只能做到小范围的代码优化, ...
最近结束了一个企业OA系统的项目,客户是一家海洋航运行业的企业,散运业务全球第一。该系统以工作流系统为基础平台,对员工工作进行电子化和规范化,由系统来驱动员工自动、快捷、可管地完成日常工作。在开发过程中,在综合评比多种工作流产品之后,我们选择了开源工作流产品——OSworkflow作为底层工作流引擎支撑,通过扩展OSworkflow的接口把业务系统和工作流引擎完美无缝地集成在一起。本文就是跟大家一起分享osworkflow扩展过程中的经验心得,希望能对其他朋友有帮助。        在我们开发团队介入系统开发过程之前,这个项目已经完成了 quickstart 阶段,留给我们的阶段产品有:系统实 ...
play! 最大的卖点就在于 hot swap,正如它自己宣称的: reach your maximum productivity。play! 允许开发人员修改java文件,保存,然后刷新浏览器,立马可以看到效果。不需要编译,也不需要重启服务器。 Java 要想实现动态更新 class 文件,不外乎两种手段:替换 classloader、替换 JVM。因为替换 JVM 引起的开销更大,需要维护 JVM 的堆、栈等运行信息,所以 hot swap 通常是选择替换 classloader。比如 grails 里面就是选择替换 classloader,它会自己维护一个线程,定期轮询源文件是否发生修改, ...
跟同事聊天,他原先是在一著名手机厂商研发中心工作,主要是做该厂商手持终端设备上的系统软件,于是自然聊到“摩托,也要骡拉”上来。近几年该厂的发展很不景气,好几年也没见一款拿得出手的手机,在中国的市场占有率从前三降到排名之外,连在国贸的冠名大厦都卖掉了。同事说起来也是颇多无奈,讲述了他看到的情况。 据他观察,该公司内部是出现了这个几个问题: 1. 基础平台不稳定,大量功能被任意加到平台里面,导致越来越复杂,后期维护扩展完全不可能 2. 产品设计部的设计到产品研发,中间经历太长时间,不能响应市场需求 3. 产品研发到最后才发现功能缺陷或者性能缺陷,最后只能 cancel 这些问题的产生原因相信见仁 ...
Dependency Injection 这个名词,是在 Martin Fowler 的《Inversion of Control Containers and the Dependency Injection pattern》文章之后才广为人知。在文章中,Martin 解释了当时初起流行的 IOC 概念:为了消除应用程序对插件实现的依赖,程序的主控权从应用程序移到了框架。为了让 IOC 概念不那么令人迷惑,Martin 把流行的几种 IOC Container 实现模式命名为 Dependency Injection Pattern(DIP,下文简称 DI 模式)。很明显,DI 的定义更准确形 ...
WEB 应用通常会引入 Session,用来在服务端和客户端之间保存一系列动作/消息的状态,比如网上购物维护 user 登录信息直到 user 退出。在 user 登录后,Session 周期里有很多 action 都需要从 Session 中得到 user,再验证身份权限,或者进行其他的操作。这其中就会涉及到程序去访问 Session属性的问题。在java中,Servlet 规范提供了 HttpSession对象来满足这种需求。开发人员可以从 HttpServletRquest对象得到 HttpSession,再从HttpSession中得到状态信息。 还是回到购物车的例子,假设在 cont ...
spring2.5最大的特色就是全面使用annotation代替xml配置,包括IOC Container、springMVC和TestContext测试框架等,给我们开发带来了极大的便利。springMVC的新特性在这篇文章(注1)里面已经有了比较详尽的介绍,而对于spring的新TestContext测试框架,大家也可以从这里(注2)得到详细的例子说明,有兴趣的可以去仔细阅读,本文不再赘述。总而言之,通过spring2.5提供的annotation,我们可以让我们的类——包括controller,Test等职责特殊的类——更 POJO 化,更易于测试,也提高了TestCase的开发效率。 ...
Global site tag (gtag.js) - Google Analytics