<%@page import ="java.sql.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<%
String driverName="com.mysql.jdbc.Driver";
String useName="root";
String userPasswd="root";
String dbName="mysql";
String tableName="word";
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connnection=DriverManager.getConnection("jdbc:mysql://localhost/mysql?useUnicode=true&characterEncoding=UTF-8","root","root");
Statement statement =connnection.createStatement();
String mm="SELECT*FROM"+tableName;
ResultSet rs=statement.executeQuery(mm);
ResultSetMetaData rmeta=rs.getMetaData();
out.print("单词量测试, 共200道题");
while(rs.next()){
%>
<%=rs.getString(1)%>
<%=rs.getString(2)%>
<input type="radio"name ="A">
<%=rs.getString(3)%>
<input type="radio"name ="A">
<%=rs.getString(4)%>
<input type="radio"name ="A">
<%=rs.getString(5)%>
<input type="radio"name ="A">
<%=rs.getString(6)%>
<br>
<%
out.print("<br>");
rs.close();
statement.close();
connnection.close();
}
%>
</body>
</html>
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <%@page import ="java.sql.*" %> 4 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 5 <html> 6 <head> 7 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 8 <title>Insert title here</title> 9 </head> 10 <body> 11 <% 12 request.setCharacterEncoding("utf-8"); 13 String driverName="com.mysql.jdbc.Driver"; 14 String userName="root"; 15 String userPasswd="yangpeng1994"; 16 String dbName="test"; 17 String tableName="user"; 18 Connection conn = null; 19 Statement statement = null; 20 ResultSet rs = null; 21 try{ 22 //加载驱动 23 Class.forName("com.mysql.jdbc.Driver"); 24 //创建连接 25 conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/test",userName,userPasswd); 26 //创建sql执行对象 27 statement =conn.createStatement(); 28 //sql注意空格 29 String mm="SELECT*FROM "+tableName; 30 //执行sql语句 31 rs=statement.executeQuery(mm); 32 //获取结果集的元数据 33 ResultSetMetaData rmeta=rs.getMetaData(); 34 out.println("测试-------------------"); 35 //遍历 36 while(rs.next()){ 37 %> 38 <%=rs.getString(1)%> 39 <%=rs.getString(2)%> 40 <input type="radio"name ="A"> 41 <%=rs.getString(3)%> 42 <input type="radio"name ="A"> 43 <%=rs.getString(4)%> 44 <input type="radio"name ="A"> 45 <%=rs.getString(5)%> 46 <input type="radio"name ="A"> 47 <%=rs.getString(6)%> 48 <br> 49 <% 50 out.print("<br>"); 51 } 52 }catch(Exception e){ 53 e.printStackTrace(); 54 }finally{ 55 //在这里用close先关闭,如果关闭出现异常,将之赋值为null,让垃圾回收器回收 56 try{ 57 rs.close(); 58 }catch(Exception e){ 59 60 }finally{ 61 rs = null; 62 } 63 64 try{ 65 statement.close(); 66 }catch(Exception e){ 67 68 }finally{ 69 statement = null; 70 } 71 72 try{ 73 conn.close(); 74 }catch(Exception e){ 75 76 }finally{ 77 conn = null; 78 } 79 } 80 81 %> 82 </body> 83 </html>
so sweet 感谢
@零魂: 再问一个问题 我的数据库是一个试卷 一个题可以选择一个答案 但是我的代码所有的选择题只能选一个。。。这个是哪里的问题。。。。
@零魂: 你的所有的radio标签的name全是A,那么对于一个单选组内的单选按钮肯定只能有一个能选,
@扬帆~起航: thanks
Class.forName("com.mysql.jdbc.Driver").newInstance();
改驱动
Connection connnection=DriverManager.getConnection("jdbc:mysql://localhost/mysql?useUnicode=true&characterEncoding=UTF-8","root","root");
改连接串,账号密码。
这个是什么错误? 我该怎么修改?和数据库的连接驱动不应该是这样吗?求指教QAQ
@零魂: 我只是告诉你这两行的意义,如果你报错了那么就应该根据错误去做响应调整。
我改用try catch实现 就可以了
try catch只是规避问题,你没解决问题,这里有异常,你把它输出出来看下啊。
@Daniel Cai: 额 我还修改了一些其他的 在修改后 它运行报错是An exception occurred processing JSP page 这类错误我百度之后 发现没有很好地解决方案 只能通过try来规避这类问题 晚上还打算发一个帖子打算问一下是否连接数据库必须用到try catch以保证运行时不会出现问题
ps:你对这个问题有什么好的看法吗 我修改了很多地方 发现每改动一次 就会出现一个新的n exception occurred processing JSP page问题
<%@page import ="java.sql.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<%@ page contentType="text/html" pageEncoding="utf-8" language="java"%>
<title>Insert title here</title>
</head>
<body>
<%
String driverName="com.mysql.jdbc.Driver";
String useName="root";
String userPasswd="root";
String dbName="mysql";
String tableName="word";
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost/mysql?useUnicode=true&characterEncoding=UTF-8","root","root");
Statement stat =conn.createStatement();
String mm="SELECT * FROM "+tableName;
try{
ResultSet rs=stat.executeQuery(mm);
ResultSetMetaData rmeta=rs.getMetaData();
out.print("单词量测试, 共200道题");
out.print("<br>");
while(rs.next()){
%>
<%=rs.getString(1)%>
<% out.print(".");%>
<%=rs.getString(2)%>
<input type="radio"name ="A">
<%=rs.getString(3)%>
<input type="radio"name ="A">
<%=rs.getString(4)%>
<input type="radio"name ="A">
<%=rs.getString(5)%>
<input type="radio"name ="A">
<%=rs.getString(6)%>
<br>
<%
out.print("<br>");
}
rs.close();
stat.close();
conn.close();
}
catch(SQLException e) {
e.printStackTrace();
}
%>
</body>
</html>
这是我最后的代码
还请指教
@零魂: 你debug下看下catch后抛出来的什么
@Daniel Cai: 尴尬 寝室断电 学校抠门QAQ
@零魂: 牛掰,我上学的时候如果有你这样的精神就好了。