小编use*_*816的帖子

DDD 中聚合的不同持久性存储库

我有一个包含根实体(文档)和 VO(文档)的聚合。文档与文件(pdf、图像、office文档等)相关联,因此我必须将聚合保存在数据库中,将文件保存在ftp服务器中(由于空间文件太大,无法将文件保存在数据库中)。我的数据库存储库类实现了一个接口,其中包含 FindXXX、AddDocument、RemoveDocument 等方法。如何实现 ftp 持久性?我的数据库存储库是否应该连接到 AddDocument 和 RemoveDocument 中的 ftp setver?或者我应该创建一个实现该接口的 ftp 存储库类。如果是这样,像 FindXXX 这样的方法就没有意义了。据我对 DDD 的了解,每个聚合只有一个接口存储库来代表如何持久化。它可以有多种“持久模式”(在数据库、FTP、文件等中),但接口应该相同。

domain-driven-design ddd-repositories

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

Jersey 2.4 ReaderInterceptor无法正常工作

我正在测试泽西拦截器和过滤器.我有这个Jersey 2.4拦截器代码:

@Provider
@Test
public class TestInterceptor implements WriterInterceptor, ReaderInterceptor {
    private final static Logger log = ....

    @Override
    public void aroundWriteTo (WriterInterceptorContext context) 
        throws IOException, WebApplicationException {
        log.debug("WriterInterceptor");
        context.proceed();
    }

    @Override
    public Object aroundReadFrom(ReaderInterceptorContext ric) 
        throws IOException, WebApplicationException {
        log.debug("ReaderInterceptor");
        return ric.proceed();
    }    
}
Run Code Online (Sandbox Code Playgroud)

我的资源方法:

@Path("{test}")
@GET
@Produces(MediaType.APPLICATION_JSON)
@Test
public FooObj test () {
    log.debug("test method");
    return new FooObj();
}
Run Code Online (Sandbox Code Playgroud)

两个过滤器:

@Provider
public class ResponseFil implements ContainerResponseFilter {
    private final static Logger log = ....

    @Override
    public void filter(ContainerRequestContext …
Run Code Online (Sandbox Code Playgroud)

java httprequest jersey-2.0

2
推荐指数
1
解决办法
3743
查看次数