我听说从控制器到实现级别的HttpRequest和HttpRespone对安全级别没有好处..是真的..如果是这样的话如何避免它......请提出建议..
提前谢谢..
答案 0 :(得分:1)
服务层的主要目标是可重用性和separation of concerns,即服务层应该能够处理来自各种来源的业务逻辑,如Web层controllers
或其他Web服务(即不同的端点) )。
因此,如果您的webtier对象(FormBean
对象,httprequest
,httpsession
对象等等)分散到服务层中,那么服务和服务之间就会紧密耦合。使用controller
图层。如果您想为其他端点或通道公开或重用相同的服务,那么您最终将进行更改(删除webtier对象或将if else条件放入代码中)到服务层(以支持不同的终端系统),这不好。
在n层(或3层)体系结构中,服务层(以及DAO)应仅使用域/实体对象,不应与前端(Web层)对象混合使用。否则,应用程序无法轻松支持/扩展到多个端点。
答案 1 :(得分:0)
应该以这样的方式设计应用程序:负责任务的组件应该执行所需的工作,并将对象/变量片段委托给下一组方法/类。最好从HTTP请求/响应中提取Header / Body / Attachments,并将其相应地发送到业务类进行进一步处理。
答案 2 :(得分:0)
HttpServletRequest 传递给服务层。
如果您明确需要请求,则可以将逻辑放在Web层中。或者扩展库并允许它获取参数图(如果可能的话),你也可以
在实现接口的类中包装 HttpRequest 和 HttpResponse ,并使服务层依赖于接口。