package ch4;
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost/mis_users";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
ResultSet rs = null; Public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManger.getConnection(dbUrl,dbUser,dbPassword);
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(sql.Exception ex) {
System.err.println(ex.getMessage());
}
return rs;
}
}另外,为什么我在DOS里JAVAC后的出错信息中的中文信息都不能正常显示哈??
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost/mis_users";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
ResultSet rs = null; Public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManger.getConnection(dbUrl,dbUser,dbPassword);
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(sql.Exception ex) {
System.err.println(ex.getMessage());
}
return rs;
}
}另外,为什么我在DOS里JAVAC后的出错信息中的中文信息都不能正常显示哈??
你这个驱动哪来的 我弄过一次mysql 印象不是很深 驱动好像不是这样 先确定你这个driver可用
String dbUrl = "jdbc:mysql://localhost/mis_users";
这个可能错了吧 好像都要端口号的吧 而且数据库是用冒号分开的还是/分开的看一下文档吧
import java.sql.*;
public class conn { //类名最好大写
String dbUrl = "jdbc:mysql://localhost/mis_users"; //缺少端口号 偶的是jdbc:mysql://localhost:3306/xxxxx
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
ResultSet rs = null; Public conn() { //public小写
try {
Class.forName("org.gjt.mm.mysql.Driver"); //这个不知道是否可用 偶的是com.mysql.jdbc.Driver
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManger.getConnection(dbUrl,dbUser,dbPassword); //DriverManager
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(sql.Exception ex) { //sql.Exception??
System.err.println(ex.getMessage());
}
return rs;
}
}
我想你还是用个IDE吧 这种拼写上的错误 实在没必要为它浪费时间
catch(sql.Exception ex) { //sql.Exception??这里的Exception??是什么意思?我觉得出错信息就是指的这儿,谢谢!
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\MIS_Starkey\conn.java:21: 找不到符号
符号: 变量 DriverManger
位置: 类 ch4.conn
connect = DriverManger.getConnection(dbUrl,dbUser,dbPassword);
^
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\MIS_Starkey\conn.java:25: 软件包 sql 不存在
catch(sql.Exception ex) {
^
2 错误处理已完成。
SQL不存在!在executeQuery方法中输出sql看看。
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost:7778/mis_users";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
ResultSet rs = null; public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(sql.Exception ex) {
System.err.println(ex.getMessage());
}
return rs;
}
}
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id= "connBean" scope="page" class="ch4.conn"/>
<html>
<head>
<title> 使用Bean连接MYSQL数据库</title>
</head>
<body bgcolor="#FFCCCC">
<div align="center">
<table width="60%" border="1">
<tr>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"><font color="#FF0033"><b>ID</b></font></div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"><font color="#FF0033"><b>Name</b></font></div>
</td>
</tr>
<%
ResultSet rs = connBean.executeQuery("select * from mis_users");
while(rs.next()){
%>
<tr>
<td width="50%">
<div align="center"><%=rs.getString(1)%></div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"><%=rs.getString(2)%></div>
</td>
</tr>
<%
}
rs.closed();
%> </table>
</body>
</html>
conn.javapackage ch4;
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost:7778/ljmis";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
ResultSet rs = null; public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(Exception ex) {
System.err.println(ex.getMessage());
}
return rs;
}
}谢谢谢谢。这个程式就是为了能在浏览器里查到MYSQL库ljmis中TABLE:mis_users的所有记录。 谢谢谢谢!
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(Exception ex) {
System.err.println(ex.getMessage());
}finally{//最好把这段也一
try{
rs.colse();
stm.close();
connect.close();
}catch(Exception e){
}
}
return rs;
}
}
try{
rs.closed();//rs.close();
}catch(Exception e){
}
%>
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost:7778/ljmis";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
ResultSet rs = null; public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(Exception ex) {
System.err.println(ex.getMessage());
}
finally{
try{
rs.close();
stm.close();
connect.close();
} catch(Exception e){
}
}
return rs;
}
} --------------------配置: <默认> --------------------
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\MIS_Starkey\conn.java:30: 找不到符号
符号: 变量 stm
位置: 类 ch4.conn
stm.close();
^
1 错误处理已完成。 找不到符号 怎么回事哈,帮帮忙哈!
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost:7778/ljmis";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
Statement stm=null;//加在这里
ResultSet rs = null; public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(Exception ex) {
System.err.println(ex.getMessage());
}
finally{
try{
rs.close();
stm.close();
connect.close();
} catch(Exception e){
}
}
return rs;
}
}
<%
try{
ResultSet rs = connBean.executeQuery("select * from mis_users");
while(rs.next()){
%>
<tr>
<td width="50%">
<div align="center"> <%=rs.getString(1)%> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <%=rs.getString(2)%> </div>
</td>
</tr>
<%
}
rs.close();
}catch(Exception e){}
%>
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id= "connBean" scope="page" class="ch4.conn"/>
<html>
<head>
<title> 使用Bean连接MYSQL数据库 </title>
</head>
<body bgcolor="#FFCCCC">
<div align="center">
<table width="60%" border="1">
<tr>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>ID </b> </font> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>Name </b> </font> </div>
</td>
</tr>
<%
ResultSet rs = connBean.executeQuery("select * from mis_users");
while(rs.next()){
%>
<tr>
<td width="50%">
<div align="center"> <%=rs.getString(1)%> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <%=rs.getString(2)%> </div>
</td>
</tr>
<%
}
rs.closed();
%> </table>
</body>
</html>
在MYSQL里数据也是正常的:
mysql>use ljmis
Database changed
mysql>select * from mis_users;
+-----+--------------+
| id | users_name |
+-----+--------------+
| 1 | ShanY |
| 2 | WangK |
| 3 | FengT |
+-----+--------------+
3 rows in set (0.25 sec)救救我吧! 谢谢谢谢!!!
try{//这里加下
ResultSet rs = connBean.executeQuery("select * from mis_users");
while(rs.next()){
%>
<tr>
<td width="50%">
<div align="center"> <%=rs.getInt(1)%> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <%=rs.getString(2)%> </div>
</td>
</tr>
<%
}
//这里改下
}catch(Exception e){}finally{
rs.close();
}
%> </table>
</body>
</html>
还要注意下:getString(1) 改成getInt(1)吧
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id= "connBean" scope="page" class="ch4.conn"/>
<html>
<head>
<title> 使用Bean连接MYSQL数据库 </title>
</head>
<body bgcolor="#FFCCCC">
<div align="center">
<table width="60%" border="1">
<tr>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>ID </b> </font> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>Name </b> </font> </div>
</td>
</tr> <%
try{
ResultSet rs = connBean.executeQuery("select * from mis_users");
while(rs.next()){
%>
<tr>
<td width="50%">
<div align="center"> <%=rs.getString(1)%> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <%=rs.getString(2)%> </div>
</td>
</tr>
<%
}
rs.close();
}catch(Exception e){ }
%> </table>
</body>
</html>
//在这加上一段
if(rs==null){
out.println("rs is null...........");
}else{
out.println("rs in not null....");
}
while(rs.next()){
把结果给我看下。
public class conn {
String dbUrl = "jdbc:mysql://localhost/mis_users";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
ResultSet rs = null; public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
Statement stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(Exception ex) {
System.err.println(ex.getMessage());
}
return rs;
}
}
<jsp:useBean id= "connBean" scope="page" class="ch4.conn"/>
<html>
<head>
<title> 使用Bean连接MYSQL数据库 </title>
</head>
<body bgcolor="#FFCCCC">
<div align="center">
<table width="60%" border="1">
<tr>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>ID </b> </font> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>Name </b> </font> </div>
</td>
</tr> <%
try{
ResultSet rs = connBean.executeQuery("select * from mis_users");
if(rs==null){
out.println("rs is null...........");
}else{
out.println("rs in not null....");
} while(rs.next()){
%>
<tr>
<td width="50%">
<div align="center"> <%=rs.getInt(1)%> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <%=rs.getString(2)%> </div>
</td>
</tr>
<%
}
rs.close();
}
catch(Exception e){ }
%> </table>
</body>
</html>
burningice,你贴的这个和我原来的一样吧,是什么意思呢,谢谢赐教!!
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost:7778/ljmis";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
Statement stm=null;//加在这里
ResultSet rs = null; public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(Exception ex) {
System.err.println(ex.getMessage());
}
finally{
try{} catch(Exception e){
}
}
return rs;
}
} 用这个,就行了
rs.close();
stm.close();
connect.close();
<%@ page contentType="text/html;charset=GB2312" import="java.sql.*" %> 不要错了,红色的。。
<jsp:useBean id= "connBean" scope="page" class="ch4.conn"/>
<html>
<head>
<title> 使用Bean连接MYSQL数据库 </title>
</head>
<body bgcolor="#FFCCCC">
<div align="center">
<table width="60%" border="1">
<tr>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>ID </b> </font> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <font color="#FF0033"> <b>Name </b> </font> </div>
</td>
</tr> <%
try{
ResultSet rs = connBean.executeQuery("select * from mis_users");
if(rs==null){
out.println("rs is null...........");
}else{
out.println("rs in not null....");
} while(rs.next()){
%>
<tr>
<td width="50%">
<div align="center"> <%=rs.getInt(1)%> </div>
</td>
<td width="50%" bgcolor="#CCCCFF">
<div align="center"> <%=rs.getString(2)%> </div>
</td>
</tr>
<%
}
rs.close();
}
catch(Exception e){ }
%> </table>
</body>
</html>conn.java
package ch4;
import java.sql.*;
public class conn {
String dbUrl = "jdbc:mysql://localhost:7778/ljmis";
String dbUser = "root";
String dbPassword = "yurebecca";
Connection connect = null;
Statement stm=null;//加在这里
ResultSet rs = null; public conn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.println (e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
stm = connect.createStatement();
rs = stm.executeQuery(sql);
}
catch(Exception ex) {
System.err.println(ex.getMessage());
}
finally{
try{ } catch(Exception e){
}
}
return rs;
}
} html文件放在tomcat 5.5\webapps\root下;
java文件编译成class文件后放在tomcat 5.5\webapps\root\web-inf\classes下;mysql里的ljmis库中的mis_users表用sql可以正常查询。大哥,你可不可以把你的html和class文件发到.cn
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT\WEB-INF
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT\WEB-INF\classes...HELP!
conn.class放在c:\...................\ROOT\WEB-INF\classes\ch4\
<%@ page import="java.sql.*" %>
<html>
<body>
<%Class.forName("com.mysql.jdbc.Driver").newInstance();
String url="jdbc:mysql://167.100.32.188:7778/ljmis";
String user="mis";
String password="mis";
Connection conn=DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from mis_users";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){%>
您的第一个字段内容是:<%=rs.getString(1)%>
您的第二个字段内容是:<%=rs.getString(2)%>
<%out.print("数据库操作成功,恭喜您!");%>
<%}%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>本来这个都运行正常了,可过了二个小时再运行,竟出来了以下的出错信息,说什么'无法连接'HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: null, message from server: "Host 'dttonybao.ms.starkey.com' is not allowed to connect to this MySQL server"
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:460)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause javax.servlet.ServletException: null, message from server: "Host 'dttonybao.ms.starkey.com' is not allowed to connect to this MySQL server"
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:841)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:774)
org.apache.jsp.check_005fidentity_jsp._jspService(check_005fidentity_jsp.java:82)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.sql.SQLException: null, message from server: "Host 'dttonybao.ms.starkey.com' is not allowed to connect to this MySQL server"
com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1018)
com.mysql.jdbc.Connection.createNewIO(Connection.java:2572)
com.mysql.jdbc.Connection.<init>(Connection.java:1485)
com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
org.apache.jsp.check_005fidentity_jsp._jspService(check_005fidentity_jsp.java:51)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.25 logs.
--------------------------------------------------------------------------------Apache Tomcat/5.5.25