jsp开发技术

jsp开发技术一、为什么说JSP也是动态web开发的一项技术呢?这是因为写JSP虽然像是在写HTML,但是JSP允许在页面中嵌套Java代码,或者利用某个标签表示Java代码(EL与jstl)。这就使得我们在写JS

大家好,又见面了,我是你们的朋友全栈君。

一、为什么说JSP也是动态web开发的一项技术呢?这是因为写JSP虽然像是在写HTML,但是JSP允许在页面中嵌套Java代码,或者利用某个标签表示Java代码(EL与jstl)。这就使得我们在写JSP时能够获取请求对象Request和响应对象Response等这样的web开发常用对象,实现与浏览器的交互。

jsp在第一次被访问时会被Web容器翻译成servlet,在执行

过程:

第一次访问—->helloServlet.jsp—->helloServlet_jsp.java—->编译运行(实际运行jsp.java)最终运行class文件;

PS:被翻译后的servlet在Tomcat的work目录中可以找到;

二、page三大指令;

    1)   page指令

  2)   include指令

  3)   taglib指令

三、jsp 九大隐式对象

名称                                         类型                                                             描述
out                                         javax.servlet.jsp.JspWriter                                  用于页面输出
request                                     javax.servlet.http.HttpServletRequest                      得到用户请求信息,
response                                    javax.servlet.http.HttpServletResponse                    服务器向客户端的回应信息
config                                      javax.servlet.ServletConfig                               服务器配置,可以取得初始化参数
session                                     javax.servlet.http.HttpSession                            用来保存用户的信息
application                                 javax.servlet.ServletContext                              所有用户的共享信息
page                                        java.lang.Object                                          指当前页面转换后的Servlet类的实例(在普通类中的this)
pageContext                                 javax.servlet.jsp.PageContext                             JSP的页面容器
exception                                   java.lang.Throwable                                       表示JSP页面所发生的异常,在错误页中才起作用

 四、jsp有四大作用域 作用分别如下:

pageContext域:当前jsp页面范围

request域:一次请求

session域:一次会话

application域:整个web应用(相当于ServletContext这个域);

五、

1)pageContext是一个域对象

setAttribute(String name,Object obj)

getAttribute(String name)

removeAttrbute(String name)

 

pageContext可以向指定的其他域中存取数据

setAttribute(String name,Object obj,int scope)

getAttribute(String name,int scope)

removeAttrbute(String name,int scope)

findAttribute(String name)

—依次从pageContext域,request域,session域,application域中获取属性,在某个域中获取后将不在向后寻找;

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
    <% 
        pageContext.setAttribute("username", "小红帽");
        pageContext.setAttribute("username", "大红帽",PageContext.REQUEST_SCOPE);
        pageContext.setAttribute("username", "小蓝帽",PageContext.SESSION_SCOPE);
        pageContext.setAttribute("username", "小黄帽",PageContext.APPLICATION_SCOPE);
    %>
    <%=pageContext.findAttribute("username") %>
</body>
</html>

<span role="heading" aria-level="2">jsp开发技术

 

 这个地方只打印出来了小红帽  这就是前面所说的 在某个域中获取后将不在向后寻找;因此在取名key值的时候 名字最好不要相同;

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155375.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Ubuntu20.04下安装QQ[通俗易懂]

    https://blog.csdn.net/dulingwen/article/details/89848661https://blog.csdn.net/qq_36428171/article/details/81209475https://github.com/wszqkzqk/deepin-wine-ubuntuhttps://www.lulinux.com/archives/1319…

    2022年4月16日
  • 对L1正则化和L2正则化的理解[通俗易懂]

    一、奥卡姆剃刀(Occam’srazor)原理:     在所有可能选择的模型中,我们应选择能够很好的解释数据,并且十分简单的模型。从贝叶斯的角度来看,正则项对应于模型的先验概率。可以假设复杂模型有较小的先验概率,简单模型有较大的先验概率。  二、正则化项     2.1、什么是正则化?   正则化是结构风险最小化策略的实现,在经验风险上加一个正则项或罚项,正则项一共有两种L1…

    2022年4月11日
  • JLINK的SWD接口调试器制作

    JLINK的SWD接口调试器制作                 SWD接口调试器制作  将1和2号脚连接在一起,连接到VCC上。其他引脚按照以上顺序排列即可。

    2022年5月22日
  • pycharm字体大小设置[通俗易懂]

    pycharm字体大小设置[通俗易懂]python工具pycharm字体设置

    2022年8月25日
  • react-native-modalbox 使用

    react-native-modalbox 使用

    2022年3月7日
  • native2ascii用法

    native2ascii用法背景:在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,比如常见的validator验证用的消息资源(properties)文件就需要进行Unicode重新编码。原因是java默认的编码方式为Unicode,而我们的计算机系统编码常常是GBK等编码。需要将系统的编码转换为java正确识别的编码问题就解决了。 1、native2ascii简介:native2ascii是s…

    2022年9月12日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号