多谢: 你后来的话我理解了。不过:select object(c) from c.customeraddress.homeaddress 返回的是个什麽呢?是address接口还是customer接口?这里需要返回个address的远程接口,来操纵address,但是这个方法是写在customer中的,按照规范应该返回个customer接口啊?
up 多谢: 你后来的话我理解了。不过:select object(c) from c.customeraddress.homeaddress 返回的是个什麽呢?是address接口还是customer接口?这里需要返回个address的远程接口,来操纵address,但是这个方法是写在customer中的,按照规范应该返回个customer接口啊?
select object(c) from c.customeraddress.homeaddress 这个语句有问题
你可以把 select object(c) from c.customeraddress.homeaddress 看成是返回一个home接口的集合
应该是这样。我也有问题,容器管理这关系,有没有很多限制?
比如:
customer和address对应数据建立的先后有没有限制?
如联系的两个表的字段是主键和非主键时,有什么限制?
需要调用A.setB(B)不?什么时候调用?
我在the serverside.com上看到CMR的EJB-Ql:select object(c) from c.customeraddress.homeaddress 其中customeraddress是CMR联系域,关键是我调用这个语句后返回的是个Collection?to beyondhuangjie(盖茨·比尔): 你是说customer中可以用一个已有的字段来做这个column吗?这个字段不一定是int型的吗?
>>>customer和address对应数据建立的先后有没有限制?
如果B依赖于A,就是说只有生成了A才有B,没有A就没有B的话,可以把setB方到ejbPostCreate方法中,并设置相应的cascade
那问题是以后如何根据这个addrss_id(int型的)找到相应的AddressEJB呢?
---------------------------------------------------------------
你现在要做的是操作entity bean而不是操作数据库,你用customer表中的address_id对应address表的id建立对应关系。在bean中使用get set方法来设置和找到关系,getCustoaddress方法得到就是addressEJB的remote或者local接口(也就是你已经得到了addressEJB了)。同样set方法也是用addressEJB的local或者remote接口作为参数的
~~~~~~
~~~~~~
多谢: 你后来的话我理解了。不过:select object(c) from c.customeraddress.homeaddress 返回的是个什麽呢?是address接口还是customer接口?这里需要返回个address的远程接口,来操纵address,但是这个方法是写在customer中的,按照规范应该返回个customer接口啊?
select object(c) from c.customeraddress.homeaddress
看成是返回一个home接口的集合