我正在研究一种使用NamedParameterJdbcTemplate从MySQL数据库获取一些数据的方法. listCurrentRecords应该从数据库返回Customer,Product和SalesOrder的对象类型列表. objectType是从在方法(1 || 2 || 3)内传递的参数定义的,并且在类中更早地定义为public变量.

public static final int TYPE_PRODUCT = 1;

public static final int TYPE_CUSTOMER = 2;

public static final int TYPE_SALESORDER = 3;

下面提供了该方法.

public static List listCurrentRecords(int objectType)

{

// PRODUCT

if ( objectType == 1 ){

}

//CUSTOMER

else if ( objectType == 2 ){

}

// SALESORDER

else if ( objectType == 3 ){

}

return null;

// return new ArrayList();

}

假设objectType == 2,那么它将需要使用getMyCustomer方法(从Product和SalesOrder同样使用它们将使用各自的方法)从Customer表中获取一些数据,如下所示,

public static List getMyCustomer(){

return jdbc.query("select * from Customer", new RowMapper() {

public Customer mapRow(ResultSet rs, int rowNum) throws SQLException {

Customer customer = new Customer();

customer.setCustomerID(rs.getString("CustomerID"));

customer.setName( rs.getString("Name"));

customer.setAddress( rs.getNString("Address"));

customer.setPhone1(rs.getNString("Phone 1"));

customer.setPhone2(rs.getNString("Phone 2"));

customer.setCreditLimit(rs.getDouble("Credit Limit"));

customer.setCurrentCredit(rs.getDouble("Current Credit"));

return customer;

}

});

在else if(objectType == 2){}内部,我想调用getMyCustomer方法并获取List< Customer>.那里.但是,方法listCurrentRecords的返回类型为List< Object>.如何从List< Customer>转换列出< Object>.我提供了以下伪代码,

// customer

else if ( objectType == 2 ){

List myCustomer = getMyCustomer();

// how to convert ***myCustomer*** to List ?

}

感谢您提供一些有关如何用Java正确编写的帮助.

解决方法:

由于需要对象类型(记住泛型是编译时类型检查功能),因此可以使用addAll或采用第二个List的构造函数.喜欢

List myCustomer = new ArrayList<>(getMyCustomer());

要么

List al = new ArrayList<>();

// ...

al.addAll(getMyCustomer());

标签:generics,jdbc,java,mysql,object

来源: https://codeday.me/bug/20191027/1946580.html

java对象类型转换分为_java-如何将类对象转换为通用对象类型?相关推荐

  1. 【Groovy】Groovy 方法调用 ( 使用 对象名.成员名 访问 Groovy 类的成员 | 使用 对象名.‘成员名‘ 访问类的成员 | 使用 对象名[‘成员名‘] 访问类成员 )

    文章目录 一.使用 对象名.成员名 访问 Groovy 类的成员 二.使用 对象名.'成员名' 访问 Groovy 类的成员 三.使用 对象名['成员名'] 访问 Groovy 类的成员 四.完整代码 ...

  2. java 泛型转实体_将实体类名称转换为泛型实体类

    通过实体类的名称字符串获取字符串所表达的类对象: String sb = "com.liuf.User"; T entity = (T) Class.forName(sb).new ...

  3. java class对象创建时机_Java面向对象编程-类的声明周期

    第十章 类的生命周期 10.1 Java虚拟机及程序的生命周期 当通过java命令运行一个Java程序时,就启动了一个Java虚拟机进程.Java虚拟机进程从启动到终止的过程,称为Java虚拟机的生命 ...

  4. java域的控制修饰符可分为_Java中的类和方法的修饰符

    java 中的类和方法的修饰符Java程序在定义类时,除了使用class关键字标识之外,还可以在class之前增加若干类的修饰符来修饰限定所定义的类的特性.类的修饰符分为访问控制符和非访问控制符两大类 ...

  5. java 日期时间工具_Java日期时间类工具

    Java日期时间类工具 Java日期时间类 Date类 Java提供的Date类和Calendar类用于处理日期和时间的类,包括创建日期,时间对象,获取系统当前日期,时间 等操作.但Date类无法实现 ...

  6. java数据类型转换方向_java基础学习篇02(数据类型转换和基本面试题)

    JAVA基本数据类型转换 java中的数据类型,分为,引用数据类型和基本数据类型.基本数据类型有8中 整型:byte 8位 . short 16位 .int 32位 .long 64位. (8位=1个 ...

  7. java实验三多态性_Java实验3 类的多态性和接口

    实验3 类的多态性和接口 一.实验目的 理解面向对象的多态性.理解接口和实现接口的类的关系,掌握一个类实现多个接口的声明和使用方法. 二.实验内容 1.程序理解: 接口的应用 //接口的应用 //定义 ...

  8. java.net.url 兼容_java.net.Url类的应用(网络编程)

    一.认识URL 类 URL 代表一个统一资源定位符,它是指向互联网"资源"的指针.资源可以是简单的文件或目录,也可以是更为复杂的对象的引用,例如对数据库或搜索引擎的查询. 简单的可 ...

  9. java object取数据_java使用ObjectInputStream从文件中读取对象

    import java.io.EOFException; import java.io.FileInputStream; import java.io.FileNotFoundException; i ...

最新文章

  1. 电子与通信工程专硕考分_2021西安电子科技大学电子与通信工程考研经验分享...
  2. 开始测试React Native App(下篇)
  3. Android之自定义一个环形进度控件
  4. JavaScriptSerializer 序列化json 时间格式
  5. 【频谱共享】基于认知无线电的VCG拍卖机制频谱共享算法的MATLAB仿真
  6. expdp / impdp 用法详解
  7. Cluster coefficient的理解
  8. 三、Go语言控制语句
  9. 软件分析与设计:分析什么?如何设计?
  10. 【特色团队采访】实力队伍鱼遇雨欲语与余比赛经验分享
  11. Linux下LAMP服务配置
  12. 张季跃 201771010139《面向对象程序设计(java)》第十三周学习总结
  13. python爬取电子病历_电子病历患者查询
  14. missing privilege separation directory /var/empty/sshd问题解决
  15. C#个人博客系统源码(前台+后台管理)
  16. OneNET麒麟座应用开发之九:与SD卡通讯并保存数据
  17. 助教日志_【沈阳航空航天大学软件工程 1,2班】期末排行
  18. MATLAB基本使用素养
  19. 高速下载ChatGLM模型文件的解决方案
  20. JZOJ 3388. 【NOIP2013模拟】绿豆蛙的归宿

热门文章

  1. Android之二维码扫描的总结
  2. 数学和物理太难?这些动图让你秒懂抽象概念
  3. TensorFlow发布全新版本,又会带来哪些变革?
  4. python win32ui选取文件夹_最全 Python 算法实现资源汇总!
  5. 微型计算机原理中LEA,微型计算机系统原理及应用(第2版)第2章
  6. java中JOptionPane类_java:JOptionPane类消息框总结
  7. 用html制作篮球网页,篮球网站的设计与实现).doc
  8. 下学期计算机教学工作计划,初中信息技术下学期教学工作计划
  9. python怎么读数据库的数据_python从数据库读取出来的字典怎么更加方便的插入数据库...
  10. apk源码查看工具_如何查看Linux命令工具的源码?