java连接数据库——JSP实现JDBC

news/2024/5/19 0:01:28 标签: JSP, 连接数据库, JDBC

前两个是java连接数据库的典型方式,虽然除了JDBC还有odbc的方式,但odbc的效率和跨平台都不理想,所以现在的趋势就是使用JDBC来连接需要的数据库(我以MySQL为例),这节将介绍JSP中如何实现连接数据库,其实原理都一样,只是技术不同,建议在看本节知识的时候,以及对JSP技术和前端知识有一定的了解,要不然,或许不好理解。

以下是代码:

<%@ page language="java" import="java.sql.*" 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">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>数据库查询</title>
</head>
<body>
 <table width="75%" border="1" align="center">
  <tr>
   <td>学号</td>
   <td>姓名</td>
   <td>性别</td>
   <td>籍贯</td>
   <td>所属系部</td>
   <td>联系电话</td>
   <td>E_mail</td>
  </tr>
  <%
   try{
	   Class.forName("com.mysql.jdbc.Driver");//第一步:加载jdbc驱动程序(通过java.lang.Class类的静态方法forName)
   } catch(ClassNotFoundException e){
	   out.println(e.getMessage());
   }
  try{
	  //第二步:提供url+用户名+密码
	  //第三步:创建数据库的连接(向java.sql.DriverManger请求并获取Connection对象)
	  Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/bookinfo","root","123456");
	  Statement st = conn.createStatement();//第四步:创建一个Statement
	  ResultSet rs = st.executeQuery("select * from student");//第五步:执行sql语句
	  //第六步:执行处理1.执行更新2.执行查询
	  while(rs.next()){
		  String id = rs.getString("id");
		  String name = rs.getString("name");
		  String jiguan = rs.getString("jiguan");
		  String department = rs.getString("department");
		  String sex = rs.getString("sex");
		  String tel = rs.getString("tel");
		  String email = rs.getString("email");
		  out.print("<tr><td>"+id+"</td>");
		  out.print("<td>"+name+"</td>");
		  out.print("<td>"+jiguan+"</td>");
		  out.print("<td>"+department+"</td>");
		  out.print("<td>"+sex+"</td>");
		  out.print("<td>"+tel+"</td>");
		  out.print("<td>"+email+"</td></tr>");
 	  }
	  out.print("</table>");
	  //第七步:关闭jdbc对象
	  rs.close();
	  st.close();
	  conn.close();
  } catch(Exception e){
	  out.println(e.getMessage());
  }
  %>
</body>
</html>

注意:在关闭数据库操作对象时应该倒序关闭,也许数据少,你可能感觉不到有什么问题,当连接的数据库多了之后就会出现问题。


http://www.niftyadmin.cn/n/1472551.html

相关文章

保证Service不被Kill的解决方案

1、Service设置成START_STICKY&#xff08;onStartCommand方法中&#xff09;&#xff0c;kill 后会被重启&#xff08;等待5秒左右&#xff09;&#xff0c;重传Intent&#xff0c;保持与重启前一样 2、通过 startForeground将进程设置为前台进程&#xff0c;做前台服务&#…

java连接数据库——javabean实例(jsp实现)

这节我在前面三节的基础上进行整合&#xff0c;将讲解一个实例——图书管理数据库操作 首先&#xff1a;来看看设计的流程—— 界面设计 注册登录界面处理界面&#xff08;出错界面、欢迎界面、成功界面、跳转界面&#xff09;MySQL数据库操作——建立数据库和数据表对接后台…

正则表达+验证 [记录]

时间 日期 日期时间//日期 2014-01-01var reg /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/;//时间 12:00:00var reg /^(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/;//日期时间 2014-01-01 12:00:00var reg /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|…

前端框架jQ使用之入门知识

jQuery——前端框架&#xff08;jquery.js、node.js、argus.js&#xff09; 它是一个快速的js库&#xff0c;对js进行了封装&#xff0c;用来更方便的处理HTML、event、dom以及动画效果。 一、首先需要知道两个概念&#xff1a;jQ对象&DOM对象 第一个——jQ对象&#xf…

Java之优先队列

PriorityQueue属于Java Collections Framework。PriorityQueue基于优先级堆&#xff0c;它是Queue接口的实现。当我们需要一个Queue实现时&#xff0c;可以使用这种数据结构&#xff0c; 并且我们需要根据每个元素的优先级&#xff0c;以特定的排序顺序来维护该集合的元素。它在…

前端框架jQ使用之下拉框文本内容的转移

在掌握了jQ的基础知识之后&#xff0c;我们来看看jQ如何实现下拉框文本内容的转移&#xff1f; 其实&#xff0c;在之前&#xff0c;博主我也写过一篇使用js实现下拉框文本内容的转移的文章&#xff0c;需要比较强的逻辑&#xff0c;jQ就简化了代码书写&#xff0c;便于理解。…

Day21-自定义分页

一. 先简单来个示例 1.1 在urls.py中增加1条&#xff0c;user_list from django.conf.urls import url,include from django.contrib import admin from app01 import viewsurlpatterns [url(r^tpl_1/, views.tpl_1),url(r^tpl_2/, views.tpl_2),url(r^tpl_3/, views.tpl_3),u…

前端框架jQ使用之图片浮动和日历显示

在掌握了jQ的基础知识之后&#xff0c;我们来看看jQ如何实现图片浮动和日历显示&#xff1f; 其实&#xff0c;图片浮动和日历显示并没有直接关系&#xff0c;我只是把他们写到了一起&#xff0c; 写在前面&#xff1a;一定要记得导入js库&#xff0c;建议不要最新的。 直接…