- 博客(67)
- 资源 (10)
- 收藏
- 关注
原创 好的界面设计
1. 经常关注的文字加上超级链接2. 给一个图片加上 alt3. 查看内容时无需拖动滚动条4. 页面表格加入排序按钮5. 输入错误时,焦点回到错误文本框,并在其后显示提示6. 让某些状态文字 显示不同的颜色7. 是否在恰当的地方给用户提示8. 进入某个功能,是否需要用户点击多次鼠标9. 菜单、选项卡选中后变色10. 在当前用户提示后,跟上一个“退出系统”的超链
2012-09-30 14:06:21 488
原创 Flex讲课思路
第一页: 姓名第二页: 每部分讲的内容 讲解事件的概念、作用和工作流程 讲解flex中事件的相关内容 以登陆模块为例,讲解flex+java模式中,事件的综合运用 讲解实际开发中碰到事件的缺点和如何克服这些缺点第三页: 正如要理解婚姻的概念,我们肯定要知道男人和女人,而事件就是对象
2012-09-29 21:29:00 436
原创 正则表达式(五)——javascript
可用的字符串函数 search match replace split字符串遍历var s="";var re=/d(b+)(d)/ig;var str="cbdBdbsbdbdz";while(result=re.exec(str))!=null) { s+=""+result.index+" "+result[0]+
2012-09-29 21:00:35 441
原创 测试驱动开发 使用经验
1. 模拟用户输入通过给Action的searchObj设置参数实现。2. 模拟session中的数据//模拟session中生成验证码context=ActionContext.getContext();Map session=new HashMap();session.put("validateCode", "1212");context
2012-09-29 15:47:26 513
原创 TDD-J2EE Example
第三章基本知识1)单元测试基本套路 1. 从序列图中划分出类的基本框架,针对每个类的功能,从上到下编写单元测试 2. 测试的组织:一个testSuite for整个工程,多个testSuite for 每个包。 3. 构造 ant script运行测试:编译和打包源代码;编译和打包测试代码;运行测试;输出到xml文件; junitreport将xml文件产生报告。
2012-09-29 15:46:12 645
原创 测试工具(四)——testNG
编写测试 按包组织测试代码 编写测试业务逻辑 在testng.xml配置 suite 和package 运行testng组织测试数据Testing传入Parameters 可以在test和 suite中定义。 suitename="My suite"> parametername="first
2012-09-29 15:35:49 904
原创 测试驱动开发三部曲——走出TDD丛林
软件工程问题及解决 1. 总结归纳需求时,因为用户对需求理解不清,需求的变化,可通过需求管理解决,在沟通中应先澄清概念,定义,范围,背景及沟通的形式(原型和图片比较合适) 2. 重用,更重要的平台级的重用。 3. 有用工具:需求规格(功能和性能指标)记录文档,原型:PENIM,数据库和UML建模程序测试用例 1. 测试内容:资源打开前是否
2012-09-29 15:24:57 1953
原创 测试驱动开发笔记(四)——TDD
1)什么样的步伐合适:测试(对应一行代码清单和少数重构);刚开始重构要严格遵循步骤,当然也不放过自动化重构工具 2)什么可以不必测试:如果不含业务逻辑,如jsp页面只是显示,业务重点测试(条件部分,循环部分,操作部分,多态性) 3)怎样知道代码有缺点: 1.编写测试,创建的对象数据设置代码很长(对象太大,需要分割)
2012-09-29 10:01:18 1050
原创 测试驱动开发笔记(三)——测试驱动开发模式
测试驱动开发模式 1)相互独立的测试:高内聚和松耦合 2)测试清单:从使用者角度得出系统需要实现的需求;划分出大概结构;对每一部分列出需要测试的每种可能性;对于目前还未实现的操作将其空版本写在清单上;这一轮编程后需要的重构。在写测试可能会引入新的测试,写在清单上。 3)测试优先:一种设计和控制规模的方法,至少在中等压力下可以使用 4)
2012-09-29 10:00:26 1220
原创 测试驱动开发笔记(二)——xUnit
1. 防止改完后引起新错误;再次运行单元测试。 2..如果单元测试涉及到可变信息(如当前时间),需要将待测试数据也变为可变,否则无法回归测试 3.使用测试驱动开发必须从头开始,严格进行,否则到半中间会很费事的。 4.测试驱动开发中,私有方法也要测试,可通过反射实现,如Summer example = new Summer.newInstanc
2012-09-29 09:58:14 824
原创 单元测试中的模式
基于接口进行测试对于mock object使用工厂模式。但如果有spring支持,可以实现mock对象的非侵入式替换,这个更方便多级认证问题 我们可以考虑采用 Chain of Responsibility模式将不同的认证逻辑封装到不同的 RequestHandler 中,并通过编码或者根据配置,将所有的 Handler 串联成 Responsibility Cha
2012-09-25 16:28:53 493
原创 测试工具(五)——其他
DbUnit为数据库驱动的项目提供的一个对JUnit 的扩展。执行过程 在测试前备份数据库; 然后放入测试数据; 测试后读入备份的数据库,回溯到测试前状态。基本步骤 1)使用xml构造测试数据; 2)在setUp中备份关联表,读入准备数据; 3)执行测试; 4)tearDown中把数据库状态还原。SQLUnit 对数据库存储过
2012-09-25 13:27:49 544
原创 测试工具(三)——jMock 1.2
Jmock 是一个开源的工具,建立在junit,mock object项目之上,是一个非常优秀的测试工具。接口的模拟 测试类需要继承 org.jmock.MockObjectTestCase。 Mock tobeMock=new Mock(xx.class); testBean.setXxx(tobeMock); tobeMock.expects(once()).me
2012-09-24 20:16:33 1335
原创 测试工具(二)——Easy Mock
特点修改函数名称和参数顺序,不会影响重构支持返回 value和异常支持检察方法的调用顺序安装Maven方式 org.easymock easymock 3.1 test 手动需要 Easymock cglib (2.2) and Objenesis (1.2)使用实例
2012-09-24 19:02:04 2223
原创 测试工具(一)——Abbot 测试SWT
安装Abbot,一个可以自动化的测试 SWT和 Eclipse 插件用户界面的测试框架。1. 从CVS上下载2. 将abbot转换为插件,使用PDE工具3. 修改abbot.swt和abbot.eclipse的类路径和依赖项,保证无错误4. 修改运行的VM参数,添加:-Djava.library.path=D:\eclipse\configu
2012-09-24 18:41:14 2533
原创 代码检查
代码检查表 1. 检查变量和参数的初始化: 在程序的开始和循环的开始 2. 检查 xml jsp java的文件名是否一直 3. 检查集合 new 初始化 4. 文件、连接、stream 等关闭了,写操作调用了flush 使用实践 1. 至少对程序做一个全面的审查 2. 逐个检查每一项,并严格按照动作去
2012-09-22 14:04:01 375
原创 Google的使用
与: 词之间用空格没有2: (-2)或: (1 OR 2 ) ,不能有空格整句搜索: 在句子前后加上双引号在指定的网址内搜索: site: edu.cn sina.com.cn特定类型的文件: filetype: pdf在url中搜索: inurl: 在网页的title中搜索: intitle 相似网页: related
2012-09-21 21:31:45 350
原创 职业感悟
选择企业:企业重要的是他的实力、潜力和文化 价值标准:重要是你能否在一个公司快速成长 发展方式:获得职场前辈的指导,多参加讲座和业内会议 我的方式: 1) 在工作中,确立一个值得你奋斗一生的职业目标,不断地问自己,我还欠缺什么,然后从实践和学习两方面补充自己 2)把自己的出路用市场需求来考虑我的 3)结交比自己优秀的人,协助事业和眼界
2012-09-21 18:39:07 415
原创 需要注意的开发规范和习惯
这两个都需要打印出来,经常提醒自己开发规范类变量:以下划线开始局部变量:在使用前申明。类名:只做一件事;根据职责划分接口:以I开头,或者形容词结尾,如 Runnable注释: 异常处理: 使用@throw, 异常 if 条件; 如果忽略了增加注释为什么 算法: 某种策略的的条件和权衡 父类: protected 描述改写造成的影像方法:
2012-09-21 18:36:02 430
原创 工作心得
工作经验改bug时,先改容易的,显得自己执行力高前紧后松才能把工作干完,任务要尽量往前赶从精神上放松,相信自己规定时间能把工作干完刚入职时一定要拼,对后期发展很重要经营自己的长处,并善于发挥自己的优势对于新功能,先询问是否有系统内和外的参考在和领导沟通时,一定要确定真在自己能力之外在周报中写出自己的成绩,遇到的困惑及需要的指点当面对一个复杂系统的开发职位时,不要
2012-09-21 18:34:06 403
原创 代码心得
建立开发目录和开发规范开发流程获得需求后,axure 画出程序界面沟通针对某一功能,使用 EA 进行简单设计列出开发清单(要开发的内容,不时将新功能加入) 对于清单每一项 考虑输入和返回 边界条件 , 产生单元测试 先从简单的测试(能够打开思路,且知道如何测试)开始编写
2012-09-21 18:33:03 412
原创 学习内容
专业相关: 算法导论 ACM和运筹学 数据挖掘 tomcat和struts2的学习 口语 商务英语 软件可用性 手机开发 shell编程 学习html5 养生国学、历史经济、信息
2012-09-21 18:21:51 553
原创 模板工具(二)——VelocityTools
应该算是Velocity的扩展,为了Velocity更好用。包括GenericTools VelocityView VelocityStruts三个子项目,其中VelocityStruts是为了与struts整合服务,此处不介绍。GenericTools为j2se提供tools使用,具体tools如下: DateTool: 对Date操作:格式化、比较等
2012-09-21 17:26:06 9473
原创 数据库经验
1. 查看具体变量 : show status like 'request%';2. 在构造sql语句时,对于string类型需要在参数上加入'',另一种方式是使用带参数的sql语句3. hql 比sql好的地方是对没上传的数据可以提交默认值,但速度比较慢,不带属性的sql语句写在xml文件中感觉更合适4. tomcat配置datasou
2012-09-19 10:45:31 322
原创 Flex 经验
1. xml文件在 firefox下有缓存问题,需要先在maxton下运行后,再在firefox中运行,好像有缓存2. 使用fusionChart,需要将各种chart和widget拷贝到工程中,并使用FCFolder指定其位置3. 使用ammap中的datas的china.mxml居然instanceName是错误的4.
2012-09-19 10:44:05 379
原创 JS和html 经验
1. 加入提示信息,而且可以是图片型链接。2. html标签: Map:点击图象上一区域跳转到连接, fieldMap:swt中的group3. 使用$.getJSON或$.get访问时,不能调用返回函数,跟踪 ajax的done中发现如下错误信息:由于出现错误 c00ce56e而导致此项操作无法完成。这是编码错误,后台response回写要设置为 char
2012-09-19 10:43:20 477
原创 Struts和JSTL经验
1. 出现struts-default.xml 30:72错误 .project和xml中配置的工程名称错误2. 可包含namespace与struts.xml中相同3. MVC中的异常处理:在本层局部处理,再将同一个(另一个)异常传递出去4. Struts2中的Timer拦截器,需要配置log4j.xml中为info级别
2012-09-19 10:41:45 489
原创 Spring经验
定时器 QUARTZ运行后的调用时间,只能往后设置,否则不运行 配置文件 Spring载入配置文件,如果是两个以上: ApplicationContext ac = new ClassPathXmlApplic
2012-09-19 10:40:45 411
原创 Java经验
1. enum的应用,包括定义,遍历,switch,enumset,enummap(key为枚举类型的变量)等,通常代表常量,effective java 建议使用类来替代,该类私有构造函数,为每一个枚举常量定义 final static的对象,如public static final Suit CLUBS=new Suit("club"); 调用时 Suit.CLUBS。
2012-09-19 10:39:14 441
原创 知识
1. SMC(状态机的实现)使用定义(action,state,transition,next state)的文本,编译生成state模式的类,状态机可用在: 1) application login pool 2) workflow 3) wizard 4) 界面管理,如编辑状态下有转换"取消"和"保存",删除状态下有"确认"和"取消"。状态模式是对象的行为模式,它描述状态所带
2012-09-19 10:38:19 319
原创 findbug的使用
帮忙找出代码中的一些错误。寻找处于bug patterns中的代码。可以独立运行和ant两种方式,其中ant可以实现持续构建功能。使用0. 设置properties的errors/warning 去掉不该检查的1. 打开 bug details视图2. 点击项目,选择 find bugs3. 在problem视图中看到warning和prob
2012-09-19 10:36:36 557
转载 Flex开发包(七)——动画
Tweening 平台介绍TimeLineLite TimelineMax: 作为tween 的容器,可以很容易地管理并行和串行补间动画。TweenLite:快速、轻量、可扩展的tween 引擎,处理一个或多个对象的数字属性的动画,还可以补间 滤镜、16进制color,音量等。TweenMax:在Lite基础上扩展了repeat yoyo repeatDelay timeScal
2012-09-14 17:16:20 1422
原创 xml rpc 相关学习
什么是XML_RPC 一个远程过程调用(远端程序呼叫)(remote procedure call,RPC)的分布式计算协议,通过XML将调用函数封装,并使用HTTP协议作为传送机制。有用特点压缩: 支持对传递的参数和返回值进行压缩Streaming Mode 以流的方式传输数据,适合大数据量和快速传输Handler创建
2012-09-14 12:59:38 1688
原创 一些面向对象的设计法则 学习笔记
一些面向对象的设计法则 Bob Tarr著Favor Composition Over Inheritance组合的优点 容器类仅能通过被包含对象的接口来对其进行访问。 对装性好。 实现上的相互依赖性比较小。(译者注:被包含对象与容器对象之间的依赖关系比较少)组合的缺点 从而导致系统中的对象过多。
2012-09-13 20:18:58 415
转载 数据库建模原则
下述十四个技巧,是许多人在大量的数据库分析与设计实践中,逐步总结出来的。对于这些经验的运用,读者不能生帮硬套,死记硬背,而要消化理解,实事求是,灵活掌握。并逐步做到:在应用中发展,在发展中应用。(a) 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多
2012-09-13 15:11:55 4531
转载 HQL语法
1.实体查询String hql = " from TUser";执行这条语句会返回TUser以及TUser子类的纪录。注: 如果 TUser 类具有外键, 查询会报错!解决方法: select别名.属性 from类 as 别名. 没有别名.属性仍然报错!hql = "from java.lang.Object"会返回数据库中所有库表的
2012-09-13 14:06:04 332
原创 Java常用包
OSCacheOSCache是OpenSymphony组织提供的一个J2EE架构中Web应用层的缓存技术实现组件,Cache是一种用于提高系统响应速度、改善系统运行性能的技术。尤其是在Web应用中,通过缓存页面的输出结果,可以很显著的改善系统的稳定性和运行性能。它主要用在处理短时间或一定时间内一些数据或页面不会发生变化,或将一些不变的统计报表,缓冲在内存,可以充分的减轻服务器的压力,防治负
2012-09-13 12:33:19 472
原创 cookie思路
1. 讲解学习方法 炼:思考、总结、练习(把老师讲的示例自己走一遍) 如何学习一门新技术 以项目的方式来学习 2. 讲解学习路径: 职业发展路线:年薪20万、30万(30岁能达到就很强了) 一切皆有可能 张老师博客中的一句话 技术和管理3. 为什么要学习会话 举一段话的例子:我吃了晚饭,坐地铁,来上课(对这些话进行分析,后面隐含了我的意思)
2012-09-13 10:26:02 411
原创 成功
成功的定义成功就是在理想的指引下,真正做了自己想做得事,真正实现了自己的价值。成功就是超越自己,快乐充实地过每一天。有勇气不断超越自己,不断超越过去也是成功,真正成功的人是那些可以跨越失败和挫折的人成功的秘诀 做人简单,做事勤奋成功的激情 为自己找一个短期目标,当你享受到成就时,就能持续激情。人要和自己比,哪怕每天进步那么一点点,也要让自己保持激情。
2012-09-13 10:21:36 395
common cookbook
2010-10-07
struts+spring+hibernate笔试题
2010-08-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人