JSP一:理解JSP
时间:2022-07-22
本文章向大家介绍JSP一:理解JSP,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
了解JSP
JSP 本质上就是⼀个 Servlet,JSP 主要负责与⽤户交互,将最终的界⾯呈现给⽤户。
在Java中,只有Servlet接口才可以于浏览器交互。
一个HTML+JS+CSS+Java 的混合⽂件。
JSP引擎会将你写好了的jsp转化为Java类,也就是Servlet类,如果你去看他转化之后的源代码,你会发现它实际上就是我们之前使用原始Servlet的servletResponse.getWriter().write()方法来写html的。
换句话说,当服务器接收到⼀个后缀是 jsp 的请求时,将该请求交给 JSP 引擎去处理,每⼀个 JSP 页面第⼀次被访问的时候,JSP 引擎会将它翻译成⼀个 Servlet ⽂件,再由 Web 容器调⽤ Servlet 完成响应。
如果你单纯从开发的角度去看,JSP 就是在 HTML 中嵌⼊ Java 程序。
嵌入方式
1.JSP 脚本,执⾏ Java 逻辑代码
<% Java代码 %>
我们去新建一个JSP页面,就叫test.jsp,运行项目后在浏览器中访问该页面。
在body中加入
<%
String s = "Hello JSP";
System.out.println(s);
%>
2.JSP 声明:定义 Java ⽅法
<%!
声明 Java ⽅法
%>
示例:
<%!
public String hello(){
return "hhaa";
}
%>
<%
System.out.println(hello());
%>
3.JSP 表达式:把 Java 对象直接输出到 HTML ⻚⾯中
<%= Java变量 %>
示例:
<%=hello()%>
内置对象
一共有9个内置对象,常用的是 request、response、session、application、pageContext
- request:表示⼀次请求,HttpServletRequest。
- response:表示⼀次响应,HttpServletResponse。
- pageContext:页面上下⽂,获取页面信息,PageContext。
- session:表示⼀次会话,保存用户信息,HttpSession。
- application:表示当前 Web 应用,全局对象,保存所有⽤户共享信息,ServletContext。
- confifig:当前 JSP 对应的 Servlet 的 ServletConfifig 对象,获取当前 Servlet 的信息。
- out:向浏览器输出数据,JspWriter。
- page:当前 JSP 对应的 Servlet 对象,Servlet。
- exception:表示 JSP 页面发⽣的异常,Exception。很少用到。
- 如何使用Retrofit获取服务器返回来的JSON字符串
- Python相对、绝对导入浅析
- spring profile 多环境配置管理
- 论linux下计划任务
- 20条Linux命令面试问答
- CentOS 6 使用 yum 安装MongoDB及服务器端配置
- java处理高并发高负载类网站的优化方法
- 每一个程序员需要了解的10个Linux命令
- php_curl.dll libssh2.dll 始终无法加载的原因 及解决办法
- ant安装、环境变量配置及验证
- MySQL性能优化的最佳20+条经验
- 剑指offer面试题7——用两个栈实现队列
- String类中你不知道的知识
- Hibernate 不同数据库的连接及SQL方言
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 同质化严重,Pandas和Numpy的若干小技巧
- 万字长文,助你深度遨游Spring循环依赖源码实现!
- shiny学习-2
- Android App秒开的奥秘
- Git总结-看这一篇就够了!
- 年际变化分析的好帮手-标准差椭圆
- Jsoup-爬取实战
- R海拾遗-shiny3
- Android开发者的Flutter入门(二)
- 听说你一读Spring源码就懵?我帮你把架子搭好了,你填就行!
- 机器学习感兴趣么?无监督的遥感图像分类感兴趣吗?来嘛!
- 仓库ERP管理系统(springboot)
- R海拾遗-shiny4
- Spring中眼见为虚的 @Configuration 配置类
- 微信6.6.7版本后图文分享无标题的分析