java数据库查询结果是什么类型?怎么转换成对象? 5C

前几天面试,被问到java从数据库拿到的数据什么形式?怎么转换成对象?
本人菜鸟一个,只知道通过Mybatis框架返回一个对象等。网上没找到相关的帖子。
求教各位大神,谢谢!!!

0

10个回答

拿到的是一个结果集,通过映射封装成对象

2

程序是不可能直接返回个对象给你的,假如数据库是别人单独开发,而你又需要对接数据库,那么人家怎么知道你用什么对象去包装数据呢?那么这方面数据库交互时只能给你返回一组含键值对的集合,至于数据如何使用看你自己程序怎么去设计,实体如何包装。不管你用什么框架也好,最终包装数据都是你自己定义依赖的。

1

比如jdbc返回的resultSet是你查询语句中 select a,b,c,d from table; a,b,c,d的集合,你知道数据库中a,b,c,d的类型,那么你就可以result.getint(index),result.getString(index)这样子。

1

你需要了解ORM映射,Hibernate和Mybaties都是基于JDBC来做的,从JDBC查询结果集中就可以看出原生的返回值是什么样子的。
其实理解的在简单的就是直接反射Bean,比如Mybaties 是需要配置表字段,类属性映射的

1

你可以使用List呀,把取得的所有的记录组织成对象然后放进List里面,使用的时候在从里面取就是了。如果使用的Hibernian的话那么Hibernian里面的查询都可以返回一个List集合。直接用就是了

0
yuqinly2015
Arlen113 我的意思是不使用框架时,查询结果集是什么形式,例如JDBC连接数据库查询结果集ResultSet,将这个结果集转换成对象等。说我不关心底层的东西。 平时都是框架,但是框架是怎么封装的就不太清楚了。
一年多之前 回复

通过resultType 指定查询的结果是Employee 类型的数据

只需要指定resultType 的类型,MyBatis 会自动将查询的结果映射成JavaBean 中的属性

select * from t_employee where id = #{id}

类似这个,resultType是一个javabean

0

程序是不可能直接返回个对象给你的,假如数据库是别人单独开发,而你又需要对接数据库,那么人家怎么知道你用什么对象去包装数据呢?那么这方面数据库交互时只能给你返回一组含键值对的集合,至于数据如何使用看你自己程序怎么去设计,实体如何包装。不管你用什么框架也好,最终包装数据都是你自己定义依赖的。

0

程序是不可能直接返回个对象给你的,假如数据库是别人单独开发,而你又需要对接数据库,那么人家怎么知道你用什么对象去包装数据呢?那么这方面数据库交互时只能给你返回一组含键值对的集合,至于数据如何使用看你自己程序怎么去设计,实体如何包装。不管你用什么框架也好,最终包装数据都是你自己定义依赖的。

0

得到的是一个结果记录集

0

得到的是一个ResultSet结果集,你可以通过循环结果集来获取数据,并且保存到你想保存的对象中。举个简单例子,一个查询所有学生的方法:
public List getAllStudent(){
Connection cn=null;
PreparedStatement st=null;
ResultSet rs=null;
List list=new ArrayList();
try {
cn=DBUtils.getConnection();
String sql="select * from student";
st=cn.prepareStatement(sql);
//设置参数
rs=st.executeQuery();
while(rs.next()){
Student stu=new Student();
stu.setSno(rs.getInt("sno"));
stu.setSname(rs.getString("sname"));
stu.setAge(rs.getInt("age"));
list.add(stu);
}

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }  
        finally{
             //7.释放资源
            DBUtils.closeAll(cn, st, null);
        }
        return list;
}

