我使用的是Spring批处理,因为我将类名称作为参数传递给读者,因此我想将其设置为我的目标类名。有一种方法可以从类名中获取类名String.I尝试使用反射,我正在成功获得该类。但我无法设置为我的目标类型 下面是我的代码。如何从字符串获取类名
reader.setTargetType((Class<? extends className>) className.class);
它应该是::
@Bean(name = "jMongoReader")
@StepScope
public MongoItemReader<Object> jsonDataReader(@Value("#{jobParameters[name]}") String className) {
try {
Class cls= Class.forName(className);
reader.setTemplate(mongoConfig.getMongoTemplate());
reader.setCollection("employeeInfo");
reader.setTargetType((Class<? extends className>) className.class);
reader.setQuery("{}");
Map<String, Direction> sorts = new HashMap<String, Sort.Direction>(1);
sorts.put("_id", Sort.Direction.ASC);
reader.setSort(sorts);
reader.setFields(keys);
}
'className.class'总是'String'你的情况 –