无法从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 服务器。
因此,它不适用于像我们在命令提示符下使用 javac
和 java
命令那样运行普通的 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数据库的主要内容,如果未能解决你的问题,请参考以下文章
无法与远程用户连接到MySQL(托管在Ubuntu VPS上)