【问题标题】:how can I convert postgresql array to java array in getJdbcTemplate().query如何在 getJdbcTemplate().query 中将 postgresql 数组转换为 java 数组
【发布时间】:2019-10-12 14:37:21
【问题描述】:

我正在使用 spring 与 postgresql 进行交互。这是我的问题。

人具有三个属性:

  1. 名称(字符串)
  2. 爱好(String[])
  3. 性别(布尔值)

如果我尝试使用以下方法从数据库中获取人员列表

List<Person> person=  getJdbcTemplate().query("select * from person where name=?",new BeanPropertyRowMapper<person>(Person.class),name);

编译器提示

Failed to convert property value of type 'org.postgresql.jdbc.PgArray' to required type 'java.lang.String[]' for property 'hobbies';

有没有办法将 pgarray 映射到 java 数组?

【问题讨论】:

    标签: java spring postgresql jdbctemplate


    【解决方案1】:

    通过实现我们自己的 RowMapper

    public class PersonRowMapper implements RowMapper<Person> 
    

    现在,我们可以操作 rs.getArray() 的结果,然后返回 person。

    【讨论】:

      猜你喜欢
      • 2011-03-05
      • 2019-05-29
      • 1970-01-01
      • 1970-01-01
      • 2015-02-26
      • 1970-01-01
      • 2014-06-26
      • 2011-10-16
      相关资源
      最近更新 更多