gpt4 book ai didi

java - 使用 RDBMS 的面向对象方法

转载 作者:行者123 更新时间:2023-11-29 01:24:13 24 4
gpt4 key购买 nike

我有一个关于在使用 RDBMS(例如 mysql)时如何使用面向对象方法的问题。我正在开发一个小型应用程序来跟踪计费。它是用java构建的,我使用MySQL数据库来存储数据。我的应用程序有一个客户和一个产品类别。现在,通常情况下,如果我使用数组或不同的数据容器处理持久数据存储,我将为客户类和产品类进行更新、删除等操作。然而,我发现自己使用比以往更多的静态方法。因为我没有客户数组,例如我只有一个包含客户信息的数据库,所以当我可以调用删除基于客户(或产品)的静态方法时,我认为创建客户对象只是为了删除它没有意义在其主要 ID 上。最后,我觉得甚至没有理由创建客户或产品类,因为不需要特定的方法。

我想问大家的是,在使用RDBMS时,如何采用面向对象的方法?

最佳答案

使用 OO 原则设计您的 Java 类。

使用 SQL 和规范化原则设计您的数据库。

然后,全速迎接对象/关系映射的挑战! :-)

像 Hibernate 和 Ibatis 这样的技术是专门为帮助解决这个问题而设计的,这是一个有据可查的问题。像 Spring 这样的附加技术可以使它们的使用变得非常简单和愉快。

将您的持久性抽象到 DAO(数据访问对象)层,例如如果您有很多像 Vehicle 和 Animal 这样的类,那么您将拥有像 VehicleDao 和 AnimalDao 这样的 DAO,以将它们与数据库通信的方式与它们在系统中的基本操作分开。

FWIW,我主张这样做:在应用程序端进行良好的应用程序设计,在数据端进行良好的数据库设计。完成此操作后,在将类数据保存到数据库或从数据库检索类数据时,总有一种方法可以映射这两者,在我看来,这比损害其中一个层来“帮助”另一个层要好得多。

关于java - 使用 RDBMS 的面向对象方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7012133/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com