【问题标题】:How to set className as parameter for BeanPropertyRowMapper<>() in java如何在java中将className设置为BeanPropertyRowMapper<>()的参数
【发布时间】:2015-06-13 06:13:05
【问题描述】:

我正在尝试将一个类设置为 beanPropertyRowMapper。

query.setRowMapper(new BeanPropertyRowMapper<ClassName>());

我需要从字符串中获取类。我尝试了以下方法:

Class<?> mapperClass = Class.forName(stringValue);
query.setRowMapper(new BeanPropertyRowMapper< mapperClass >());

这是行不通的。我怎样才能做到这一点?结果应该等价于

query.setRowMapper(new BeanPropertyRowMapper<Person>());

Person 是一个类。

【问题讨论】:

    标签: java class assign classname


    【解决方案1】:

    这个

    Class mapperClass = Class.forName(stringValue);
    BeanPropertyRowMapper mapper = new BeanPropertyRowMapper(mapperClass);
    

    应该是诀窍。注意&lt;&gt; 的缺失。

    【讨论】:

      【解决方案2】:

      简单的答案:你不能。 Java 泛型系统不支持这种多态性。

      【讨论】:

        猜你喜欢
        • 2016-05-10
        • 2019-06-12
        • 2021-02-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-11
        相关资源
        最近更新 更多