Java 和本地数据库

标签 java database database-connection local

TL 博士;需要一些 Java 帮助连接到真正的本地数据库(无法访问服务器技术),或者如果您可以编写代码,那将起作用。它所要做的就是查询数据库(MS Access,尽管可以更改),并输出一个 JSON 字符串。有关更多特异性,请参阅 EDIT2。

编辑:在任何人说 JDBC 之前;我浏览了教程(开始深入阅读),但其中大部分似乎是针对服务器技术的,我无法访问这些技术。

EDIT2:到目前为止,似乎大多数答案都需要安装某种我很遗憾不能做的东西(并且没有提到,所以我很抱歉)。然而,这是目前正在使用的,我想要一个类似于 Java 的解决方案,这将使它更加跨浏览器兼容,而不是仅作为 HTA(链接:https://launchpad.net/accessdb)

好的,对于长版本。我正在尝试使用本地数据库来创建桌面样式的工作应用程序(并可能将知识用于其他项目)。我可以毫无问题地创建数据库(MS Access 2003,恰好可以快速使用)。目前我正在使用 ActiveX 脚本在 HTML 应用程序中处理数据库(*.HTA 文件仅适用于 Internet Explorer),我真的很想让它更跨浏览器(如果公司曾经切换到实际浏览器) 通过JAVA访问数据库,然后将结果以JSON形式输出到JavaScript可以调用和利用的局部变量。

老实说,我更喜欢教程类型的信息,因为我想真正了解它为什么有效,以便以后可以修改它以满足我的需要。我安装了 Eclipse 和 JDK,并且可以正确地使用 Java 编写小程序,所以还没有完全脑死亡(但离 :P 不远了)。我一直在使用 JavaScript,所以我可以阅读相当多的 Java 代码(语法不一样,因为它们不相关,但我对 Java 的了解很少,我可以毫无问题地翻译回 JS)。

无论如何,我们将不胜感激。我可以继续使用 ActiveX 进行开发(据我所知,它可以在系统上运行,而且我 99% 确定他们会继续使用 Internet Explorer,但是,我想要一些灵 active )。

最佳答案

我不确定我是否完全理解您的要求,但我确实破译了一些关键点。我的建议是让您在单个包(比如 JAR)中交付一个完整的工作应用程序,不需要太多(如果有的话)配置或管理服务器。

一些必备技能:

  • Java 编程语言
  • JDBC、SQL
  • JSP 和 Servlet(用于 Web 层)

I'm trying to make use of a local database to create a desktop style application [...] I Want some Java help with connecting to a truly local database ( no access to server tech )

数据存储

JDBC 可以与任何具有 JDBC 驱动程序的数据库一起使用,这不一定是“网络模式”下的数据库,它也可以与嵌入式数据库一起使用。

这是一个 Derby 在 embedded mode 中的例子: alt text

When an application accesses a Derby database using the Embedded Derby JDBC driver, the Derby engine does not run in a separate process, and there are no separate database processes to start up and shut down. Instead, the Derby database engine runs inside the same Java Virtual Machine (JVM) as the application. So, Derby becomes part of the application just like any other jar file that the application uses. Figure 1 depicts this embedded architecture.

这里有一些 100% Java 和可嵌入的数据库:

http://www.h2database.com/html/main.html

http://db.apache.org/derby/

http://hsqldb.org/

网络层

您还可以嵌入 Web 服务器,如 Jetty .

Jetty has a slogan "Don't deploy your application in Jetty, deploy Jetty in your application". What this means is that as an alternative to bundling your application as a standard WAR to be deployed in Jetty, Jetty is designed to be a software component that can be instantiated and used in a Java program just like any POJO.

嵌入 Jetty .

请注意,您可以通过这种方式使用其他网络服务器。

关于Java 和本地数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3243466/

相关文章:

c# - 由于自动增量字段,无法使用 tableadapter.insert 方法插入数据

sql - Oracle 中的 "||"运算符和 concat 函数有什么区别?

mysql - 如果列为空,如何在配置单元中获取不同的行

database - SQL数据库项目用于部署数据库的端口号

c# - NHibernate MySqlException

java - 如何在java swing中将行值添加到jtable?

java - 将 ScrollView 和 Horizo​​ntalScrollView 添加到 TableLayout

java - 在 Mac OS X 上安装、配置和运行 Hadoop 2.2.0

c# - connection.open 挂起/卡住。我的连接字符串有什么问题?

java - 使用正则表达式 Java 在其他已知(但可选)字符串之间查找未知子字符串