为什么JavaEE中的Servlet类在初始化的时候,使用init()方法来获取参数,在类中定义字段不是更方便吗?
使用init()方法,还需要读取xml,这不是更消耗性能的设计吗?如果直接设计成字段,岂不是既方便又省性能。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
使用init()方法,还需要读取xml,这不是更消耗性能的设计吗?如果直接设计成字段,岂不是既方便又省性能。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
如果用
getInitParameter()
的话,确实是读取WEB-INF/web.xml
的参数(Servlet 3.0以后,也可以读取@WebServlet
或@WebFilter
注解里的参数)。我觉得,比起读取类中的成员,读web.xml唯一的好处是:
类修改了还需要编译和部署,但web.xml修改后自动触发ServletContext重启,不需要编译,会很方便。
另外,项目复杂的话,初始化参数(如数据库连接串、依赖的外部API地址、第三方接口帐号等)的来源会是多样的,比如:
总之,与环境相关的配置,无论写在代码里还是写在web.xml里,似乎都不是很好的选择。