您现在的位置是:首页 > Javascript
当前栏目
Java-Jsp是什么原理又是什么
2023-02-18 16:41:17 时间
什么是Jsp
Java Server Page : Java服务器端页面,和Servlet一样,用于 动态Web
技术
最大的特点
- 语法和HTML类似
区别
- HTML只给用户提供静态的数据
- JSP页面可以嵌入Java代码,为用户提供动态数据
Jsp原理
Jsp是怎么执行的?
代码层面 :
Hello World!
服务器内部 : tomcat中有一个work目录; idea使用tomcat的会在idea的tomcat中产生一个work目录 发现
D:\Environment\apache-tomcat-9.0.0.M6\work\Catalina\localhost\ROOT\org\apache\jsp 目录下的文件是java程序,jsp最终被转化成了java类
结论 :浏览器向服务器发送请求,不管访问什么资源,都是在访问servelt
public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase
//--------------------
public abstract class HttpJspBase extends HttpServlet implements HttpJspPage
//--------------------
//初始化
public void _jspInit()
//销毁
public void _jspDestroy()
//JSPService
public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
throws java.io.IOException, javax.servlet.ServletException
判断请求
内置一些对象
final javax.servlet.jsp.PageContext pageContext;//页面上下文
final javax.servlet.ServletContext application;//application
final javax.servlet.ServletConfig config;//配置
javax.servlet.jsp.JspWriter out = null;//页面输出流
final java.lang.Object page = this;//页面本身
final javax.servlet.http.HttpServletRequest request
final javax.servlet.http.HttpServletResponse response
输出页面前增加的代码
response.setContentType("text/html; charset=UTF-8");//设置响应页面类型
pageContext = _jspxFactory.getPageContext(this, request, response,null, false, 8192, true);
_jspx_page_context = pageContext;
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
out = pageContext.getOut();
_jspx_out = out;
以上对象我们可以在JSP页面中直接使用
在jsp中:
- 只要是java代码,就会原封不动的输出
- html代码会被out.weite()方法写出
相关文章
- [javascript] npx 命令简单使用
- [javascript] vue的实例生命周期钩子函数
- [javascript] var let const声明变量的区别
- [javascript] vue3.0 beta版发布使用TS重写
- [javascript] 主流浏览器对ES6的支持情况
- [javascript] typescript的安装
- [MySQL] BLOB, TEXT, GEOMETRY or JSON column 'body' can't have a default value错误
- 一文搞懂如何使用Node.js进行TCP网络通信
- [Linux] 解决CentOS下Requires: libjson-c.so错误
- [JavaScript]js中typeof的用法
- [javascript] 利用chrome的overrides实时调试线上js
- [javascript] test() 方法进行正则验证
- [日常] json_encode对中文和引号的处理差异研究
- [前端] js中call方法的理解和思考
- [javaEE] jsp的九大隐式对象
- [javaEE] jsp的指令
- [javaEE] jsp入门
- [javascript] Promise简单学习使用
- [android] WebView与Js交互
- [javascript] 看知乎学习js事件触发过程