JDBC--Result 获取返回集合
- package jdbc.chap05;
- import java.sql.Connection;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.util.ArrayList;
- import java.util.List;
- import jdbc.util.DbUtil;
- import model.Person;
- public class sec01 {
- private static DbUtil dbUtil=new DbUtil();
- /**
- * 遍历查询结果1
- * @throws Exception
- */
- private static void listPerson()throws Exception{
- Connection con=dbUtil.getCon();//获取连接
- String sql="select * from t_student";
- PreparedStatement pstmt=con.prepareStatement(sql);
- ResultSet rs=pstmt.executeQuery();//返回2维结果集ResultSet
- while (rs.next()){
- int id=rs.getInt(1);//获取第一个列的值 编号ID
- String name=rs.getString(2);//获取第二个列的值 编号 name
- int age=rs.getInt(3);//获取第三列的值 编号age
- System.out.println("学生编号:"+id+"学生姓名:"+name+"学生年龄:"+age);
- System.out.println("========================================================");
- }
- }
- /**
- * 遍历查询结果2
- * @throws Exception
- */
- private static void listPerson2()throws Exception{
- Connection con=dbUtil.getCon();//获取连接
- String sql="select * from t_student";
- PreparedStatement pstmt=con.prepareStatement(sql);
- ResultSet rs=pstmt.executeQuery();//返回2维结果集ResultSet
- while (rs.next()){
- int id=rs.getInt("id");//获取第一个列的值 编号ID
- String name=rs.getString("name");//获取第二个列的值 编号 name
- int age=rs.getInt("age");//获取第三列的值 编号age
- System.out.println("学生编号:"+id+"学生姓名:"+name+"学生年龄:"+age);
- System.out.println("========================================================");
- }
- }
- private static List<Person> listPerson3()throws Exception{
- List<Person> personlist=new ArrayList<Person>();
- Connection con=dbUtil.getCon();//获取连接
- String sql="select * from t_student";
- PreparedStatement pstmt=con.prepareStatement(sql);
- ResultSet rs=pstmt.executeQuery();//返回2维结果集ResultSet
- while (rs.next()){
- int id=rs.getInt("id");//获取第一个列的值 编号ID
- String personName=rs.getString("name");//获取第二个列的值 编号 name
- int age=rs.getInt("age");//获取第三列的值 编号age
- Person person=new Person(id, personName, age);
- personlist.add(person);
- }
- return personlist;
- }
- public static void main(String[] args) throws Exception {
- // listPerson();
- // listPerson2();
- List<Person> personList=listPerson3();
- for (Person person:personList){
- System.out.println(person.toString());
- }
- }
- }
关键点:重写ToString
- package model;
- /**
- * 个人信息
- * @author MC-DS
- *
- */
- public class Person {
- private int id;
- private String personName;
- private int age;
- public Person(int id, String personName, int age) {
- super();
- this.id = id;
- this.personName = personName;
- this.age = age;
- }
- public Person(String personName, int age) {
- super();
- this.personName = personName;
- this.age = age;
- }
- public int getId() {
- return id;
- }
- public void setId(int id) {
- this.id = id;
- }
- public String getPersonName() {
- return personName;
- }
- public void setPersonName(String personName) {
- this.personName = personName;
- }
- public Integer getAge() {
- return age;
- }
- public void setAge(int age) {
- this.age = age;
- }
- @Override
- public String toString() {
- // TODO Auto-generated method stub
- return "["+this.id+","+this.personName+","+this.age+"]";
- }
- }
写前:
- model.Person@27d43d30
- model.Person@5efd2ebd
- model.Person@4007ab03
- model.Person@376c72cc
- model.Person@30e4cb81
- model.Person@7cec9b3a
- model.Person@11c33ce9
- model.Person@28d3ee1b
- model.Person@71b5438d
- model.Person@3366184d
- model.Person@73c58197
- model.Person@2bbf1be2
写后:
- [1,ling,18]
- [2,李小龍,18]
- [6,劉德華,17]
- [7,古天樂,37]
- [8,李小龍,18]
- [22,李小龍,18]
- [222,李小龍,18]
- [233,李小龍,18]
- [656,李小龍,18]
- [658,李小龍,18]
- [659,郑伊健,37]
- [661,陈小春,32]
JDBC--Result 获取返回集合的更多相关文章
- .net 非阻塞事件获取返回异步回调结果
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- python执行系统命令后获取返回值的几种方式集合
python执行系统命令后获取返回值的几种方式集合 今天小编就为大家分享一篇python执行系统命令后获取返回值的几种方式集合,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 第一种情 ...
- PKG_COLLECTION_LHR 存储过程或函数返回集合类型
存储过程或函数可以返回集合类型,方法很多,今天整理在一个包中,其它情况可照猫画虎. CREATE OR REPLACE PACKAGE PKG_COLLECTION_LHR AUTHID CURREN ...
- asp.net 通过ajax方式调用webmethod方法使用自定义类传参及获取返回参数
实体类 public class User { public int Id { get; set; } public string Name { get; se ...
- Yii2.0调用sql server存储过程并获取返回值
1.首先展示创建sql server存储过程的语句,创建一个简单的存储过程,测试用. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE P ...
- 背水一战 Windows 10 (101) - 应用间通信: 通过协议打开指定的 app 并传递数据以及获取返回数据, 将本 app 沙盒内的文件共享给其他 app 使用
[源码下载] 背水一战 Windows 10 (101) - 应用间通信: 通过协议打开指定的 app 并传递数据以及获取返回数据, 将本 app 沙盒内的文件共享给其他 app 使用 作者:weba ...
- Java线程实现的第三种方式Callable方式与结合Future获取返回值
多线程的实现方式有实现Runnable接口和继承Thread类(实际上Thread类也实现了Runnable接口),但是Runnable接口的方式有两个弊端,第一个是不能获取返回结果,第二个是不能抛出 ...
- php 腾讯云 对象存储V5版本 获取返回的上传文件的链接方法
腾讯云 对象存储V5版本 文档地址:https://github.com/tencentyun/cos-php-sdk-v5 调用简单文件上传方法: 返回数据如下 Array ( [data:prot ...
- C#使用BeginInvoke和EndInvoke异步下载和获取返回结果
场景:为了防止UI卡死,使用异步下载文件 问题:采用多线程下载,关闭窗口后下载线程不能停止,线程操作麻烦. 参考:C#客户端的异步操作: http://www.cnblogs.com/fish-li/ ...
随机推荐
- GIS+=地理信息+行业+大数据——基于云环境流处理平台下的实时交通创新型app
应用程序已经是近代的一个最重要的IT创新.应用程序是连接用户和数据之间的桥梁,提供即时訪问信息是最方便且呈现的方式也是easy理解的和令人惬意的. 然而,app开发人员.尤其是后端平台能力,一直在努力 ...
- 分别通过【buildpath】和【lib】倒入JAR包有什么不同
我们可以通过java虚拟机的类加载器来理解.通过buildpath设置(或添加)程序使用jar包的classpath.Java虚拟机是根据Java ClassLoader(类加载器)决定如何,到那里去 ...
- pip国内源
pip install -i https://pypi.douban.com/simple pyqrcode
- 浏览器向下兼容之polyfill[阅后即瞎]
我们入门JavaScript的时候都写过polyfill: 比如手写一个弹窗, 手动模拟实现一个表格, 这些魔力的对象都是浏览器原生支持的, 虽然当我成为JS专家之后再也没造过轮子, 但是最近才发现我 ...
- sh脚本循环
sh for循环 for File in 1 2 3 4 5 do echo $File done sh for多重循环 for image_size_input in 160 140 120 100 ...
- [转载]如何解决failed to push some refs to git
Administrator@PC-20150110FGWU /K/cocos2d/yc (master) $ git push -u origin master To git@github.com:y ...
- android hardware.c 源码分析
android的jni通过ID来找hal模块,使用了hw_get_module()函数,本文就通过这个函数的来分析一下hal层的模块是如何匹配的. 首先要了解三个结构体hw_module_t,hw_m ...
- vim markdown
vim 安装vundle插件管理器 https://github.com/VundleVim/Vundle.vim Vundle for windows https://github.com/Vund ...
- 多媒体开发之h264中的sps---sps信息提取之分辨率宽高提取2
-------------------author:pkf -----------------------------time:2015-8-20 -------------------------- ...
- (转)windows下编译最新的x264
二:<windows下编译最新的x264> X264更新的比较快,每天都有更新,但算法模块,基本结构是没有多大变化的.x264都是用C语言写的包括C99,但C99语法是在VC中是没法用的( ...