JSP初步
来源:互联网 发布:雅典奥运 女排 知乎 编辑:程序博客网 时间:2024/06/16 07:33
JSP
Java Server Pages java服务页面
和Servlet技术一样,都是SUN公司定义的一种用于开发动态web页面(资源)的技术写JSP就像写html,但JSP技术允许在页面中编写java代码,并且允许开发人员在页面中获取request,response等web开发常用对象,实现与浏览器的交互
JSP调用和运行原理
jsp在后台会被翻译成servlet运行
JSP最佳实践
在长期的软件实践中,人们逐渐把servlet作为web应用中的控制器组件来使用,把JSP技术作为数据显示模版来使用其原因为:程序的数据通常要美化后再输出
1.让JSP既用java代码产生动态数据又做美化,会导致页面难以维护
2.让servlet既产生数据,又在里面嵌套html代码美化数据,同样会导致程序可读性差难以维护
3.最好的办法让它们各自负责各自的,servlet只负责响应请求产生数据并把数据通过转发技术带给JSP,数据的显示让JSP来做
JSP语法
JSP模版元素 JSP页面中的html内容 定义了网页的基本骨架(页面的结构和外观)
JSP表达式 expression 用于将程序数据输出到客户端 <%= 变量或表达式 %>翻译:转成字符串用out.print(...)传输数据给客户端
变量或表达式后面不加分号(;)
JSP脚本片段 用于在JSP页面中编写多行java代码 <% 多行代码 %>
翻译时脚本片段中的java代码会原封不动的放到servlet的jspService方法中
所以只能出现java代码,不能出现其他模版元素
且java代码必须严格遵循java语法(要有分号)
脚本片段之间可以嵌入其他内容
多个脚本片段可以相互访问(像放在同一个<% %>中)
单个脚本片段java语句可以不完整(多个组合后必须完整)
JSP声明 <%! java代码 %>翻译到jspService方法外面
用于定义静态代码块,成员变量,方法
多个静态代码块,成员变量,方法可以定义在一个或多个JSP声明中
不能写隐式对象,隐式对象作用范围仅限jspService方法中
JSP注释 <%-- 注释信息 --%> 翻译时会忽略被注释的内容
html注释会打给浏览器(垃圾数据)
JSP指令 为JSP引擎(类似tomcat)设计 不产生可见输出
告诉浏览器如何处理JSP页面中的其余部分
<%@ 指令 属性名="值" %>
多指令可以写一起也可以分开写
JSP2.0规范中定义了三个指令
page 定义JSP页面的各种属性 作用整个JSP页面 最好放在起始位置
language语言
extends继承
import导包(自动导入java.lang.*,javax.servlet.*,javax.servlet.jsp.*,javax.servlet.http.*)
session="true/false"
buffer缓冲
autoFlush是否自动刷新
isThreadSafe线程是否安全
info
errorPage错误跳转页面 必须使用相对路径 "/"开头表示当前WEB应用 也可以在web.xml中用<error-page>为全局配置错误处理页面,可以为不同错误配置不同页面,jsp中的errorPage优先级高
isErrorPage="true/false" true错误页面会传递异常对象exception给后台记录
contentType
pageEncoding
isELIgnored
page指令解决JSP中文乱码
乱码出现:输出响应正文 读取浏览器传递的参数信息 JSP页面翻译成Servlet源文件(翻译用UTF-8 JSP源文件编写默认ISO8859-1)
解决方法: contentType通知浏览器用什么码表打开翻译后的JSP pageEncoding通知服务器用什么码表翻译JSP
include 用于引入其他JSP页面 静态引入 编译时包含 所有JSP翻译成一个Servlet
<%@include file="/xxx/aaa.jsp"%>做包含 性能好推荐动态包含
<% request.getRequestDispatcher("/xxx/aaa.jsp").include(request,response)%>
有多个servlet 运行时包含 展示时合并
taglib 用于在JSP页面导入标签库
JSP标签
JSP内置对象
如何查找JSP页面中的错误
阅读全文
1 0
- JSP初步
- JSP初步
- jsp初步
- jsp初步
- JSP初步
- JSP初步
- 2011.10.10-Jsp初步
- JSP初步入门
- JSP(初步)
- JSP初步总结
- Jsp基础初步V1
- JSP初步理解
- Tomcat与Jsp初步
- jsp1-jsp初步
- JSP初步认识
- JSP初步(一)
- 初步编写JSP的心得
- JSP网站架构初步理解
- 如何将ffplay移植到vs2015
- Python 容器(Collections)
- Django--虚拟环境及orm基础
- python JSON ValueError: Expecting property name: line 1 column 2 (char 1)
- 【mui】轮播slide
- JSP初步
- 1.6 协议版本
- java 保存换行到数据库并页面显示是保留换行样式
- 优秀工程师0-UITabBarController
- springboot学习笔记(一) HelloWorld
- 网络文件共享--(一)FTP
- XMLFactory
- Android Studio导入第三方类库的方法
- EXCEL批量导入数据MVC