JavaWeb-JSP

JSP

JSP简介

Java Server Page,是前端交互的页面,与静态页面不同,JSP可以动态的处理用户的数据,其本质上是一种Servlet。

Servlet+JSP模式:

Servlet职责:

  • 接收参数

  • 处理业务逻辑

  • 将结果存到域对象中

  • 跳转到JSP页面

JSP职责:

  • 从域对象中取出数据
  • 将数据打印到前端中

开发原则:尽量不要再JSP页面中放入过多的Java代码

JSP原理

在早期没有JSP的年代,开发人员还是用Servlet,调用写方法,将HTML文件一行一行的写出去,达到向网站输出HTML文件与动态数据的目的,但是由于过于繁琐,后面开发出一种新的文件JSP,JSP看上去与HTML文件没什么不同,只是可以嵌套Java代码,具体流程是:

在这里插入图片描述

当用户访问jsp资源时,服务器会根据jsp资源,自动生成java文件并且编译成class文件,而查看该class文件时可以发现, 该jsp会继承HttpJspBase类,而HttpJspBase类又是HttpServlet的子类,因此,访问jsp实际上就是在访问Servlet

本机的路径是C:\Users\12902\AppData\Local\JetBrains\IntelliJIdea2020.2\tomcat\Unnamed_JavaWeb_2\work\Catalina\localhost\Servlet_war_exploded\org\apache\jsp

在jsp所生成的class文件中,有些地方与servlet是类似的:

public void _jspInit() {
   
  }

public void _jspDestroy() {
   
}

public void _jspService(HttpServletRequest request,HttpServletResponse response){
   

}

另外,以index.jsp为例,打开其index_jsp.class文件,可以发现其中声明的内置对象:

final javax.servlet.jsp.PageContext pageContext;  //页面上下文
javax.servlet.http.HttpSession session = null;    //session对象
final javax.servlet.ServletContext application;   //ServletContext对象
final javax.servlet.ServletConfig config;         //config对象
javax.servlet.jsp.JspWriter out = null;			  //Writer对象
final java.lang.Object page = this;				  //当前Jsp对象
request  	//请求
response 	//响应

通用代码结构

在这里插入图片描述

JSP指令

JSP有三大指令,分别是page,include,taglib

指令的作用:对当前JSP页面进行配置,可以理解成注解?

指令的格式

<%@page 属性名1=属性 属性名2=属性%>
  • page指令:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值