在Java静态约束或数据库中维护自定义代码并在每次需要时获取它,是否更好?

时间:2018-10-09 07:21:58

标签: java database-design architecture database-administration postgresql-performance

我有3个基于3NF的表,我的应用程序是Java Web应用程序,将来会变得越来越大。

例如在调查Web应用程序中:

Table1: QuestionType
Column: QuestionTypeID, QuestionType, Description

Table2: ContentType
Column: ContentTypeID, ContentType, Description

Table3: Question
Column: QuestionID, QuestionTypeID, ContentTypeID, Question

使用上面的表结构,我可以使用view / join来获取数据,如下所示:

QuestionID, QuestionType, ContentType, Question

现在,我的问题是,在性能,内存优化,代码可维护性方面,以下选项哪个更好:

  1. 在Java POJO类本身中定义QuestionType,Content Type

  2. 在属性文件中定义QType,CType并将其读取到Java类

  3. 在值数据库中定义,定义静态块以从db读取值并将其保存在静态变量中,以便可以在应用程序之间共享,并且我将仅查询Question(3rd table)。

根据我的猜测,第三个选项可以节省sql引擎中的连接过程,时间和内存(因为与连接3个表之后的整个字符串相比,INT占用的内存更少)。

由于我不是建筑师方面的专家,因此无法对此做出决定。

谢谢!

0 个答案:

没有答案