小编tmp*_*210的帖子

杰克逊复杂列表序列化

我正在开发Jackson序列化/反序列化.例如,我有这样的课程:

class Base{
    String baseId;
}
Run Code Online (Sandbox Code Playgroud)

我想序列化列表objs; 要使用jackson,我需要指定列表的元素实际类型,因为java类型擦除.此代码将起作用:

List<Base> data = getData();
return new ObjectMapper().writerWithType(TypeFactory.collectionType(List.class, Base.class)).writeValueAsString(data);
Run Code Online (Sandbox Code Playgroud)

现在,我想序列化更复杂的类:

class Result{
     List<Base> data;
}
Run Code Online (Sandbox Code Playgroud)

我应该如何告诉杰克逊正确序列化这门课程?

serialization json jackson

6
推荐指数
1
解决办法
3万
查看次数

从groovy调用Spring组件

我有一个基于Spring的java应用程序,其中包含一些有用的组件.作为系统的一部分,我有一个groovy脚本,来处理一些报告.我想从groovy脚本中调用spring组件.当我用Java编写时,我需要在其中使用@Autowired注释@Component,即

@Component
class Reporter{
@Autowired
SearchService searchService;

void report(){
 searchService.search(...);
 ...
}
}
Run Code Online (Sandbox Code Playgroud)

我如何从groovy做同样的事情?首先,我如何定义@Component整个脚本?以下代码:

@Component class Holder{
    @Autowired
    SearchService searchService;

    def run(){
        searchService.search("test");
    }
}

new Holder().run()
Run Code Online (Sandbox Code Playgroud)

在NPE上失败了searchService.GroovyClassloader如果重要的话,我正在运行使用Java实例化的groovyscripts .非常感谢提前!

java groovy spring autowired

5
推荐指数
1
解决办法
6931
查看次数

标签 统计

autowired ×1

groovy ×1

jackson ×1

java ×1

json ×1

serialization ×1

spring ×1