EJB中实体Bean与数据库无关的疑问???

hustli 2003-08-25 01:50:32
刚学了几天的EJB,看的书是《精通EJB》,在第7章首页,有这么一段话:
为了达到这种清晰的分离(即不依赖于具体的存储,hustli注),您不能再CMP实体Bean类中编写任何JDBC和其他持久化逻辑。容器通过继承您的实体Bean类来生成JDBC代码,。。。。
疑惑:既然容器生成的也是JDBC代码,那岂不又和具体的存储联系了?那它是怎么做到具体的分离的呢?
...全文
29 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
webswim 2003-08-26
  • 打赏
  • 举报
回复
容器生成的也是JDBC代码,那岂不又和具体的存储联系了?
应该是这样的!!

在J2EE中,如果某些数据库需要编写特殊的JDBC代码的话,对CMP而言,这一工作最好留给EJB容器来完成,这样EJB可以实现最好的可移植性。 尽量保证高度可移植性正式J2EE的出发点和精髓吧!

drnstar 2003-08-26
  • 打赏
  • 举报
回复
CMP在部署时都要指定一些数据源,而这个数据源是要在容器中定义的与CMP的业务逻辑没有什么关系,对于CMP来说与数据库的操作如添加、删除什么的都是容器自动生成并与指定的数据源相互操作与开发者无关,使用不同数据库时只要修改数据源就可以了,对业务逻辑没有影响所以体现了相互分离的特点
zhouyiqing 2003-08-26
  • 打赏
  • 举报
回复
容器生成的JDBC代碼實際上它是根據你的XML部署文件生成的,這樣一來做中間件的供應商可以隻提供EJB CLASS給用戶而不是源代碼,假如用戶要有所修改,可以修改XML部署文件達到功能!!

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