
JDBC——(6)PreparedStatement的使用——查询示例演示
查询示例演示
发布日期:2021-05-07 02:35:27
浏览次数:32
分类:精选文章
本文共 1677 字,大约阅读时间需要 5 分钟。
customers数据表
@Test public void test2() throws Exception { String sql="select name,email from customers where name = ?"; Customer customer=queryOperationWays(sql, "zlj"); System.out.println(customer); }
//实现通用查询操作 public Customer queryOperationWays(String sql,Object ...objects) { Connection connection=null; ResultSet resultSet=null; PreparedStatement preparedStatement=null; try { connection=JDBCUtils.getConnection(); preparedStatement=connection.prepareStatement(sql); System.out.println(objects.length); for (int i = 0; i < objects.length; i++) { preparedStatement.setObject(i+1, objects[i]); } //报MySQLSyntaxErrorException的原因就是这个方法里面写了sql resultSet=preparedStatement.executeQuery(); //获取结果集的元数据 :ResultSetMetaData ResultSetMetaData resultSetMetaData=preparedStatement.getMetaData(); // 返回此 ResultSet 对象中的列数。 int column=resultSetMetaData.getColumnCount(); System.out.println(column); if (resultSet.next()) { Customer customer=new Customer(); //处理结果集一行数据中的每一个列 for (int i = 0; i < column; i++) { Object value= resultSet.getObject(i+1); String label=resultSetMetaData.getColumnLabel(i+1); //给cust对象指定的columnName属性,赋值为columValue:通过反射 Field field = Customer.class.getDeclaredField(label); field.setAccessible(true); field.set(customer, value); } return customer; } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { JDBCUtils.closeResource(preparedStatement, connection); } return null; }
结果

发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2025年04月18日 10时01分39秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
【Linux】2.3 Linux目录结构
2019-03-06
java.util.Optional学习笔记
2019-03-06
远程触发Jenkins的Pipeline任务的并发问题处理
2019-03-06
jackson学习之七:常用Field注解
2019-03-06
Web应用程序并发问题处理的一点小经验
2019-03-06
entity framework core在独立类库下执行迁移操作
2019-03-06
Asp.Net Core 2.1+的视图缓存(响应缓存)
2019-03-06
服务器开发- Asp.Net Core中的websocket,并封装一个简单的中间件
2019-03-06
没花一分钱的我竟然收到的JetBrains IDEA官方免费赠送一年的Licence
2019-03-06
RE套路 - 关于pyinstaller打包文件的复原
2019-03-06
【wp】HWS计划2021硬件安全冬令营线上选拔赛
2019-03-06
Ef+T4模板实现代码快速生成器
2019-03-06
dll详解
2019-03-06
c++ static笔记
2019-03-06
C++中头文件相互包含与前置声明
2019-03-06
JQuery选择器
2019-03-06
SQL--存储过程
2019-03-06
MVC学习系列5--Layout布局页和RenderSection的使用
2019-03-06
MVC学习系列13--验证系列之Remote Validation
2019-03-06
多线程之volatile关键字
2019-03-06