Web组件跳转和JSP

web组件之间的跳转

1:请求转发(forward)
  • 语法: request对象.getRequestDispatcher(String path).forward(req,resp);
2:URL重定向(redirect)
  • 语法: response对象.sendRedriect(资源路径)

请求转发和URL重定向的区别

                            forward          redriect
地址改变                        不改变             改变
同一请求对象                      是               否
数据共享                         是                否
最终输出                      要跳转到的          要跳转到的
                            Servlet             Servlet
访问WEB-INF下资源                可以              不可以
跨域访问                        不可以             可以
如何选择请求转发和URL重定向
  • 如需跨域访问就选择URL重定向
Servlet中的四大作用域
                    类型                      作用域范围
pageContext         pageContext             当前页面(jsp)
request             HttpRequset             每个请求
session             HttpSession             每个会话,浏览器
application         ServletContext          每个Servlet应用,服务器
ServletContext接口
  • ServletContext:表示当前的应用
  • 获取ServletContext对象

    方式一: super.getServletContext();
    方式二: req.getsession().getServletContext()
            req.getServletContext()
    
  • 常用方法

    String getContextPath()                 获取上下文路径
    String getInitParameter(String name)    获取全局初始化参数
    String getRealPath(String path)         获取指定文件的绝对路径
    

JSP

  • JSP:Java Server Page(java的服务网页,动态网页)
  • Java的另一个动态网页技术Servlet

  • 使用Servlet来开发动态网页

     java代码为主+html为辅
     网页开发成本大,维护性很低
    
  • 使用JSP来开发动态网页

    • java代码为辅,html为主

      1:注释<%--注释--%>
      2:表达式<%=表达式%>
      3:java代码<%语句1;语句2;%>
      4:声明<%!java代码%>
      
JSP的三大指令
 <%@ 指令名称 属性名=属性值 属性名=属性值...%>
 page (定义JSP页面的各种属性)
            language指定jsp使用的脚本语言只支持java
            extends表示jsp对应的servlet类父类不要修改
            import导入jsp中的类或包
            session 是否可以使用session
            buffer 使用缓冲输出流,默认大小为8kb
            errorPage指定出现错误之后要走跳转的页面
            isErrorPage指示当前页面是否产生异常对象,输出具体的异常信息
            contentType指定当前页面得MIME类型(文件内容了类型)
            pageEncoding采用的编码方式
 include (静态包含,开发中能用静态不用动态)
            静态包含:<%@ include file="文件名"%>  file表示指定要包含的文件,如果使用"/"则表示使用绝对路径
            动态包含:使用jsp的动作元素<jsp:include page=""/>
 taglib(引入外部标签)
            作用:引入外部标签
            语法<%@taglib uri="标签名称" prefix="名称的前缀"%>

 jsp指令最简单的方式<%@ page pageEncoding="UTF-8"%>
JSP的九大内置对象和四大作用域对象
  • 九大内置对象

    pageContext:-----------------------表示当前JSP页面的作用域
    request:---------------------------每一个请求
    session:---------------------------每一个会话
    application:-----------------------web应用对象
    response:--------------------------响应对象
    config:----------------------------Servlet的配置信息
    out:-------------------------------输出流对象
    page:------------------------------当前JSP翻译成Servlet对象
    exeception:------------------------异常对象
    
静态包含和动态包含的区别
  • 结果相同,页面的包含时期不同

     静态包含:在jsp被翻译就合并
     动态包含:在运行时期合并
    
  • 静态包含和动态包含的选择

    被包含的是静态文件就选择静态包含
    被包含的是动态文件就选择动态包含
    
  • 被包含的文件通常不会单独访问,一般使用(.jspf)作为后缀
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值