首先既然要连接数据库要使用两个包
我有三个表,这三个表用等值连接连接起来
具体代码:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!--
JDBC 驱动名及数据库 URL
数据库的用户名与密码,需要根据自己的设置
useUnicode=true&characterEncoding=utf-8 防止中文乱码
-->
<sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/bs?useUnicode=true&characterEncoding=utf8"
user="root" password="123456"/>
<sql:query dataSource="${snapshot}" var="result">
SELECT t_id,s_name,r_name,s_place,r_place,t_time
from s_mess,r_mess,t_mess
where s_mess.s_id=r_mess.r_id AND r_mess.r_id=t_mess.t_id;
</sql:query>
<h1>JSP 数据库实例 - 菜鸟教程</h1>
<table border="1" width="100%">
<tr>
<th>订单ID</th>
<th>发件人姓名</th>
<th>收件人姓名</th>
<th>始发地</th>
<th>目的地</th>
<th>订单入库时间</th>
</tr>
<c:forEach var="row" items="${result.rows}">
<tr>
<td><c:out value="${row.t_id}"/></td>
<td><c:out value="${row.s_name}"/></td>
<td><c:out value="${row.r_name}"/></td>
<td><c:out value="${row.s_place}"/></td>
<td><c:out value="${row.r_place}"/></td>
<td><c:out value="${row.t_time}"/></td>
</tr>
</c:forEach>
</table>
</body>
</html>
表和数据库的具体情况:
1、r_mess表:
2、s_mess表:
3、t_mess表:
4、数据库bs中用到的三个表:
5、连接信息(其中密码是123456):
6、查询结果