Java 如何从jsp连接MySQL数据库和我的Web服务器

Java 如何从jsp连接MySQL数据库和我的Web服务器,java,mysql,jsp,jdbc,Java,Mysql,Jsp,Jdbc,我在本地系统中使用这个 Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname", "userid", "password"); 两者都工作正常。但当我试图用这个连接服务器时 Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverMana

我在本地系统中使用这个

Class.forName("com.mysql.jdbc.Driver");

Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname", "userid", "password");
两者都工作正常。但当我试图用这个连接服务器时

Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname", "userid", "password");
它不起作用了!
数据库用户名和密码都是正确的,所以我如何连接到数据库服务器。有人能发布解决方案吗???

您上面的示例似乎有点不正确。两者都指向localhost域,但您的问题可能与以下事实有关:默认情况下,您的数据库不允许对特定的username+db组合进行远程连接

mysql> CREATE DATABASE foo;
mysql> GRANT ALL ON foo.* TO bar@'192.168.1.1' IDENTIFIED BY 'PASSWORD';

我希望我没有误解这个问题,只提到标题:如何从jsp中连接到mysql

有不同的选项:让连接处理容器/应用程序服务器,或者在jsp中动态处理。据我所知,您希望从jsp进行连接,因此请尝试以下操作:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>

<html>
<head>
<title>SELECT Operation</title>
</head>
<body>

<sql:setDataSource var="db" driver="com.mysql.jdbc.Driver"
     url="jdbc:mysql://localhost/foobar"
     user="root"  password="12345"/>

<sql:query dataSource="${db}" var="result">
SELECT * from Employees;
</sql:query>
发生了一些事情:

导入正确的标记库 将驱动程序放在可触及的位置,如WEB-INF\libs
您可以稍后使用描述问题的

浏览结果。你面临什么问题。任何异常或什么?那么两者的区别在哪里?请提供stacktrace。它不工作既不是有效的MySQL错误消息,也不是有效的Java异常。但当我尝试连接服务器时,这意味着什么。如果需要远程连接,请输入其IP而不是本地主机