JSP(Java Server Pages)和 Servlet 都是 Java Web 开发中用于处理服务器端逻辑和生成动态网页的技术,它们联系紧密,但定位和用法有明显区别。
Servlet
HttpServletJSP
简单说:JSP 最终也会变成 Servlet
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
resp.setContentType("text/html;charset=UTF-8");
resp.getWriter().write("<html><body>Hello Servlet</body></html>");
}
<html>
<body>
Hello JSP
</body>
</html>
可以看出:
out.write)在经典 MVC 架构 中:
Servlet:Controller(控制器)
JSP:View(视图)
示例流程:
浏览器 → Servlet → 业务处理 → 转发到 JSP → 页面展示
| 对比项 | Servlet | JSP |
|---|---|---|
| 编写方式 | Java 代码 | HTML + Java |
| 编译时机 | 手动编写并编译 | 首次访问时自动编译成 Servlet |
| 适合场景 | 控制逻辑 | 页面展示 |
| 修改成本 | 改代码需重新编译 | 改页面通常重启或热部署 |
✅ 逻辑清晰,适合复杂控制
❌ 写 HTML 极其不方便
✅ 写页面直观、开发快
❌ 容易把业务逻辑写进页面(混乱)
现在 JSP 和纯 Servlet 都很少直接用了,更常见的是:
但理解 JSP 和 Servlet 的区别,有助于理解:
如果你愿意,我也可以:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。