JSP页面访问JDBC数据库的六个步骤

发布时间:2024年01月04日

?【例】创建exgample11_1.jsp页面,并在该页面中使用纯Java数据库驱动程序连接数据库test,并查询数据表goods中的数据。

<%@ page language="java" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>  //导入包
<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>访问MySql数据库</title>
</head>
<body>
   <%
      Connection con = null;
      Statement st = null;
      ResultSet rs = null;
      //加载驱动
      try{
          Class.forName("com.mysql.jdbc.Driver");
      } catch (ClassNotFoundException e){
         e.printStackTrace();
      }
      //建立连接
      try{
          con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test?characterEncoding=utf-8","root","root");
          st = con.creatStatement();
          //发送查询SQL语句,返回结果集
          rs = st.excecuteQuery("select*from goods ");
          while(rs.next()){
              out.print(rs.getString"("id")+"&nbsp;&nbsp;");
              out.print(rs.getString"("gname")+"&nbsp;&nbsp;");
              out.print(rs.getString"("gprice")+"&nbsp;&nbsp;");
              out.print("<br>");
          }
      } catch (SQLException e) {
          e.printStackTrace();
      }finally{
          rs.close();
          st.close();
          con.close();
      }
   %>
</body>
</html>

?从上例的代码可知,访问数据库需要以下几个步骤:

1)导入java.sql包
<%@ page import  = "java.sql.*"%>

java.sql包含Java操作关系数据库的类和接口,因此在使用JDBC的程序中必须引入该包。

2)加载驱动程序
Class.forName("com.mysql.jdbc.Driver");

使用Class类(java.lang 包)?中的方法forName()来加载该驱动程序的类定义com.mysql.jdbc.Driver,从而创建了该驱动程序的一个实例。

3)连接数据库
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?characterEncoding=utf-8","root","root");

完成上述操作后,就可以连接一个特定的数据库了。这需要创建Connection的一个实例,并使用DriverManager的方法getConnection()来尝试连接指定的数据库。?

4)访问数据库
st  = con.creatStatement();
rs = st.executeQuery("select * from goods ");

?首先用Connection的createStatement()方法从指定的数据库连接得到一个StateMent实例,然后该Statement实例调用executeQuery()方法来执行一条SQL语句。

5)处理返回的结果集
while(rs.next()){
    out.print(rs.getString"("id")+"&nbsp;&nbsp;");
    out.print(rs.getString"("gname")+"&nbsp;&nbsp;");
    out.print(rs.getString"("gprice")+"&nbsp;&nbsp;");
    out.print("<br>");
}

ResultSet对象时JDBC中比较重要的一个对象,几乎所有的查询操作都将数据作为ResultSet对象返回。?

6)关闭数据库连接,释放资源
rs.close();
st.close();
con.close();

对数据库的操作完成之后,要及时关闭ResultSet对象、Statement对象和Connection对象,从而释放占用的资源。

关闭顺序依次由先到后依次为Result对象、Statement对象和Connection对象。

rs、st、con

文章来源:https://blog.csdn.net/weixin_60415234/article/details/135393870
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。