首页 相关文章 JBuilder2005实现重构之升级到JDK5.02

JBuilder2005实现重构之升级到JDK5.02

3、自动装/拆箱
  
  
  每个基本数据类型如double、int都有对应的封装类Double、Integer,在低版本的JDK中,需要一些无聊的代码完成基本数据类型到对应封装类的转换。JDK 5.0的自动装/拆箱特性可以自动完成这种转换,使代码更加简洁,来看下面未用自动装/拆箱的代码:
  
  代码清单 13 未使用自动装/拆箱的代码
  
  1. package myrefactor ;
  2. public class Jdk5
  3. {
  4. …
  5. public static void autoBoxingPreliminary(Integer intObject)
  6. {
  7. System.out.println(intObject) ;
  8. }
  9.
  10. public static void autoBoxingRefactoring()
  11. {
  12. autoBoxingPreliminary(new Integer(8)) ;[ 查看全文 ]

2016-02-19 标签:
  • 1、优化import 简而言之,通过优化import的设置可以达到以下的目的: 去除无用的import语句:如在类中没有使用任何包中的类,则这个包的import语句可以删除。 设置包的阈值:当前类引用包中类的数目大于这个阈值时,引入整个包(如import java.io.*),否则为包中每个被引用的类单独指定的一个import语句(如import java.io.File)。 设置包的排列顺序:按照一般的习惯,按包的常用程度从高到低进行...[ 查看全文 ]
  • 标签:Web开发
    有句英语谚语叫作"Look before you jump",在着手重构前,看看这个更改的影响度,以资决策,是一个不错的主意。 1、查看定义 程序类之间是相互调用的,JBuilder可以方便你查看类、方法、值域的定义,将光标置于某一代码元素上,按Ctrl+Enter快捷键或点击右键,在弹出的菜单中选择Find Definition,JBuilder将定位到该元素的定位处。 2、查看引用 类、方法、值域被定义后,其引用...[ 查看全文 ]
  • 为什么要重构 从Martin Fowler所著的《重构--改善既有代码的设计》一书连续两年成为最畅销的计算机图书之一,就可以知道重构给程序员所带来的欣喜程度了。 !-- frame contents -- !-- /frame contents -- 那么什么是重构呢?重构就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性...[ 查看全文 ]
  • 在JBuilder中通过重构将值域、方法在类的继续体系中上推下移,是非常轻易的操作。这了说明这种重构功能,我们先来看下面的类继续体系: 图 15 类的继续类图 Animal类是Cat和Horse和父类,Animal中包含了两个值域和一个方法。可以将Animal中的值域有选择地下移到某个子类中。此外,还可以为Animal提炼超类和接口。 1、搬迁方法 打开Animal.Java并将光标定位到how...[ 查看全文 ]
  • 用Action控制器替换switch.jsp 在《JBuilder 2005 Servlet高级开发》中我们介绍了用户登录模块的流程,其中switch.jsp充当一个业务处理和页面转发的中心处理器。 !-- frame contents -- !-- /frame contents -- 由于JSP的设计初衷是实现页面展现逻辑,而这里我们居然"倒行逆施",将JSP用作业务处理和页面转发,显然是不恰当的。我们原来的switch.jsp身兼数职:接收login.jsp页面的表单...[ 查看全文 ]
  • Struts是基于Model 2实现的技术框架,Model 2是经典的MVC(Model,View,Control)模型的Web应用变体,这个改变主要由于HTTP协议的无状态性引起的。Model 2的目的和MVC一样,也是利用控制器来分离模型和视图,达到不同层间松散耦合的效果,提高系统灵活性、复用性和可维护性。在多数情况下,你可以将Model 2与MVC等同起来。 图 1表示一个基于Java技术典型的MVC网络应用,从中可以看出MVC中的各个部分...[ 查看全文 ]
  • Servlet和jsp的一个重大的区别即是Servlet可以通过web.XML文件的配置让Servlet在Web容器启动时就自动启动Servlet。可以利用Servlet的这个特性不变化的数据事先加载到Web应用服务器中以便缓存使用。 假设,我们系统的用户在系统部署前就已经创建好,以后不常发生变化,那么我们可以在Web应用程序启动时就将其下载缓存到Web应用服务器内存中,假如用户发生变化可以手工调用这个Servlet进行刷新。下面我...[ 查看全文 ]
  • 标签:Java JAVA基础
    简单的框架 JUnit是由Erich Gamma和Kent Beck开发的开源测试框架,JBuilder集成了这个框架并对此做了扩展。JUnit之所以流行并为广大的开发人员所推崇,一是因为它实战性强,功能强大,二是因为它实在简单。一个产品或框架要能有生命力,最好都具备这样的特点。 简单地讲这个框架提供了许多断言(assert)方法,允许你设置测试的规则,如:assertEquals()、assertNull()、assertN...[ 查看全文 ]
  • 标签:Java JAVA基础
      通过File->New...->Web->双击JSP图标,弹出创建JSP向导的对话框,如下图所示: 图 3 通过向导创建login.jsp ·Web module:如果一个工程下有多个Web模块,你可以通过这儿指定JSP所要加入到的Web模块,因为我们的工程中只有一个webModule,所以是向导将默认设置为webModule。 ·Name :键入JSP文件名,你可以键入.jsp后缀,也可以不写后缀,直接键入login就可以了。 Generate ...[ 查看全文 ]
  • 标签:Java JAVA基础
      欢迎页面welcome.jsp 当用户录入正确的密码后,switch.jsp控制JSP页面导向welcome.jsp欢迎页面,在这节里,我们来开发这个welcome.jsp页面。因为welcome.jsp需要使用到一个第三方的标签库,所以在开发welcome.jsp之前需要在JBuilder中作一些配置引入这个标签库。 将第三方标签库配置到JBuilder中 Apache开源组织提供了许多有用标签库,欢迎页面welcome.jsp需要使用一个来源于...[ 查看全文 ]
  • 标签:Java JAVA基础
      错误处理页面error.jsp Web应用程序一般都有一个或多个统一的错误处理JSP页面,以便在功能性的JSP页面发生错误时,能以一种友好的形式向用户反馈。友好而统一的错误页面是Web展现层一个无可忽略的方面。 下面,我们创建错误处理error.jsp文件,其代码如下所示: 代码清单 11 error.jsp错误处理JSP页面 1. <%@page contentType="text/html; charset=GBK" isErrorPage="true" %...[ 查看全文 ]
  • Web应用服务器会产生各种事件,如Web容器启动事件、session过期事件、请求到达事件等等。我们已经在《JBuilder 2005实战jsp开发》中阐述了这些事件的接口,事件处理方法使程序对Web应用服务器的控制能力大为提高。 !-- frame contents -- !-- /frame contents -- 在这一节里,我们监听Web容器启动关闭的事件,在事件发生时记录Web应用程序启动和关闭的系统日志,以便系统治理员通过这个日志查...[ 查看全文 ]
  • 标签:Java JAVA基础
      由于在login.jsp的表单中通过action属性指定switch.jsp为响应的JSP文件,当用户在login.jsp中选定登录用户,输入密码提交表单后,客户端将向服务器发送一个HTTP请求,服务器即调用switch.jsp来响应这个请求。 表单中用户名和密码两组件的数据将通过HTTP请求传给服务器的switch.jsp,服务器将这些信息封装在request对象中传给switch.jsp,所以switch.jsp可通过request.getParameter(String pa...[ 查看全文 ]
  • 标签:Java JAVA基础
    在测试用例中通过setUp()、tearDown()创建测试固件,只能使这个测试固件在单个测试用例的不同测试方法中共用,如果有多个测试用例都需要使用相同的测试固件,就需要将测试固件抽取到一个独立的类中。JBuilder提供了3个预定义的测试固件类,它们分别是: ·JDBC测试固件(JDBC Fixture):用于获取数据库连接的测试固件,用户仅需要通过设置一些数据库信息,就可以用方便的方法获取数据连...[ 查看全文 ]
  • 标签:Java JAVA基础
      用户登录模块程序的结构图如下图所示: 图 1 实例页面流转图 用户在登录页面中录入密码、验证正确后转向欢迎主页面,如果输入的密码错误,导向登录失败页面。这个模块包含6个JSP文件、3个Java类及两张后台表。 6个JSP文件分别为用户登录、页面流转控制、错误处理、登录成功和失败、以及退出系统的处理页面,简单介绍如下: 表 1 JSP文件 JSP页面说明login.jsp登录JSP页面switch...[ 查看全文 ]
  • 标签:Java JAVA基础
    为了便于讲解,拟通过两个简单的业务类引出测试用例,一个是分段函数类,另一个是字符串处理类,在这节里我们先来熟悉这两个业务类。 分段函数类 分段函数Subsection类有两个函数,sign()是一个符号函数,而getValue(int d)函数功能如下: 当d < -2时,值为abs(d); 当-2≤d<2 且d!=0时,值为d*d; 当d=0时,值为100; 当2≤d时,值为d*d*d。 ...[ 查看全文 ]
  • 标签:Java JAVA基础
        在测试用例向导的最后一步,允许你创建一个测试用例的运行配置项,如下图所示: 图 错误!文档中没有指定样式的文字。创建运行测试项 在一般情况下,你不必为每个测试用例类单独创建一个运行配置项,JBuilder会采用默认的运行配置运行测试用例。 测试运行配置项在需要指定不同的测试运行器(默认为JBTestRunner)、一次运行多个测试用例时,允许你进行特殊的定...[ 查看全文 ]
  • 标签:Java JAVA基础
      用户登录模块程序的结构图如下图所示: 图 1 实例页面流转图 用户在登录页面中录入密码、验证正确后转向欢迎主页面,如果输入的密码错误,导向登录失败页面。这个模块包含6个JSP文件、3个Java类及两张后台表。 6个JSP文件分别为用户登录、页面流转控制、错误处理、登录成功和失败、以及退出系统的处理页面,简单介绍如下: 表 1 JSP文件 JSP页面说明login.jsp登录JSP页面swit...[ 查看全文 ]
  • 标签:Java JAVA基础
    目前我们只为Subsection类生成了一个测试用例,在这节里,我们按照前述的方法,通过Test Case向导为StringUtils类创建一个测试用例代码框架,并编写测试方法,然后将这两个测试用例捆绑组合在一个测试套件中一起运行。 选中StringUtils类,通过File-New..-Test,双击Test Case图标为StringUtils类的string2Array()方法创建测试用例,接受默认的测试用例类名TestStringUtils。 在向...[ 查看全文 ]
  • 标签:Java JAVA基础
      1.在Oracle的SQL Plus工具中,以具有DBA权限的用户登录数据库。 system/manger@to_128 @后的to_128为数据库的连接串名,需要根据具体情况更改,如果数据库是在本地,则可以省略@和连接串。 2.创建jbuser用户,指定密码为abc。 SQL create user jbuser identified by abc; 3.为jbuser用户分配connect和resource角色权限。 SQL grant connect ,resource to jbuse...[ 查看全文 ]