zoukankan      html  css  js  c++  java
  • Rhythmk 一步一步学 JAVA(6): 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);
        }
    
        
    
    }


  • 相关阅读:
    python自动化测试-D9-学习笔记之二(线程锁)
    python习题:封装好的测试报告(report.py)
    python自动化测试-D9-学习笔记之二(守护线程)
    python自动化测试-D9-学习笔记之二(多线程)
    python自动化测试-D9-学习笔记之一(线程池)
    python自动化测试-D9-学习笔记之一(unittest模块)
    python习题:写一个备份数据库的脚本
    python习题:【多线程】有100个数据,启动5个线程,每个线程分20个数据,怎么把这20个数据分别传给每个线程。
    自然语言处理NLTK之入门
    python画一颗拳头大的💗
  • 原文地址:https://www.cnblogs.com/rhythmK/p/3296700.html
Copyright © 2011-2022 走看看