2013-10-04 32 views
0

我在搞乱Java2EE Servlets和JSP,当生成的HTML代码发送到Web浏览器时,我仍然感到困惑。我实现了FrontController模式,因此用户请求被控制器servlet(FC)拦截,它根据请求打包的命令发现,正在请求什么jsp页面,并使用request.getRequestDispatcher(path).forward(request, response); 转发请求和响应然后我猜测会生成几行动态设置的数据,这些数据是通过forward方法传回的请求而被回收的,并返回给浏览器?什么时候回复给浏览器

我想这不是正确的方式它是如何工作的,它只是我如何看待它,所以有人可以纠正我可能写整个过程,并解释getRequestDispatcher(path).forward(request, response);的确切目的?

在此先感谢!

回答

1

转发包括说:我已完成了我的工作,让组件生活在path完成剩下的工作。

Servlets(控制器)擅长读取和验证参数,调用业务逻辑并创建Java Bean实例(模型)。他们吮吸在生成HTML代码。

JSP(视图)非常适合使用存储在Java bean中的数据动态生成HTML代码,但它们不擅长执行业务逻辑。

因此,请求首先由servlet处理,servlet读取并验证参数,调用业务逻辑,获取数据并将其存储为存储为请求属性的Java Bean。然后servlet将请求和响应转发给JSP,JSP生成HTML并将其写入响应写入器。而写入响应写入器的内容则发送到浏览器。

+0

很好的解释,谢谢! – Husky

相关问题