不知道你是不是这个意思,想要这种的答案。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
数据库查回来数据封装成Javabean再转json(有Date类型不能转json处理方法)
json-lib Javabean转json需要用到json-lib包,它可以把javabean转换成json串 jar包     json-lib的核心jar包有:         json-lib.jar     json-lib的依赖jar包有:       commons-lang.jar       commons-beanutils.jar       commons
JAVA中将数据库查询的ResultSet结果集转为对象实体类的List集合(反射)
//定义静态方法,并根据泛型和反射,实现转换 //注意:要求数据库的列名必须和JAVA实体类的属性名、类型完全一致 public static List resultSetToList(ResultSet rs,Class cls) { //定义接收的集合 List list = new ArrayList(); //创建一个对象,方便后续反射赋值 Object obj=null; try { ...
数据库查询返回类型
List> result =dao.showShopCoupons(param);数据库查询中有date类型字段,返回List>集合,但是其中date类型存放进去的不是String而是java.sql.Timestamp,没有报错,从result取出来也是java.sql.Timestamp而不是String类型。
JDBC将查询数据转换成javaBean,使用RowMapper实现
话不多说,上代码:DBUtil:1:查询单个Entity /** * @param sql sql语句 * @param obj sql语句需要的参数数组 * @param rowMapper 具体对应的rowMapper * @return */ public <T> T queryEntityBySql(String sql, Object[] obj,RowMapper...
将数据库查询得到的值转换为指定的运行时对象,包括Nullable<T>
将数据库查询得到的值转换为指定的运行时对象,包括Nullable /// &amp;amp;lt;summary&amp;amp;gt; /// 将数据库查询出的数据转换为指定的强类型 /// &amp;amp;lt;/summary&amp;amp;gt; /// &amp;amp;lt;typeparam name=&amp;quot;T&amp;quot;&amp;amp;gt;&amp;amp;lt;/typeparam&amp;amp;gt;
【java 菜鸟自动化实践之四】将数据库查询数据,转为TestNG适用的对象二维数组数据
数据库数据:数据库操作:import java.sql.*; import org.apache.log4j.Logger; public class MysqlConn { private static Logger log = Logger.getLogger(MysqlConn.class); private static MysqlConn op; private Connect...
Java实现数据库查询自动封装成对象
用过框架的人应该都知道,像mybatis这种将数据库查询出的结果自动封装成对象是如何实现的呢?这篇文章将会模仿此功能。 1、首先设计一个工具类,用来获取数据库连接,关闭资源 public class ConnUtil { final static String URL = "jdbc:mysql://127.0.0.1:3306/zsdj?useSSL=false"; final st
Groovy(类Java)将数据库查询结果ResultSet转换为Json返回
现在很多web均支持JSON数据格式返回,在工作中用到了Grails框架,下面记录一下如何将ResultSet转换为JSON数据格式返回。 import net.sf.json.JSONArray;   import net.sf.json.JSONObject;   public String doQTSCheck(String sql){    Connection con
将普通sql查询的将结果集转换指定的对象,然后对象存在list中并返回
将普通sql查询的将结果集转换指定的对象,然后对象存在list中并返回 /** * Project Name:cusmanage * File Name:UtilQueryObj.java * Package Name:test.util * Date:2017年4月15日下午5:25:03 * Copyright (c) 2017, 8888888@126.com All Rig
数据库查询得到的List<Map>结果集转化为JavaBean工具类
public class MapListToEntityListUtil&amp;lt;T&amp;gt; {      /**      * 根据List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt;数据转换为JavaBean数据      * @param datas       * @param beanClass      * @return      * @throws Common...
写接口 :将数据库查询的QuerySet集合转化成json数据
希望在请求结果中包含这一个资源的详细信息的api。 比如,我们请求商品列表信息得到如下的结果: [ { “id”: 1, “name”: “袜子” }, { “id”: 2, “name”: “裤子” }, { “id”: 3, “name”: “鞋子” } ] 但是,我们通过ORM进行objects.all()得到的是QuerySet集合,那么前端是无法进行解析的,我们需要返回json的格式的数...
java [30] 利用java反射技术将查询结果封装为对象
需求:将查询的结果封装为对象返回 使用到的知识点: 1.结果集的元数据信息(从结果集获取列名存入数组中)  java.sql.ResultSetMetaData rsmd = rs.getMetaData();             int count = rsmd.getColumnCount();             String[] colNames = new String[c...
DAO层通用实现,结果集ResultSet转化为javaBean的反射实现,自动生成javaBean
在学习持久层框架之前,反复编写dao层代码编烦了,就自己实现了一个能方便地根据数据库表创建javaBean,并实现其增删改查,结果集转化为List集合,sql编译语句里参数赋值的自动化的“框架”。本文所使用的数据库是mysql自带的simple data里的sakila数据库 先看一下使用效果 实现过程 核心代码如下 其余代码会在后面贴上 其余代码先看一下使用效果: 先编写并运行测试类创建jav
Hibernate将sql查询结果中字符转为char类型的原因
Hibernate会默认将Oracle中的char转为java中的char 所以如果你设定一个char(4)的type字段,其中有值是’客户类型’ 或发现Hibernate查询出来只有一个’客’ 原因是oracle默认’XXX’这种字符是char(长度)这个类型。
flask中将数据库模型类查询输出转变为字典格式
我们在开发flask项目的时候,估计遇到最多的就是json格式数据,这是因为,前端向后端发起请求,我们后端返回给前端的数据类型需要是json格式,json格式的数据类型Python中的字典格式,只有先把数据转化为字典格式,才能进一步将数据转换为json格式,那么我们每次在查询数据库数据的时候,不想每次都在后端将查询出来的单个数据再转换成字典格式,因为那样比较繁琐,所以我们选择在数据库模型类中去执行...
如果将Java中从数据库查询到的结果集转换为Json数组形式
package util; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.util.Date; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class JsonUtil
亲测可用:将数据库查询结果DataReader转换为Json
如果有其他类型的话,大概可以归为两类,需要加""的,和不需要加的,这里我都有处理,可以直接在对应处添加类型即可。因为我查找的数据里牵扯到了datetime,所以我将其转换成了string来处理         ///            /// DataReader转换为Json           ///            /// DataReader对象
利用反射将MySQL查询结果映射到对象(demo)
代码如下 import java.lang.reflect.Field; import java.lang.reflect.Method; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.util.ArrayList; import java.util.List; /*************...
DButil类对数据库查询的八种结果集
一 ,ArrayHandler -&amp;gt; 将结果第一行存储到对象数组中       示例: Object[] result = runner.query(sql,new ArrayHandler()); 二,ArrayListHandler -&amp;gt; 将结果集的每一行,封装到对象数组中,对象数组存储在List集合中      示例:List&amp;lt;Obejct[]&amp;gt; list = ...
使用原生sql查询数据返回object类型list时,转换数据列出现转换类型错误(但写法正确)
转换object类型数据出现转换类型错误 在使用原生sql进行数据查询时,得到object类型数据进行类型转换时,一直报错,但是类型转化的写法正确,此时需要考虑的造成出错原因可能在于原生sql的查询的数据列仅有一列当使用newlist.get(0)[0]取数据就会出现类型转化错误, 下边是Java代码 String startDate = appDataInfo.getDate
从数据库查询得到的枚举数据列,int转成对应的枚举字段
枚举类型public enum Emotion{未分析,正面,中立,负面}这里使用的是MiniDao@MiniDao("emotionMiniDao")public interface EmotionMiniDao {@Sql("SELECT CONCAT(emotion) `name`,COUNT(*) ` value` FROM  table_name  GROUP BY emotion")L
将 数据库中的结果集转换为json格式(三)
从数据库中得到结果集 public String list() throws Exception { Connection con = null; PageBean pageBean = new PageBean(Integer.parseInt(page), Integer .parseInt(rows)); ...
Python 查询的数据库中的数据 关键值转换成键值对形式
数据库中获取的数据 data = ((1, '无标签'), (2, '词根词缀'), (3, '中口背诵单词'), (4, '新概念3'), (5, 'ebs'), (6, '黄老师翻译'), (7, 'sherlock holmes')) 目标数据 to_data = [     {         "name": "无标签",         "value": 1   
Laravel数据库查询结果自动转数组
环境:laravel5.6+php7.2.1 在APP\Providers\EventServiceProviders.php中 首先 use Illuminate\Database\Events\StatementPrepared 在boot方法中添加 Event::listen(StatementPrepared::class, function ($event) { $...
手动写一个将数据库中查询的内容封装到对象中
-------------------------使用反射来获取指定方法------------------------- 当为方法的参数设置值时可以使用将参数向上转型为Object 再设到方法上 ublic T handler(ResultSet rs) {  try{   T instance = clazz.newInstance();//获取类的实例  ResultSetMeta
mysql表转换为类对象
using MySql.Data.MySqlClient; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Reflectio
以map接收数据库中查询到的多行结果
以map接收数据库中查询到的多行结果jdbc形式 代码如下: Map&amp;amp;lt;String, Map&amp;amp;lt;String, Object&amp;amp;gt;&amp;amp;gt; map=new HashMap&amp;amp;lt;String, Map&amp;amp;lt;String, Object&amp;amp;gt;&amp;amp;gt;(2048); Connection con = PoolManager.getConnection();; Prepa
Java实现对象转换成Map以及类型处理
import java.beans.BeanInfo; import java.beans.IntrospectionException; import java.beans.Introspector; import java.beans.PropertyDescriptor; import java.lang.reflect.InvocationTargetException; imp
Hibernate(JPA) 多表查询结果为Object,转为自定义实体类
实体:product @Entity public class Product { private String productNo; private String name; private String chandi; private ProductType productType; @Id public String getProductNo() { return pro...
数据库查询结果Cursor,怎样准确地给model准确赋值
Android 在查村数据库的时候,经常使用db.exec**执行一句数据库语句,结果返回的是Cursor,cursor包含了要查询的结果所有符合条件的字段名和对应的值,那么怎样准确的利用cursor把值取出来呢
数据库多表查询时,返回值该如何接收问题
我们需要创建一个类,该类包含需要被查出数据的类,这些类被当做属性然后在xml文件中,通过resultMap标签给相应属性(类)附上该表中查询出的值,一一对应,这样返回创建的类,即可取得所有关联查询的结果了;
JDBC学习笔记(查询SQL语句得到的结果对象)
通过Statement或PreparedStatement执行查询SQL语句后会得到一个结果对象(ResultSet) 一、ResultSet:结果集,操作查询操作后的数据表 本质:ResultSet里有一个行指针,指向数据表,默认指向第一行的上方。 * 有以下方法: * next():将指针往下移动一行,当返回为tr...
TP模型查询结果类型
正常来说,使用模型查询返回的是模型对象, 但是如果使用了模型关联的,返回的就是一个数据集对象, 所以使用的时候要注意
查询结果直接转换为VO
简介:这是Hibernate3.2.6 原生sql 查询使用方法,将查询结果直接转换为VO,不必非要指定属性大写的详细页面,介绍了和数据库,有关的知识,加入收藏请按键盘ctrl+D,谢谢大家的观看!要查看更多有关信息,请点击此处 1.由于SQL语法本身的复杂,及各种数据库原生功能的多样性,HQL和QBC不能涵盖所有的查询特性,这时就需要采用原生的SQL达到期望的目的。Hibernate 完全支持...
String类型字符串(xml格式)转换成java对象类型
使用到的包: 1。 2。 将字符串类型的字符串转换成的Java的对象时,需要先将字符的格式转换成JSON格式的字符串(所以用到了json.jar包),在使用JSON格式的字符串转换成的Java的对象类型   字符串原类型(XML格式): 将字符串类型的字符串转换成JSON格式的字符串: 截取(ps:如果不截取{}中的内容的话,转换对象的时候,对象的属性将不会是json格式字符...
java与数据库时间类型的转换
java代码与数据库时间类型的转换 数据库中字段是date(java.sql.date)类型 如果是这种情况,那么javabean类里属性类型可以定义为java.util.date或者java.sql.TimeStamp类型。 通用做法: 前台传来一个时间格式的字符串,servlet/service里面将时间格式的字符串转换为java.util.date或者java.sql.Ti...
从数据库取出来的code转换成枚举
1.第一步:书写CodeEnum类 public interface CodeEnum{ Integer getCode(); } 2.第二步:书写枚举类 public enum OrderStatusEnum implements CodeEnum{ NEW(0,&quot;新订单&quot;), FINISH(1,&quot;完结&quot;), CANCEL(2,&quot;已取消&quot;); private Inte...
Django 查询结果 转 Json
第一种:model_to_dict from django.forms.models import model_to_dict # 文章查询 def blog_show(request): if request.method == 'GET': blogs = BlogModel.objects.all() json_list = [] ...
Java之JDBC查询结果集封装到对象
有任何问题加群讨论,还可以领取精美学习资料噢~ 群号:733899823 加群时请备注CSDN~ 工程目录结构如下: User类: package com.xiao.pojo; /** * @author 笑笑 * @Date 2018年3月15日上午9:20:28 * */ public class User { private int uid = 0; ...
sql的查询结果直接转换成xml格式
SQL原来还有这样的功能: SELECT * FROM 表名 [FOR XML AUTO] [, ELEMENTS, ROOT('根名')]