- 浏览: 46914 次
- 性别:
- 来自: 武汉
文章列表
工厂模式是我们最常用的模式了,著名的Jive论坛
,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。
为什么工厂模式是如此常用?因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A
a=new A()
工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑实用工厂模式,虽然这样做,可能多做一些工作,但会给你系统带来更大的可扩
展性和尽量少的修改量。
此例子源于需要在很多地方的姓名和电话号码上补充验证。
fixedTe ...
我们公司大量的设计都体现了规格模式,设计出来的只是规格,然后再去实例化。业务规则不适于放在任何已个实体或值对象中,而且规则的变化和组合会掩盖那些领域对象的基本含义。有时经常造成组合爆炸。规格是模型的一部分,将它们从实体或值对象中独立出来有助于使模型更加清晰,它表达的是业务的规则。规格是值对象,它用来判断对象
是否满足标准的谓词。
商品依赖关系就是一种规格,在它下面可以存在各种各样的关系,例如现在展现的主副机,例如基本包与增值等等。
/**
* 商品的依赖关系
* 例如基本收视副机依赖基本收视商品
*/
public abstract class ProductOffer ...
在bea9\user_projects\domains\sgip_domain\bin加上
set JAVA_OPTIONS=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=6999,server=y,suspend=n
这个双引号是由于字段名是小写,PowerDesigner才会加上双引号.
Database-> Edit Current DBMS...-> Script-> Sql-> Format-> CaseSensitivityUsingQuote 改为No。
1);隔开仅执行分号前sql
preferences -> window types -> sql window - > AutoSelected statement
2)关键字大写
3)查询条数初始显示上限
4)过长的数字不要显示成科学计数法
5)记住登陆密码
设置方法:PL/SQL Developer 7.1.2 ->tools->Preferences->Oracle->Logon History , “Store history”是默认勾选的,勾上“Store with password” 即可,
一直想系统的整理一下自己有关Domain Model实践的尝试。但总觉得自己的想法还不够系统而作罢。
然而从另一方面看"系统的东西"也许永远做不到,失去了目标的生活该会多乏味。
因此我决定将自己有关Domain Model设计的有关实践和思考和盘托出,也算是抛砖引玉。欢迎大家
参与讨论,遇到同你的观点相左的地方,希望能以包容的态度来面对,我们是朝同一方向走的伙伴而不是
相互对视的敌人。:)
在深入讨论之前我先抛出一些原则和概念,最后你会看到这些概念和原则的威力。
1.按照概念依赖的原则来组织业务层。
2.将业务活动(业务流程 ...
TMF全称:TelecomManagement Forum(电信管理论坛)
TMF提出了NGOSS模型,包括了eTOM、TAM、SID和TNA四个框架模型,
被国际电信运营商和设备提供商以及电信运营支撑系统开发商广泛接受,
成为事实上的国际标准。
NGOSS全称: New Generation Op ...
public class StringUtil {
/**
* 空字符串和null字符串返回true
* @param string
* @return
*/
public static boolean isNil(String string){
return string == null || string.length() == 0;
}
public static boolean isNotNil(String string){
return !isNil(string);
}
/**
...
public class Money extends Quantity<Currency> {
private static final long serialVersionUID = 4586753888134642487L;
private static final Currency DEFAULT_CURRENCY = Currency.getInstance("CNY");
private static final int DEFAULT_SCALE = 2;
public static final Money ZERO ...
在加上[]导出到excel就不会是科学计数法显示
'['|| aoi.act_id ||']'
nvl函数转换掉
nvl(aoi.ORIGINALPAYGRADE,' ')
如果是时间类型可以先转换成char
nvl(to_char(aoi.PAYGRADEORIGINALEXPIRATIONDATE,''),' ')
字符串a是否包含字符转b
- 博客分类:
- 错误中的收获
此处注意要是>=0而不是>0,因为位于首位的话会返回0, 如果不包含则返回-1。
if(productSummaryDisplayInfo.getName().indexOf("虚拟") >= 0)
由于此处需要通过customeCode查询,但此时构造model的时候还得不到getCustomerCode().所以此处值填null
nomalBase = new SelectableFieldModel(this, new NotifiableList<TypeInfo>(TypeInfo.class, null));
loadDate时刷入数据.
protected void loadData() {
nomalBase.getValues().refresh(productService.findNomalBaseProductForJM(getCus ...
账户被锁着,要想修改可以在SQL语句中输入:
alter user [username] account unlock;
例如想修改Scott账户可以这样写:
alter user scott account unlock;
第四种循环(迭代)不能做删除
- 博客分类:
- 错误中的收获
迭代需要删除时不能用第四种循环而应用第三种.
for (Iterator<CustomerProductUsageDisplayInfo> iterator = customerProductUsageDisplayInfos.iterator(); iterator.hasNext();) {
CustomerProductUsageDisplayInfo customerProductUsageDisplayInfo = (CustomerProductUsageDisplayInfo) iterator.next();
for (String Pro ...
Location ---- C:\Windows\explorer.exe
Argument ---- ${container_loc}