Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 设置一个连接到数据库的服务器,从中获取信息,然后将其发送到Android应用程序_Java_Android_Json_Sockets_Server - Fatal编程技术网

Java 设置一个连接到数据库的服务器,从中获取信息,然后将其发送到Android应用程序

Java 设置一个连接到数据库的服务器,从中获取信息,然后将其发送到Android应用程序,java,android,json,sockets,server,Java,Android,Json,Sockets,Server,我有一个看似复杂的项目要做:我有一个android应用程序,它必须连接到服务器,服务器必须从数据库提供这个应用程序的信息 现在,我必须从头开始用Java编写这个服务器(因为我知道并且想使用Java语言)。这是我的计划: 1) 创建数据库,用信息填充它(目前从MySQL终端)。最终,我创建的这个服务器实际上必须连接到另一个服务器并从那里获取信息,然后用这些信息填充数据库。但我还没到那个阶段 2) 创建一个服务器(我猜,使用Tomcat7),其中有几个类正在“运行”:一个使用JDBC连接到数据库的服

我有一个看似复杂的项目要做:我有一个android应用程序,它必须连接到服务器,服务器必须从数据库提供这个应用程序的信息

现在,我必须从头开始用Java编写这个服务器(因为我知道并且想使用Java语言)。这是我的计划:

1) 创建数据库,用信息填充它(目前从MySQL终端)。最终,我创建的这个服务器实际上必须连接到另一个服务器并从那里获取信息,然后用这些信息填充数据库。但我还没到那个阶段

2) 创建一个服务器(我猜,使用Tomcat7),其中有几个类正在“运行”:一个使用JDBC连接到数据库的服务器,从那里获取信息,并从从那里获得的每个记录中创建一个新对象(不完全确定我是如何做到的);还有另一个类,它既可以作为JSON端点,也可以作为套接字连接服务器(我一生中从未做过类似的事情——当然,我过去曾连接到JSON端点,但我自己从未创建过JSON端点,即服务器端)。此连接必须每2秒左右更新一次(来自数据库的新信息必须从服务器发送,或从服务器请求),以便实时工作

3) 在我的Android应用程序中创建一种从服务器获取信息的方法。如果服务器端的解决方案是一个JSON端点,那么显然,连接到该JSON端点并获取类似的信息。如果是套接字连接,显然,服务器应该将信息推送到某个端口,而不管是否有客户端连接到该端口。再一次,我不知道该怎么做

4) 然后,在安卓系统中,解析数据并将其显示在屏幕上、列表中等(这是稍后的阶段,一旦我在实际应用程序中从服务器获取数据)

你们推荐什么?我的方法应该是什么

我想我应该安装一些像Tomcat7这样的服务器,然后。。。我如何实际“运行”连接到数据库的类,以及如何创建JSON端点以便我的应用程序可以连接到它

显然,在此期间我将浏览教程,但是假设我正在构建这些类,如何让它们在Tomcat中实际运行(也就是说,在作为服务器运行的机器的IP上实际可见)

我知道我在这里提出了很多问题,但是。。。这是我必须做的。任何帮助都将不胜感激

此外,您是否认为套接字连接是我的应用程序的可行选项,而不是JSON?(尽管在Android世界中,JSON似乎是“常态”)。记住,现在,我必须每两秒钟更新一次这些信息。我如何保持我的应用程序和服务器之间的连接处于打开状态,这样它就不会每次都发出请求或诸如此类的事情


再次感谢您的帮助

您所说的是典型的客户机-服务器通信。实现这一点有几种模式,也有各种方法

1) MySQL for DB是一个很好且广泛使用的选择

2) 您可以使用ApacheTomcat,但所需的服务器类型也取决于项目的规模(以及许多其他因素)。Tomcat是典型的,看看您所指定的一些基本方面,就足够了。其他选项有JBoss、GlassFish等,它们不像Tomcat那样轻量级,面向不同类别的应用程序。用于来自服务器和客户端的端点。您有几种技术—Web服务、RPC、EJB等等。我会选择web服务。我觉得基于REST的更简单。有很多可用的库和很好的教程来构建它们。数据库-服务器交互,如果需要事务和对象到关系模型映射,考虑ORM工具。Hibernate被广泛使用

3) 取决于您在2中使用的技术

4) 不确定可以在Android中使用的客户端库。那件事得由别人来填补


希望能有帮助

你的应用程序看起来很酷。我可以在上面开发:驻留以连接并获取您需要的Api数据,当然,如果正在检索数据,它必须在远程服务器的某个位置可用。我的服务器上有一个MySQL数据库,其中“我的服务器”=我的本地计算机。所以数据库软件是一个MySQL,我将在接下来的几个小时内用记录编写实际的数据库。然后,我需要一种方法来创建实际的服务器,并创建到数据库的连接,将数据库中的信息作为java对象提供,并每两秒钟将它们发送到我的应用程序。好主意,好极了。您可以使用java代码创建api。RESTAPI。好吧,它确实有帮助,但在“伪代码”级别上,它几乎是我已经想到的。现在,我需要首先创建数据库(今天我将这样做),然后我需要找到一种连接到它的方法。但这不能在“真空”中完成,也就是说,所有这些的设计都必须有一些连续性(当我进行连接时,我必须记住我需要另一个实际发送信息的类)。这就是我开始感到有点困难的地方。我的主要问题是-我如何创建JSON端点,使其在服务器上运行?您能指出与此相关的任何参考资料/教程吗。“Rest-WS”听起来像是一个非常通用的描述,就像说“使用数据库”:)这不完全是这样,但一个简单的搜索向我显示了这两个结果-&我必须指出,这是体系结构决定,所以在你完成事情之前,考虑一下项目的规模:)这只是一个曾经拥有