当前位置: 技术问答>java相关
查询返回多条记录是不是就不能使用Entity Bean了?
来源: 互联网 发布时间:2015-07-25
本文导语: 我在有的材料中看到Entity Bean代表数据库中的一条记录,请问如果对数据库的查询要返回多条记录,是不是就不能使用Entity Bean了?如果可以用,应该采用什么办法? | 肯定可以的。 | ...
我在有的材料中看到Entity Bean代表数据库中的一条记录,请问如果对数据库的查询要返回多条记录,是不是就不能使用Entity Bean了?如果可以用,应该采用什么办法?
|
肯定可以的。
|
Entity Bean代表一个“实体”,它可以被序列化,可以长期存在。与之相对的是Session Bean,Session Bean不能序列化(有状态Session Bean可以将自己的状态序列化保存下来),生存周期比较短(等于或略大于该次对话的时间,取决于应用服务器的实现策略)。
有一种形象的比喻:Entity Bean就像数据库中的一条记录,它是长期存在的,保存状态的;Session Bean就像SQL语句或者存储过程,它是无状态的,短期存在的。但没有“Entity Bean代表数据库中的一条记录”这样一种说法。只要长期存在的东西(例如一个雇员、一件货物),都可以用Entity Bean来表示。
如果你想把“查询数据库”这个操作用EJB表示出来,似乎Stateless Session Bean会比较合适。
有一种形象的比喻:Entity Bean就像数据库中的一条记录,它是长期存在的,保存状态的;Session Bean就像SQL语句或者存储过程,它是无状态的,短期存在的。但没有“Entity Bean代表数据库中的一条记录”这样一种说法。只要长期存在的东西(例如一个雇员、一件货物),都可以用Entity Bean来表示。
如果你想把“查询数据库”这个操作用EJB表示出来,似乎Stateless Session Bean会比较合适。
|
我也想过这个问题,
通常我们的做法就是用一个entity bean来代表一条数据
由于使用像jbuilder7一类的能自动生成代码的工具
使得一个entity bean对应数据库中一个表生成起来非常的方便
所以如果想要对数据进行插入,单条记录的删除和更新,
那么用entity bean就非常方便,而如果要进行查询操作的话,
岂不是要生成很多bean(架设为1万条),这样服务器的效率不就太低了吗?
这样还不如在Session bean里使用通常的方法,
Connenction -> Statement -> RecordSet
效率更高些
通常我们的做法就是用一个entity bean来代表一条数据
由于使用像jbuilder7一类的能自动生成代码的工具
使得一个entity bean对应数据库中一个表生成起来非常的方便
所以如果想要对数据进行插入,单条记录的删除和更新,
那么用entity bean就非常方便,而如果要进行查询操作的话,
岂不是要生成很多bean(架设为1万条),这样服务器的效率不就太低了吗?
这样还不如在Session bean里使用通常的方法,
Connenction -> Statement -> RecordSet
效率更高些
|
我也想过这个问题,
通常我们的做法就是用一个entity bean来代表一条数据
由于使用像jbuilder7一类的能自动生成代码的工具
使得一个entity bean对应数据库中一个表生成起来非常的方便
所以如果想要对数据进行插入,单条记录的删除和更新,
那么用entity bean就非常方便,而如果要进行查询操作的话,
岂不是要生成很多bean(架设为1万条),这样服务器的效率不就太低了吗?
这样还不如在Session bean里使用通常的方法,
Connenction -> Statement -> RecordSet
效率更高些
通常我们的做法就是用一个entity bean来代表一条数据
由于使用像jbuilder7一类的能自动生成代码的工具
使得一个entity bean对应数据库中一个表生成起来非常的方便
所以如果想要对数据进行插入,单条记录的删除和更新,
那么用entity bean就非常方便,而如果要进行查询操作的话,
岂不是要生成很多bean(架设为1万条),这样服务器的效率不就太低了吗?
这样还不如在Session bean里使用通常的方法,
Connenction -> Statement -> RecordSet
效率更高些
|
返回值用collection或者用entity QL都可以,不过最好用session bean包装,要不然每次rpc性能是问题
|
关注