1
<
%@
taglib
uri
=
"http://java.sun.com/jsp/jstl/core"
prefix
=
"c"
%
>
2 < %@ page contentType = "text/html; charset=UTF-8" % >
3 < %@ page import="java.sql.Connection"%>
4 < %@ page import="java.sql.DriverManager"%>
5 < %@ page import="java.sql.ResultSet"%>
6 < %@ page import="java.sql.SQLException"%>
7 < %@ page import="java.sql.Statement"%>
8 < %@ page import="javax.servlet.jsp.jstl.sql.Result"%>
9 < %@ page import="javax.servlet.jsp.jstl.sql.ResultSupport"%>
10 < %
11 // 暂且把这个下面的内容看作多层架构中的DAO好了,我偷懒了!
12 Connection conn = null ;
13 Statement stmt = null ;
14 ResultSet rs = null ;
15 String strDbUrl
16 = "jdbc:mysql://localhost/tutorial?user=tutorial&password=tutpwd" ;
17 try {
18 //开始与数据库作查询
19 Class. forName ( "com.mysql.jdbc.Driver" ). newInstance ( ) ;
20 conn = DriverManager. getConnection ( strDbUrl ) ;
21 stmt = conn. createStatement ( ) ;
22 String strSql = "SELECT * FROM R_TUT_USERS" ;
23 rs = stmt. executeQuery ( strSql ) ;
24 //把ResultSet转化成Result
25 Result userData = ResultSupport.toResult(rs);
26 //当我们把结果放到某个Model bean后,就可以关闭数据库连接了.
27 //为了简化,我们暂且把pageContext看作Model Bean好了!
28 pageContext. setAttribute ( "userData", userData ) ;
29 }
30 catch ( Exception ex ) {
31 // handle any errors
32 System. out. println ( "SQLException: " + ex. getMessage ( ) ) ;
33 }
34 finally {
35 try {
36 if ( rs ! = null ) {
37 rs. close ( ) ;
38 }
39 if ( stmt ! = null ) {
40 stmt. close ( ) ;
41 }
42 if ( conn ! = null ) {
43 conn. close ( ) ;
44 }
45 }
46 catch ( SQLException ex ) {
47 System. out. println ( "SQL Exception: " + ex. getMessage ( ) ) ;
48 }
49 }
50 //DAO的逻辑结束
51 % >
52 < html >
53 < head >
54 < title > test </ title >
55 </ head >
56 < body >
57 <!--// 下面当作是表示层吧 //-->
58 < c : forEach items = "${userData.rows}" var = "user" >
59 < c : out value = '${user.name}'/ >
60 </ c : forEach >
61 </ body >
62 </ html >
2 < %@ page contentType = "text/html; charset=UTF-8" % >
3 < %@ page import="java.sql.Connection"%>
4 < %@ page import="java.sql.DriverManager"%>
5 < %@ page import="java.sql.ResultSet"%>
6 < %@ page import="java.sql.SQLException"%>
7 < %@ page import="java.sql.Statement"%>
8 < %@ page import="javax.servlet.jsp.jstl.sql.Result"%>
9 < %@ page import="javax.servlet.jsp.jstl.sql.ResultSupport"%>
10 < %
11 // 暂且把这个下面的内容看作多层架构中的DAO好了,我偷懒了!
12 Connection conn = null ;
13 Statement stmt = null ;
14 ResultSet rs = null ;
15 String strDbUrl
16 = "jdbc:mysql://localhost/tutorial?user=tutorial&password=tutpwd" ;
17 try {
18 //开始与数据库作查询
19 Class. forName ( "com.mysql.jdbc.Driver" ). newInstance ( ) ;
20 conn = DriverManager. getConnection ( strDbUrl ) ;
21 stmt = conn. createStatement ( ) ;
22 String strSql = "SELECT * FROM R_TUT_USERS" ;
23 rs = stmt. executeQuery ( strSql ) ;
24 //把ResultSet转化成Result
25 Result userData = ResultSupport.toResult(rs);
26 //当我们把结果放到某个Model bean后,就可以关闭数据库连接了.
27 //为了简化,我们暂且把pageContext看作Model Bean好了!
28 pageContext. setAttribute ( "userData", userData ) ;
29 }
30 catch ( Exception ex ) {
31 // handle any errors
32 System. out. println ( "SQLException: " + ex. getMessage ( ) ) ;
33 }
34 finally {
35 try {
36 if ( rs ! = null ) {
37 rs. close ( ) ;
38 }
39 if ( stmt ! = null ) {
40 stmt. close ( ) ;
41 }
42 if ( conn ! = null ) {
43 conn. close ( ) ;
44 }
45 }
46 catch ( SQLException ex ) {
47 System. out. println ( "SQL Exception: " + ex. getMessage ( ) ) ;
48 }
49 }
50 //DAO的逻辑结束
51 % >
52 < html >
53 < head >
54 < title > test </ title >
55 </ head >
56 < body >
57 <!--// 下面当作是表示层吧 //-->
58 < c : forEach items = "${userData.rows}" var = "user" >
59 < c : out value = '${user.name}'/ >
60 </ c : forEach >
61 </ body >
62 </ html >