创建数据库的过程如下:
create database nihao;
use nihao;
cteate table biao(id int(4)primary key ,name varchar(10));
insert into biao('1000','weojlkf');
insert into biao('1001','lkadjk');
grant all priviliges nihao.biao to Test@localhost identified by "123456";jsp程序如下:
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%@ page import="java.sql.*" %>
<%
//驱动程序名
String driverName="com.mysql.jdbc.Driver";
//数据库用户名
String userName="test";
//密码
String userPasswd="123456 ";
//数据库名
String dbName="nihao";
//表名
String tableName="biao";//联结字符串
String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;Class.forName("com.mysql.jdbc.Driver").newInstance();Connection connection=DriverManager.getConnection(url);Statement statement = connection.createStatement();String sql="SELECT * FROM "+tableName;ResultSet rs = statement.executeQuery(sql); //获得数据结果集合ResultSetMetaData rmeta = rs.getMetaData();//确定数据集的列数,亦字段数int numColumns=rmeta.getColumnCount();// 输出每一个数据值out.print("id"); out.print("|");out.print("num");out.print("<br>");while(rs.next()) {out.print(rs.getString(1)+" "); out.print("|");out.print(rs.getString(2));out.print("<br>"); } out.print("<br>");out.print("数据库操作成功,恭喜你"); rs.close(); statement.close(); connection.close(); %>
提示的错误如下:
javax.servlet.ServletException: Access denied for user 'test'@'localhost' (using password: YES)
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:498)
at org.apache.jsp.mysql_jsp._jspService(mysql_jsp.java:115)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:198)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209

解决方案 »

  1.   

    你的url写的有问题,改成下面的写法应该就可以了
    String url = "jdbc:mysql://localhost:3306/dbname"; 
    String username = "username"; 
    String password = "password"; 
    //加载驱动程序以连接数据库
    try { 
    Class.forName( "org.gjt.mm.mysql.Driver" ); 
    connection = DriverManager.getConnection( 
    url, username, password ); 
    }
      

  2.   

    Class.forName( "org.gjt.mm.mysql.Driver" );
    connection = DriverManager.getConnection(
    url, username, password );
      

  3.   

    这句有问题
    String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
      

  4.   

    http://blog.csdn.net/qianlei0007/archive/2007/02/26/1514553.aspx
      

  5.   

    我也出现过这种情况,再重装一下mysql就好了
      

  6.   

    javax.servlet.ServletException: Access denied for user 'test'@'localhost' (using password: YES)
    mysql的访问是要授权的查查mysql手册,给test用户授访问权限
      

  7.   

    看看这句: userPasswd="123456 "
    你的密码是不是 123456啊  后面怎么还有空格呢?