我正在尝试MethodValidationPostProcessor在我的服务层上使用 Spring进行验证。我曾计划创建一个通用服务接口并让控制器按类型注入正确的服务:
@Controller
@RequestMapping("/items")
public class ItemController {
@Inject
// inject a service for the domain type i am controller for
private Service<Item> service;
@RequestMapping(method = RequestMethod.POST, produces="application/json")
public @ResponseBody Item create(@RequestBody Item item){
return this.service.execute(item);
}
}
Run Code Online (Sandbox Code Playgroud)
我有一个通用的服务定义和一个简单的实现:
public interface Service<T> {
public T execute(@Valid T item);
}
// example implementation:
@Named
@Validated
public class ItemService implements Service<Item>{
@Override
public Item execute(@Valid Item item) {
return item;
}
}
Run Code Online (Sandbox Code Playgroud)
然后设置我的应用程序以包含 SpringsMethodValidationPostProcessor来处理@Validatedbean:
@Configuration
@ComponentScan …Run Code Online (Sandbox Code Playgroud) 我正在研究两个Gradle项目.其中一个项目是未来其他项目将使用的支持库,因此项目A依赖于项目B而不是"多模块项目".依赖关系将通过工件repo解决,因此项目a使用它的maven坐标将其声明为编译依赖关系.
我的问题是当在IntelliJ中处理这两个项目时,在我的本地仓库中安装它(使用Gradle Maven插件)之前,对项目B的更改不可用于项目A. 这有点烦人,减慢了我的工作流程.有没有办法让IntelliJ在内部自动更新依赖项?