Java MySQL与JSP的连接错误
我正在尝试从jsp页面连接到mysql数据库。这个 连接代码如下所示Java MySQL与JSP的连接错误,java,jsp,jdbc,Java,Jsp,Jdbc,我正在尝试从jsp页面连接到mysql数据库。这个 连接代码如下所示 InitialContext ic=new InitialContext(); DataSource ds=(DataSource)ic.lookup("jdbc:mysql://localhost:3306/"); Connection con=ds.getConnection(); Statement stmt = con.createStatement(); 当我打开页面时,我得到以下错误 j
InitialContext ic=new InitialContext();
DataSource ds=(DataSource)ic.lookup("jdbc:mysql://localhost:3306/");
Connection con=ds.getConnection();
Statement stmt = con.createStatement();
当我打开页面时,我得到以下错误
javax.servlet.ServletException:javax.naming.NamingException:Lookup
“jdbc:mysql://localhost:3306/'在SerialContext[Root]中
异常为javax.naming.NameNotFoundException:jdbc:mysql:]
有人能告诉我这有什么问题吗…您正在尝试使用JNDI查找持久连接。JNDI用于存储和访问servlet容器中的资源,但您使用的是JDBC连接字符串而不是JNDI引用 如果您想通过页面中的JDBC直接连接到数据库,那么您需要以下内容来获得连接
Connection conn = null;
try {
String userName = "myuser";
String password = "mypassword";
String url = "jdbc:mysql://localhost:3306/mydb";
Class.forName ("com.mysql.jdbc.Driver").newInstance ();
conn = DriverManager.getConnection (url, userName, password);
} catch (Exception e) {
System.err.println ("Cannot connect to database server");
}
另一方面,如果您想使用JNDI,则需要首先将连接存储在JNDI中,然后通过用于存储它的名称在JSP中访问它。这是一个更为复杂的过程,因此这里有一个示例来解释如何执行此操作。您正在尝试使用JNDI查找持久连接。JNDI用于存储和访问servlet容器中的资源,但您使用的是JDBC连接字符串而不是JNDI引用 如果您想通过页面中的JDBC直接连接到数据库,那么您需要以下内容来获得连接
Connection conn = null;
try {
String userName = "myuser";
String password = "mypassword";
String url = "jdbc:mysql://localhost:3306/mydb";
Class.forName ("com.mysql.jdbc.Driver").newInstance ();
conn = DriverManager.getConnection (url, userName, password);
} catch (Exception e) {
System.err.println ("Cannot connect to database server");
}
另一方面,如果您想使用JNDI,则需要首先将连接存储在JNDI中,然后通过用于存储它的名称在JSP中访问它。这是一个更为复杂的过程,因此这里有一个例子来说明如何进行操作。在最简单的情况下,您可以:
Class.forName(driverClass);
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/", userName, password);
如果您想使用容器定义的连接池,并且您正在使用tomcat,请查看
作为旁注,我不建议从
.jsp
连接到数据库。为此使用servlet。JSP是一种表示技术,不应该包含数据库连接逻辑。在最简单的情况下,您可以:
Class.forName(driverClass);
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/", userName, password);
如果您想使用容器定义的连接池,并且您正在使用tomcat,请查看
作为旁注,我不建议从.jsp
连接到数据库。为此使用servlet。JSP是一种表示技术,不应该包含数据库连接逻辑。同学:同学: