【发布时间】:2020-10-21 02:49:40
【问题描述】:
我有一个问题,我需要帮助。
问题是我正在尝试使用 jdbctemplate 获取查询结果并将结果映射到我的 File 类中。
我的类文件包含 3O 个属性:10 个 LONG、STRING 和 DATE 类型的属性。
@Table (name = "UZTFILE", schema = "UTIC")
public class File implements Serializable {
private static final long serialVersionUID = 1L;
@Column (name = "UZTFILE_STRING1")
private String text1;
@Column (name = "UZTFILE_STRING2")
private String text2;
@Column (name = "UZTFILE_STRING3")
private String text3;
@Column (name = "UZTFILE_STRING4")
private String text4;
@Column (name = "UZTFILE_STRING5")
private String text5;
@Column (name = "UZTFILE_STRING6")
private String text6;
......
@Column (name = "UZTFILE_STRING10")
private String text10;
@Column (name = "UZTFILE_NUMBER1")
private Long number1;
@Column (name = "UZTFILE_NUMBER2")
private Long number2;
@Column (name = "UZTFILE_NUMBER3")
private Long number3;
@Column (name = "UZTFILE_NUMBER10")
private Long number10;
--getters and setters and constructors ---
我正在执行的查询:
List <File> files = new ArrayList <File> ();
// Query to execute
String query = "SELECT UZF1.UZTFILE_STRING1 AS INSTRUCCIONDECOBRO, UZF1.UZTFILE_STRING2 AS COUNTERPART, UZF1.UZTFILE_STRING3 AS CURRENCY VALUE AS UZF1.UZTFILE_NUMBER2, UZF1.UZTFILE_STRING4 AS FORMADECOBRO, UZF1.UZTFILE_STRING5 AS TIPOCUENTA, UZF1.UZTFILE_STRING6 AS NROCUENTA, UZF1.UZTFILE_STRING7 AS REFERENCE, UZF1.UZTFILE_STRING8 AS TYPEIDENTIFICATION, UZF1.UZTFILE_STRING9 AS NROIDENTIFICATION, UZF1.UZTFILE_STRING10 as NAMES FROM UZTFILE UZF1 ";
// Execution of the query
files = jdbcTemplate.query (query, new BeanPropertyRowMapper <> (File.class));
执行查询时它不会给我一个错误,一切都是正确的,但是当显示结果时,列出来为空,错误是由于我正在使用的查询使用别名而别名与名称不匹配File 类的属性。
我的问题或查询出现了,因为我无法更改类属性的名称,也无法从查询中删除别名,因为使用了不同的查询并且每个查询使用不同的别名。例如:
String query1= "SELECT UZF1.UZTFILE_STRING1 AS INSTRUCCIONDECOBRO, UZF1.UZTFILE_NUMBER2 AS AGE, MORE FIELDS WITH ALIASES..... FROM UZTFILE WHERE "condicion"";
//Query 2
String query2= "SELECT UZF1.UZTFILE_STRING1 AS NOMBRES, UZF1.UZTFILE_NUMBER2 AS SIZE, MORE FIELDS WITH ALIASES........ FROM UZTFILE Where "condicion";
问题在于无法识别别名的 BeanPropertyRowMapper,我无法修改类或查询的属性,是否有解决方案或您建议我做什么?
【问题讨论】:
标签: java sql jdbc spring-jdbc jdbctemplate