我们再开发jsp的时候,在链接数据库的时候为了使程序更具封装性和灵活性以及健壮,可以将链接数据库所需要的代码放置在一个jsp文件当中,然后利用jsp的include指令包含这个jsp文件,并且同时可以进行解析
举例如下
inc.jsp
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.ResultSetMetaData"%>
<%
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/login";
String user = "root";
String password = "admin";
%>
这个文件包含了必要的头文件,以及相应的驱动参数,数据库地址,登陆名和密码
testJdbc.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@include file="inc.jsp"%>
<%
String sql = "select * from users";
Connection conn = null;
Statement st = null;
ResultSet rs = null;
ResultSetMetaData rsmd = null;
try{
Class.forName(driver);
conn = DriverManager.getConnection(url,user,password);
st = conn.createStatement();
rs = st.executeQuery(sql);
rsmd = rs.getMetaData();
int cols = rsmd.getColumnCount();
while(rs.next()){
for(int i=1;i<=cols;i++){
//String field = (String)rsmd.getCatalogName(i);
String field = rsmd.getColumnName(i);
String value = rs.getString(i);
out.print(field+"="+value+";");
}
out.println("<br>");
}
}catch(Exception e){
e.printStackTrace();
}
%>
输出数据库中的记录信息