浏览结果
我在本地系统中使用这个
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");
它不工作。!数据库的用户名和密码都是正确的,所以我怎么能连接到我的数据库服务器。有人能贴出解决方案吗?
看来你上面的例子有点不正确。两者都指向本地主机域,但您的问题可能与您的数据库默认情况下不允许特定用户名+ 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-INFlib
您可以稍后使用<c:forEach>