无法从android中的远程ubuntu tomcat服务器连接mysql数据库

Posted

技术标签:

【中文标题】无法从android中的远程ubuntu tomcat服务器连接mysql数据库【英文标题】:unable to connect mysql database from remote ubuntu tomcat server in android 【发布时间】:2012-11-23 04:34:05 【问题描述】:

我已经开发了一个java应用程序。在这里我必须在我的本地服务器上运行java类,这意味着右键单击项目---运行为--->java应用程序。

所以我得到了输出。

但我希望将此 java 应用程序上传到我的远程 tomcat 服务器。所以我已将我的项目导出为 war 文件。之后我必须在远程 tomcat 服务器中解压缩 war 文件。现在我必须运行这些项目。

java代码如下:

 public class Fetch 
 public String customerData()
 String customerInfo = "";
 try
 Class.forName("com.mysql.jdbc.Driver");
 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/android","androiduser","AN124@7#7");
 //Find customer information where the customer ID is maximum
 PreparedStatement statement =  con.prepareStatement("SELECT * FROM xcart_customers");
 ResultSet result = statement.executeQuery();
 while(result.next())
  customerInfo = customerInfo + result.getString("login") + "&" + result.getString("password") + "&"+result.getString("firstname") + "&"+result.getString("email");
 //Here "&"s are added to the return string. This is help to split the string in Android application
  
 
catch(Exception exc)
System.out.println(exc.getMessage());

return customerInfo;


如何在远程 tomcat 服务器上运行这些 Fetch.java 类。请帮助我。如何获取检索数据。

【问题讨论】:

要在此处添加答案,您需要在 servlet 的 init 方法中设置 jdbc 初始化代码。 【参考方案1】:

Tomcat 是一个实现 Servlet 和 JSP 规范的 Web 服务器。

因此,它不适用于像我们在命令提示符下使用 javacjava 命令那样运行普通的 java 应用程序。

您需要一个 Web 应用程序来从 servlet 运行您的文件。所以首先你需要了解 servlets。See the Servlets Wiki page on ***

【讨论】:

【参考方案2】:

您的代码使用服务器地址、用户名和密码的硬编码值。这些东西应该作为 Tomcat 服务器配置的一部分进行配置。我自己对 Tomcat 没有太多经验,但请看一下这篇文章,希望能让你走上正确的道路。

http://tomcat.apache.org/tomcat-7.0-doc/jndi-datasource-examples-howto.html

【讨论】:

以上是关于无法从android中的远程ubuntu tomcat服务器连接mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章

无法连接远程调试器

ubuntu 部署的mysql无法远程链接

无法与远程用户连接到MySQL(托管在Ubuntu VPS上)

Android Studio - 推送失败:致命:无法从远程存储库读取

ubuntu无法ssh远程连接

VSCode Remote SSH 无法从终端打开文件