gpt4 book ai didi

java - 与现有数据库(模型)一起使用

转载 作者:行者123 更新时间:2023-12-01 16:56:35 26 4
gpt4 key购买 nike

我可以使用链接到现有数据库(示例 SAP DBB)的 Play Framework 来仅显示:

Dashboards (Queries)
Charts (Queries)

我开发了一个身份验证页面,突然间,我没有考虑如何在不声明模型的情况下从现有数据库中提取数据!

仅提取大量查询数据并将其显示在 View scala(Play 框架 JAVA)上的好方法是什么?

非常感谢

最佳答案

我们还有许多现有数据库,但没有 Play 应用程序中每个表的完整模型。我在 Play 应用程序中为所有必需字段(也是所有列的子集)创建一个案例类。这是 Scala 代码,当然也可以使用 Java。

  case class Positionstext(akt_abnr: Int
, akt_text_art: Int
, akt_text_pos: Int
, akt_text: String) {

}

精心组装的 SQL 命令从一个或多个表中检索行。

  def positionstexte(x: Int) : List[Positionstext] = {

DB.withConnection{ connection =>

val select =
""" select plr_ak_texte.akt_abnr
, plr_ak_texte.akt_text_art
, plr_ak_texte.akt_text_pos
, plr_ak_texte.akt_text
from plrv11.plr_ak_texte
, plrv11.plr_auftr_status
where plr_ak_texte.akt_abnr = plr_auftr_status.as_abnr
and plr_ak_texte.akt_aend_ix = plr_auftr_status.as_aend_ix
and plr_ak_texte.akt_abnr = ?
and plr_ak_texte.akt_text_art = 7
and plr_auftr_status.as_aend_ix <> 99
"""

val prepareStatement = connection.prepareStatement(select)

prepareStatement.setInt(1, x)

val rs = prepareStatement.executeQuery

var list: ListBuffer[Positionstext] = scala.collection.mutable.ListBuffer()

while (rs.next) {
list += new Positionstext(rs.getInt("akt_abnr")
, rs.getInt("akt_text_art")
, rs.getInt("akt_text_pos")
, rs.getString("akt_text"))
}
rs.close()
prepareStatement.close()
list.toList
}

就是这样! SQL 命令已经通过使用子查询、连接等完成了大部分工作。

所有需要的对象现在都在列表中,并且可以显示在 View 中。

关于java - 与现有数据库(模型)一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61579968/

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