被调到新的项目组,理论上算个Team Leader,没有真正的转正,老大最开始跟我说这边的事情我可以做主,但是美国那边有个架构师开始搭了个架子,意思是在这个架子的基础上做,试了下,发现很繁琐,为了增加一个方法,得修改好多个类。这个阶段其实是个过渡阶段,以后我们会使用Web Service,所以我们哟定义Web Service的接口,然后因为是过渡阶段,所以提供了EJB2的过渡方案和原来的系统整合,所以还得改Remote接口,Local接口可以直接从Service接口extends一下就行了,然后得修改Service的实现类,加上原先的架子里面,设计的是Service里面的每个public方法对应一个Operation类,这些类设计成Command模式,方便以后可以更好的进行负载的Dispatch,就这样,给Service增加一个接口,要完全实现得至少修改3个类,增加一个类,而且前两天也提过这个项目使用的Annotation的一个好处,但是这样一来,我要实现那个接口,也得在Finder里面增加方法。最终,我得修改4个类,增加一个类来增加一个Service接口。天啊,这个是我最讨厌的。
下周打算修改这个架子,取消EJB2的临时方案,使用Dynamic Proxy实现Service,同时可以引人Transaction(这个方案原来也用了,但是架构师以Transaction的问题否决了,那个时候还没有想到怎么解决Transaction的问题,前天突然想起来我的EJB单元测试框架就是用的自定义Transaction的),同时也抛弃Finder的那个方案,因为其实我的BaseOperation已经提供了进行Hibernate的查询的方便的基础功能。最重要的是Finder中定义的Query如果有问题的话修改后不能Hot Deploy,如果在Operation的方法体里面的修改就可以Hot Deploy。这样修改后,增加一个接口只需要修改Service然后增加一个Operation类实现就行了,只要改两个地方。
分享到:
相关推荐
增加1:在添加页面,输入要添加的数据项均合理,检查数据库以及列表页是否添加了相应的数据2:在添加页面,留出一个必填项为空,检查是否会提示3:按照边界值等价类设计测试用例原则设计其他输入项测试用例4:不符合...
改写上面的类,增加一个类的静态属性“最小余额”和一个用来修改这个最小余额属性的方法。 改写上面的类,增加一个类的静态属性“活期利率”和封装这个属性的相应方法。 程序模块 实验后的结果验证 总结体会 通过...
3.15 我要检查一个数是不是在另外两个数之间,为什么if(a b c)不行? 40 3.16 为什么如下的代码不对?int a=1000, b=1000; long int c=a * b; 40 3.17 为什么下面的代码总是给出0?double degC, degF; degC= ...
3.15 我要检查一个数是不是在另外两个数之间,为什么if(abc)不行? 3.16 为什么如下的代码不对?inta=1000,b=1000;longintc=a*b; 3.17 为什么下面的代码总是给出0?doubledegC,degF;degC=5.0/9*(degF-32); ...
将图插入文档中后,选中新插入的图,在“插入”菜单选“题注”,新建一个标签“图1-”,编号格式为阿拉伯数字(如果不是点击“编号”修改),位置为所选项目下方,单击“确定”后Word就插入了一个文本框在图的下方...
要链接到一个文档,单击Link to a Document,并输入文档路径名。 单击Tools工具栏中的Hyperlink工具,并单击图上某一个要素即可实现。 使用一个属性字段作为超链 在内容表中右击包含一个超链接字段的图层,然后...
previous up contents next C 语言常见问题集 原著:Steve Summit ... o 8.5 一个指针变量分配多少内存? o 8.6 我有个函数, 本该返回一个字符串, 但当它返回调用者的时候, 返回串却是垃圾信息。 ...
同理,每个格的数值对应键盘的每个键,需要在屏幕哪个位置增加哪个键就修改哪个就改哪的个值(对应原键值的数值修改,1-12分别代表手机键盘的#、*、0-9、13-14代表左右软键),比如我们要在屏幕中间增加一个”#“键...
前言 SQL Server开发过程中,为了传入数据集类型的变量(比如接受C#中的DataTable...为了达到公用的目的,有时候一个TableType可以在多个地方分别被引用到,这样的话,势必要先删除所有的引用了这个“用户自定义表类型
安卓修改大师可以在没有源代码的情况下,直接反编译已经打包的APK安装包,通过修改SMALI代码实现添加和去除部分功能,并在应用的任何地方添加任意代码,增加任意任何您想实现的功能。本教程通过对最近流行的“最美手...
包含二手房、出租、楼盘、招聘、二手、生活信息、新闻资讯、黄页、促销、便民电话等地方类网站运营中常用的功能,支持多套皮肤随时切换,无需太专业的知识,修改标签就能完成绝大部分的页面修改,实现每个网站自己的...
2、BUILDER — MM 最爱听的就是“我爱你”这句话了,见到不同地方的 MM,要能够用她们的 、 方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到 MM 我只要按对应的键, 它就能够用相应的...
从一个OCX调用另一个OCX的方法。 95 得到视 96 字符转化时间 96 二进制还是文本方式? 99 发送消息 99 怎样知道菜单运行时的状态 99 DLL编译出错 100 通用控件的显示窗口 100 如何禁止和使能控件 100 如何在OLE控件中...
从一个OCX调用另一个OCX的方法。 95 得到视 96 字符转化时间 96 二进制还是文本方式? 99 发送消息 99 怎样知道菜单运行时的状态 99 DLL编译出错 100 通用控件的显示窗口 100 如何禁止和使能控件 100 如何在OLE控件中...
要建立一个有效的Web服务应用,你必须能够识别一个连续的来自远端的客户机的唯一的请求。随着时间的过去,发展了许多会话跟踪的技术,但是使用起来都比较麻烦。 JavaServletAPI提供了一个简单的接口,通过这个接口,...
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其...
这种模型要求在对一个文件修改前首先要锁定这个文件, 然后才能修改,这时,别人将无法对该文件进行修改, 当修改完后再释放锁,使其他人可以对该文件进行锁定,然后修改。 锁定文件的方法是:TortoiseSVN->Get ...