HTML界面负责创建两个输入文本框和一个提交按钮,向JSP界面发送数据。
morrTime.jsp为接收数据的JSP界面。
HTML部分如下图展示:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
body{
background-image: url(img/bj7.jpg);
background-size: cover;
font-size: 40px;
font-family:"楷体";
font-style:italic;
font-size-adjust: inherit;
}
</style>
</head>
<body>
<div align="center">
请输入查询的时间条件<hr>
<form action="morrTime.jsp" method="post">
<br>
起始时间:<input type="text" name="w1"><br><br>
结束时间:<input type="text" name="w2"><br>
<input type="submit" value="提 交">
<input type="reset" value="取 消"><br>
<h6>时间范围(例如:2022年1月1日,请输入:20220101)</h6>
</form>
</div>
</body>
</html>
JSP界面当中包括连接数据库,接收HTML发送的数据,将数据转为SQL查询的条件,显示查询结果四个部分。
连接数据库部分:
Class.forName("com.mysql.jdbc.Driver").newInstance();
String url="jdbc:mysql://localhost:3306/znjj";//用户名,端口号,表名
String user="root";//用户名
String password="123456";//密码
Connection conn = DriverManager.getConnection(url, user, password);//创建连接
接收HTML发送的数据部分:
float w1 = Float.parseFloat(request.getParameter("w1"));
float w2 = Float.parseFloat(request.getParameter("w2"));
preparedStatement.setFloat(1,w1);
preparedStatement.setFloat(2,w2);
将数据转为SQL查询的条件部分:
String sql = "select * from xx where created>=? and created<=?";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
ResultSet resultSet = preparedStatement.executeQuery();//执行sql语句用来返回单个 ResultSet 对象
resultSet.last();//移动到最后一条记录
显示查询结果部分:
<%
resultSet.beforeFirst();
while (resultSet.next()){
%> <tr align="center">
<td><%=resultSet.getRow()%></td>
<td><%=resultSet.getString("wd")%></td>
<td><%=resultSet.getString("sd")%></td>
<td><%=resultSet.getString("gz")%></td>
<td><%=resultSet.getString("created")%></td>
</tr>
<%}%>
</table>
</center>
<%
if (resultSet!=null){
resultSet.close();
}
if (preparedStatement!=null){
preparedStatement.close();
}
if (conn!=null){
conn.close();
}
%>
完整代码如下:
JSP接受数据页面如下:
<%@ page language="java" import="java.util.*, java.sql.*" pageEncoding="gb2312"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%request.setCharacterEncoding("UTF-8");%>
<%response.setCharacterEncoding("UTF-8");%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<style type="text/css">
table{ width:800px; margin:auto; padding: 5px; font-size:12px; border:0px; background:#00CCFF;}
tr{ background:#fff;}
td{ padding: 5px;}
#title{ text-align:center;}
body{
background-image: url(img/bj.jpg);
background-size: cover;
}
</style>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
//连接MySQL数据库
Class.forName("com.mysql.jdbc.Driver").newInstance();
String url="jdbc:mysql://localhost:3306/znjj";
String user="root";
String password="123456";
Connection conn = DriverManager.getConnection(url, user, password);
//Statement st = conn.createStatement();
//String sex = request.getParameter("sex");
float w1 = Float.parseFloat(request.getParameter("w1"));
float w2 = Float.parseFloat(request.getParameter("w2"));
String sql = "select * from xx where created>=? and created<=?";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
//preparedStatement.setString(1,sex);
preparedStatement.setFloat(1,w1);
preparedStatement.setFloat(2,w2);
ResultSet resultSet = preparedStatement.executeQuery();//执行sql语句用来返回单个 ResultSet 对象
resultSet.last();//移动到最后一条记录
%>
<center>
<h1>你要查询的环境监测表中共有
<font size="15" color="red"><%=resultSet.getRow()%></font>条数据符合您的查询条件</h1><br />
<table border="2" bgcolor="ccceee" width="650">
<tr>
<td>ID</td>
<td>温度</td>
<td>湿度</td>
<td>光照</td>
<td>时间</td>
</tr>
<%
resultSet.beforeFirst();
while (resultSet.next()){
%> <tr align="center">
<td><%=resultSet.getRow()%></td>
<td><%=resultSet.getString("wd")%></td>
<td><%=resultSet.getString("sd")%></td>
<td><%=resultSet.getString("gz")%></td>
<td><%=resultSet.getString("created")%></td>
</tr>
<%}%>
</table>
</center>
<%
if (resultSet!=null){
resultSet.close();
}
if (preparedStatement!=null){
preparedStatement.close();
}
if (conn!=null){
conn.close();
}
%>
<br />
<div align="center" >
<input class="blue.round:after" type ="button" value = "返回主页" onclick="window.location.href='main.html'">
</input></div>
<%
%>
</body>
</html>
完整项目请联系小白博主。
版权声明:本文为qq_53414724原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。