JSP语法学习笔记
1、修改JSP页面模版:
找到MyEclips安装目录,搜索“Jsp.vtl”,找到该文件修改编码,以及一些不需要用到的代码。
2、查找项目生成的Servlet文件路径:
查看当前项目父级目录搜索 .metadata -> .me_tcat ->work ->Catalina 即可在 子级目录找到servlet 翻译过后的代码。
3、JSP 页码全局异常页面配置,错误页码配置Page指令 IsErrorPage="true",则可获取异常信息
WebRoot/Web-INF/web.xml 配置
<error-page>
<!--exception-type 非必须配置节点-->
<exception-type>异常类型</exception-type>
<!--error-code 非必须配置节点,指定错误码跳转页码 如 404 ,500-->
<error-code>404</error-code>
<location>/error.jsp</location>
</error-page>
4、include 指令:
实用方法:<%@ include file="/WEB-INF/head.jsp" %> ,file 对应文件路径区分大小写.
注意: include 为静太包含, 动态包括使用方法为:
<% request.getRequestDispatcher("/WEB-INF/head.jsp").include(request, response); %>
得到的效果如.NET的 response.write 会打乱页码结构
5、JSP 常用标签
5.1、 forward 跳转页码:
如:
<jsp:forward page="/01.jsp">
<jsp:param value="01" name="user"/>
</jsp:forward>
5.2 、include : 等价于<%@ include file="***" %>
如:
<jsp:include page="/WEB-INF/head.jsp"></jsp:include>
6、JSP映射配置:
在/WEB-INF/web.xml文件中做如下配置:
<servlet>
<servlet-name>rhythmk</servlet-name>
<jsp-file>/01.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>rhythmk</servlet-name>
<url-pattern>/rhythmk.html</url-pattern>
</servlet-mapping>
请求:http://loaclhost:8080/test/rhythmk.html 等效于 http://loaclhost:8080/test/01.jsp
7、JSP 页码
<% JAVA代码块 %>
<%! 定义方法 %>
<%-- java 代码级注释 --%>
8、Page 指令(<%@ page %>):
session: 是否开启Session 默认开启.
pageEncoding:指定页码编码格式.
import:导入java包, 多个包可以逗号分隔 import="包1,包2"也可以
<% import="包1" %>
<% import="包2" %>
isThreadSafe: 是否线程安全,默认"true"
Servlet 跳转 jsp
@WebServlet("/Hello")
public class HelloServlet extends HttpServlet {
private static final long serialVersionUID = 1L; /**
* @see HttpServlet#HttpServlet()
*/
public HelloServlet() {
super();
// TODO Auto-generated constructor stub
} /**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setAttribute("name",request.getParameter("name"));
request.getRequestDispatcher("Hello.jsp").forward(request,response);
} }
最新文章
- 用github来展示你的前端页面吧
- Entity Framework Code First 中使用 Fluent API 笔记。
- mysql分区交换exchange partition
- 如何删除选中的checkbox
- 核心思想:早胜过一切,张小龙的Foxmail居然可以卖1200万
- java编码转化方案-备用
- hdu1573-X问题
- 分享一个好用的微信npmjs包
- Mysql之单表记录查询
- 微信小程序-获取经纬度
- LOJ #6509. 「雅礼集训 2018 Day7」C
- 从头开始学gradle【Gradle 构建基础】
- 最大化等比例测试演化Demo-传统方法
- Integer诡异特性
- 在html中引入css、js和jQuery的方法
- 环信集成 2---基于环信Demo3.0,实现单聊功能
- android实战开发02
- python实现进度条--主要用在上传下载文件
- Android小游戏应用---撕破美女衣服游戏
- Python 基础 Dict 和 Set 类型
热门文章
- Bzoj3837 [Pa2013]Filary(随机化)
- 04、Unity 5--全局光照技术
- [USACO 2017 Dec Gold] Tutorial
- [BZOJ 1058] 报表统计
- (1)CorePlot配置
- MySort的后续学习
- 查询续与ajax
- 93.数字三角形W(深搜)
- andriod inputbox
- 【maven】ecplise新建maven项目 报错Could not calculate build plan: Plugin org.apache.maven.plugins:maven-resources-plugin