gpt4 book ai didi

java - 将基于 Hibernate 的 J2EE 应用程序部署到远程服务器的正确方法

转载 作者:行者123 更新时间:2023-12-02 08:37:37 24 4
gpt4 key购买 nike

我这里正在开发一个非常可怕的 Java 应用程序。截至目前,它仅部署在我本地安装的 Tomcat/MySQL 设置上。

为了完整起见,该应用程序是一个使用 Spring、Hibernate 编写的在线游戏服务器,目前后端有 MySQL。

现在,我可以轻松地将 WAR 打包并在远程服务器上获取它。问题出在数据库上。现在,它是通过 ANT 脚本生成的,该脚本使用 Hibernate(特别是 HBM2DDL Ant 任务)来生成架构,然后使用静态 SQL 和几个从其他数据(XML大多)。之后,我就有了一个完全创建的数据库,其中填充了游戏服务器“启动”数据集。

这个问题在 Java 中有点绿色,我不知道部署它的正确方法是什么。

我应该:

  1. 从本地 MySQL 导出 SQL 并手动将其导入到新服务器上?呃。
  2. 让 ANT 脚本变得不那么糟糕(现在有很多硬编码目录)并在服务器上运行它?
  3. 我不知道的优雅选择?

另一个复杂之处是 WAR 将发送到与 MySQL 数据库不同的服务器。是否有 Java 书籍或 Web 资源可以全面解决此类部署问题?

最佳答案

我认为有3个选择:

  1. 更改 ANT 脚本以将远程计算机上的数据库作为目标。您可以在本地计算机上运行它,因此不必更改它:它将在相同的位置找到必要的文件。此方法的主要缺点是通过网络(互联网)执行大量 SQL 可能会很慢。
  2. 将架构从本地(构建)数据库导出到新数据库。如果您的数据库支持某种二进制格式,那么它不一定是 SQL。通常这是最快且最不容易出错的方法,尽管如果远程数据库的配置与本地设置(例如字符集)略有不同,可能会出现一些非常微妙的问题。
  3. 在您的服务器上运行 ANT 脚本。最大的问题是你的数据库服务器必须拥有所有必要的工具(如 ant 和 java),而且还必须拥有所有源文件(hibernate 映射),而它通常(作为数据库服务器)不需要。<

关于java - 将基于 Hibernate 的 J2EE 应用程序部署到远程服务器的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1051632/

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