public UserResultBean registerWEBCCInDomain(Object[] beanargs)
{
Domainreg domainreg =(Domainreg)beanargs[0];
Productorder porder=(Productorder)beanargs[1];
Nsiuserinfo nsiuifreg=(Nsiuserinfo)beanargs[2];
Nsiuserinfo nsiuifadmin=(Nsiuserinfo)beanargs[3];
Nsiuserinfo nsiuiftech=(Nsiuserinfo)beanargs[4];
Nsiuserinfo nsiuifbill=(Nsiuserinfo)beanargs[5];
Funddetail funddetail=(Funddetail)beanargs[6];
Dnsregister dns1=(Dnsregister)beanargs[7];
Dnsregister dns2=(Dnsregister)beanargs[8];
这边dns1的某些熟悉值必须从数据库表中来,
dns1.setIp("数据库中的值");
dns2.setIp("数据库中的值");
//dao封装了所有单表的操作
dao.insert(domainreg);
dao.insert(porder);
dao.insert(nsinuifreg);
........
}
这个就是delegate中业务函数的简化,我的做法就是这些所有的javabean都是再command中实现
{
//查询数据库
dns1.setIp("数据库数据");
dns2.setIp("数据库数据");
//生成所有的javabean
Domainreg domainreg =new Domainreg();
Productorder productorder =new Productorder();
Dns1 dns1 = new Dns1();
Dns2 dns2 =new Dns2();
Nsiuserinfo nsiuifreg =new Nsiuserinfo();
Nsiuserinfo nsiuifadmin =new Nsiuserinfo();
Nsiuserinfo nsiusertech = new Nsiuserinfo();
Nsiuserinfo nsiuserbill =new Nsiuserinfo();
//所有javabean的赋值
每个bean都有大量的属性值
......其中有数据库中取到的值,有jsp表单的值,还有固定的比如日期的赋值等操作。
//查询数据库
dns1.setIp("数据库数据");
dns2.setIp("数据库数据");
Object[] args={javabeans};
delegate.registerWEBCCInDomain(args);
}
我们经理的做法:
command:
{
Domainreg domainreg =new Domainreg();
domainreg.setDomainname("jsp表单值");
//只赋值表表单的值,
}
他在delegate中写我在command中的赋值操作,,现在的矛盾就是在javabean的赋值写在什么地方,我们没有用ejb,但是用设计模式多层操作来业务分层,command调用delegate的只是把javabean的参数传过去,,无论是我的做法还是我们经理的做法都是传这样的数据。
我的做法可能要多跟数据库交互一次,因为要赋值,,而且主要是每个函数的业务操作比较复杂,,现在有点不明白这个赋值的操作到底是业务的操作,还是别的。。