SpringMVC,Restful请求方式

p2ng 发布于 2015/05/14 18:57
阅读 770
收藏 0
 


如下的代码:能正常访问各自的方法

/**
     * 获取管理处信息
     *
     * @return
     */
    @RequestMapping({"/getManagementOfficeList"})
    public List<ManagementOffice> getManagementOfficeList() {
        return managementOfficeServiceImpl.findAll();
    }

    /**
     * 获取管理处信息
     *
     * @return
     */
    @RequestMapping({"/getManagementOfficeList/{version}"})
    public List<ManagementOffice> getManagementOfficeList(@PathVariable final String version{
        return managementOfficeServiceImpl.findList(null, null, new ArrayList<Filter>() {{
            add(Filter.eq("version", version));
        }}, null);
    }


现在我想同一方法,同时支持两种请求方式

/getManagementOfficeList

/getManagementOfficeList/123123

@RequestMapping({"/getManagementOfficeList", "/getManagementOfficeList/{version}"})
    public List<ManagementOffice> getManagementOfficeList(@PathVariable final String version) {
        if (StringUtil.isBlank(version)) {
            return managementOfficeServiceImpl.findAll();
        } else {
            return managementOfficeServiceImpl.findList(null, null, new ArrayList<Filter>() {{
                add(Filter.eq("version", version));
            }}, null);
        }
    }


现在,如上的代码配置只有/getManagementOfficeList/123123这样的方式,才能拦截进入到方法...能有什么方法可以同时支持






加载中
0
rabbitgg
rabbitgg

1、有必要纠结是否多一个方法?

2、单一职责到哪去了?

p2ng
p2ng
有强迫症,毕竟大部分执行逻辑相同的。
返回顶部
顶部