1.查询
效果展示:
前端页:
后台页:
代码:
前端:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
查询
请选择查询的条件
后台:
<%@ page import="java.sql.*"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
结果
<%
// 先连接数据库
String driverName = "com.mysql.jdbc.Driver"; //驱动程序名
String userName = "root"; //数据库用户名
String userPwd = "123456"; //密码
String dbName = "website"; //数据库名
String url1="jdbc:mysql://localhost:3306/"+dbName;
String url2 ="?user="+userName+"&password="+userPwd;
String url3="&useUnicode=true&characterEncoding=UTF-8";//访问数据库的汉字编码
String url =url1+url2+url3; //形成带数据库读写编码的数据库连接字
Class.forName(driverName); //加载并注册驱动程序
Connection conn=DriverManager.getConnection(url); //创建连接对象
request.setCharacterEncoding("UTF-8");//设置字符编码,避免出现乱码
String sex = request.getParameter("sex");
int age=Integer.parseInt(request.getParameter("age"));
String sql = "select * from student where sex=? and age=?";
PreparedStatement preparedStatement = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);//解决游标不能移动问题
preparedStatement.setString(1,sex);
preparedStatement.setInt(2,age);
ResultSet resultSet = preparedStatement.executeQuery();//执行sql语句用来返回单个 ResultSet 对象
resultSet.last();//移动到最后一条记录
%>
你要查询的学生数据表中共有
<%=resultSet.getRow()%>人
记录条数
学号
姓名
性别
年龄
<%
resultSet.beforeFirst();
while (resultSet.next()){
%>
<%=resultSet.getRow()%>
<%=resultSet.getString("no")%>
<%=resultSet.getString("name")%>
<%=resultSet.getString("sex")%>
<%=resultSet.getInt("age")%>
<%}%>
<%
if (resultSet!=null){
resultSet.close();
}
if (preparedStatement!=null){
preparedStatement.close();
}
if (conn!=null){
conn.close();
}
%>


