设置 GlassFish 服务器

Posted

技术标签:

【中文标题】设置 GlassFish 服务器【英文标题】:Setting up GlassFish server 【发布时间】:2012-08-14 03:18:17 【问题描述】:

我正在 GlassFish 服务器上使用 NetBeans 开发 JSP 项目。该项目使用 MS Access 文件作为数据库。我需要将 MDB 文件放在哪里,以便 JSP 类可以在运行时找到它?

我的代码

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
location = loc.getAbsolutePath().substring(0, loc.getAbsolutePath().length() - 2);
String filename = location + "\\myDB.mdb";
System.out.print(filename);
String database;
database = "jdbc:odbc:Driver=Microsoft Access Driver (*.mdb);DBQ=";
database += filename.trim() + ";DriverID=22;READONLY=true";
c = (DBM) DriverManager.getConnection(database, "", "");

【问题讨论】:

【参考方案1】:

您应该需要设置获得连接的 DSN。请参阅以下步骤;

    如下打开 Windows 的 ODBC 数据源管理器:选择开始 > 设置 > 控制面板 > 管理工具 > 数据源。 在 ODBC 数据源管理器对话框中,单击系统 DSN 标签。 单击“添加”将新的 DSN 添加到列表中。 向下滚动并选择 Microsoft Access (.MDB) 驱动程序。 输入名称“yourDataSourceName”(不加引号,但保持大小写不变) 用于数据源名称 点击 CREATE 并选择一个文件来保存数据库(我选择 "d:\java\test.mdb") - 这会创建一个新的空白 MS Access 数据库。 一直点击“确定”。

【讨论】:

【参考方案2】:

将 MDB 文件放在计算机上的哪个位置并不重要。重要的部分是 Java 需要 JDBC,Java 世界相当于 ODBC。 (不完全等同,但你让我漂移)。但是 MS Access 不支持 JDBC,只支持 ODBC。您需要按照 Sai 所说的设置 ODBC。 Sun 很久以前创建了 JDBC-ODBC 桥作为桥,直到所有 DB 都创建了 JDBC 驱动程序(但不是每个人都这样做......像 Access)。它很久以前就打算消失了,但它仍然存在,您需要使用它并对其进行配置。如果你用谷歌搜索“jdbc odbc bridge”,有很多例子可以说明如何做到这一点,但这里有一个指向该网站的链接:

JDBC with ms-access?

但实际上,您最好查一下。有很多高质量的网站会向您展示。首先查找有关 Oracle 的教程,然后再查找其他地方。远离印度玫瑰或任何所谓的东西。这是不做事的方法。

我建议不要使用 MS Access。除了熟悉之外,您还有什么理由使用 MS Access?最好使用具有本机 jdbc 驱动程序的数据库。有很多高质量的数据库都有现成的 JDBC 驱动程序,这些驱动程序肯定比 MS Access 质量更好、更稳定。

如果您想要开箱即用的易于启动和使用的工具,并且拥有免费的查询和数据库维护工具,请尝试 mysql。只需确保将其设置为使用“InnoDB”选项。这使它表现为一个“酸”兼容的数据库。

我的首选是 PostgreSQL,但如果您以前没有使用过它,一开始设置它可能会有点令人生畏,并且没有核心团队构建的 GUI 工具(它有一些从关联项目构建,但还差得远)构建的数字由 MySQL 提供)。它有一些需要进行的配置以允许 TCP/IP 连接,以及一些关于如何允许用户连接的安全配置。 MySQL 使新用户不那么痛苦。事实上,我认为它与 MS Access 一样易于使用。 (FWIW 我使用 Postgres 是因为我认为 DB 引擎质量更好,功能更强大,适用于更大的项目……比如开源 Oracle)。

还有其他免费的,但如果您从 MS Access 迁移,MySQL 很可能是您可以轻松使用的。

【讨论】:

以上是关于设置 GlassFish 服务器的主要内容,如果未能解决你的问题,请参考以下文章

JDBC连接池设置无法在Glassfish5上运行

选定的目录不是有效的glassfish主页

Glassfish中的Corba?

Glassfish 3.1.2.2:IIOP1002:主要传播:在主题中找不到主要信息

Eclipse Enterprise 中的 Oracle、GlassFish 工具

我可以在一台服务器机器上运行 apache 和 glassfish 吗?