package demo;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List; import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
* Servlet implementation class Edit
*/
@WebServlet("/edit.do")
public class Edit extends HttpServlet {
private static final long serialVersionUID = 1L; /**
* @see HttpServlet#HttpServlet()
*/
public Edit() {
super();
// TODO Auto-generated constructor stub
} /**
* @see HttpServlet#service(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void service(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
//根据ID查询
String id = request.getParameter("id");//获取参数--需要修改得记录的ID
System.out.println(id); //设置数据库连接参数
String url = "jdbc:mysql://localhost:3306/库名?serverTimezone=UTC";
String user = "用户名";
String password = "密码"; //加载数据库驱动
try {
Class.forName("com.mysql.jdbc.Driver");// 加载数据库的JDBC驱动程序
} catch (ClassNotFoundException e) {
e.printStackTrace();
} Customer customer = new Customer(); try (Connection connection = DriverManager.getConnection(url, user, password)) {//连接数据库 //设置预处理语句,customers为表名
String sql = "SELECT*FROM customers where customerID= ? ";
PreparedStatement statement = connection.prepareStatement(sql);//预处理sql语句
/*
* statement.setInt(1, Integer.parseInt(id));//Integer.parseInt(id)将字符串类型转换成整型
*/
int _id = Integer.parseInt(id);
statement.setInt(1, _id);
ResultSet rs = statement.executeQuery(); while (rs.next()) {
// 将数据库的数据转换成POJO实例
customer.setCustomerID(rs.getInt("CustomerID"));
customer.setCustomerName(rs.getString("CustomerName"));
customer.setContactName(rs.getString("ContactName"));
customer.setAddress(rs.getString("Address"));
customer.setCity(rs.getString("City"));
customer.setPostalCode(rs.getString("PostalCode"));
customer.setCountry(rs.getString("Country")); } rs.close();
statement.close(); } catch (SQLException e) {
e.printStackTrace();
} request.setAttribute("customer", customer);//将获取POJO实例传递到edit界面
request.getRequestDispatcher("edit.jsp").forward(request, response);
} }

SQL ----- JDBC 用ID查询某条记录的更多相关文章

  1. SQL ------ JDBC 删除指定的某条记录

    package demo; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; ...

  2. mysql 查询一条记录的下一条和上一条记录

    如果ID是主键或者有索引,可以直接查找: 方法一: 查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误): select * from tab ...

  3. mysql_oracle_随机查询几条记录

    数据库的随机查询SQL 1. Oracle,随机查询20条 select * from ( select  *  from 表名 order by dbms_random.value ) where ...

  4. 【面经】面试官:如何以最高的效率从MySQL中随机查询一条记录?

    写在前面 MySQL数据库在互联网行业使用的比较多,有些小伙伴可能会认为MySQL数据库比较小,存储不了很多的数据.其实,这些小伙伴是真的不了解MySQL.MySQL的小不是说使用MySQL存储的数据 ...

  5. mysql结构相同的三张表查询一条记录\将一张表中的数据插入另外一张表

    将一张表中的数据插入另外一张表 1.两张表结构相同 insert into 表1名称 select * from 表2名称 2.两张结构不相同的表 insert into 表1名称(列名1,列名2,列 ...

  6. sql查询两条记录的时间差

    今天突然想到了一个需求,即在一张带有id和time字段的表中,查询相邻时间的时间差. 表的记录如下: 表名为wangxin id是一个不重复的字符串,time是一个时间戳. 现在的需求如下: 比如id ...

  7. SQL每个用户最后的一条记录

    SELECT [ID] ,[UserID] ,[StartDate] ,[EndDate] ,[CreateUser] ,[CreateDate] ,[LastEditUser] ,[LastEdit ...

  8. mongodb随机查询一条记录的正确方法!

    关于从mongodb库中随机取出一条记录的方法的博文很多,其中都提到了下面三种方法: 1.skip过随机数量的记录. DBCursor cursor = coll.find(query); int r ...

  9. Mysql 按条件排序查询一条记录 top 1 对应Mysql的LIMIT 关键字

    项目中需要每次查询一个表中的最新的一条记录,表结构里面有日期字段.只需要显示一条记录. Mysql帮助文档里面的解释 3.6.2. 拥有某个列的最大值的行 任务:找出最贵物品的编号.销售商和价格. 这 ...

随机推荐

  1. Java小数中的四舍五入

    1.怎么设置显示小数位数 public static void main(String[] args) { DecimalFormat decimalFormat = new DecimalForma ...

  2. webuploader+上传文件夹

    在web项目中上传文件夹现在已经成为了一个主流的需求.在OA,或者企业ERP系统中都有类似的需求.上传文件夹并且保留层级结构能够对用户行成很好的引导,用户使用起来也更方便.能够提供更高级的应用支撑. ...

  3. DP(第一版)

    序 任何一种具有递推或者递归形式的计算过程,都叫做动态规划 如果你一开始学的时候就不会DP,那么你在考试的时候就一定不会想到用动态规划! 需要进行掌握的内容 1)DP中的基本概念 2)状态 3)转移方 ...

  4. jQuery系列(三):jQuery动画效果

    jQuery提供的一组网页中常见的动画效果,这些动画是标准的.有规律的效果:同时还提供给我们了自定义动画的功能. 1.显示动画 方式一: $("div").show(); 解释:无 ...

  5. 宝塔apache设置泛目录的反向代理/莲花泛目录

    反向解析目标站-泛目录站一般用ip或者ip:端口来搭建,这样可以节省一个域名,当然也可以用域名,看个人爱好.主站和泛站可以同一个服务器和可以不同服务器,看个人实际情况.先来看宝塔的反向代理的步骤:点击 ...

  6. MySQL认识索引

    什么是索引? 索引在MySQL中也叫是一种“键”,是存储引擎用于快速找到记录的一种数据结构.索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要.索引优化应该是对查询 ...

  7. Linux 系统设置命令之ulimit

    定义 ulimit 用于限制 shell 启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小.进程数据块的大小.Shell 进程创建文件的大小.内存锁住的大小.常驻内存集的大小.打开 ...

  8. 从char到QChar

    char类型是c/c++中内置的类型,描述了1个字节的内存信息的解析.比如: char gemfield=’g’; 那么在由gemfield标记的这块内存的大小就是1个字节,信息就是01100111, ...

  9. redis 用scan 代替keys,hgetAll

    转载自:https://blog.csdn.net/w05980598/article/details/80264568 众所周知,当redis中key数量越大,keys 命令执行越慢,而且最重要的会 ...

  10. Android性能优化-电量优化

    前言 电量优化,这个名词在传统PC时代,我们基本很少听见.然而到了诺基亚时代,我们也同样很少关注.直到了移动互联的智能机时代.电量优化才被慢慢的重视起来.可能的原因如下: 移动设备,不能一直使用电源供 ...