JSP
来源:互联网 发布:ssh tunnel端口转发 编辑:程序博客网 时间:2024/04/28 14:50
为什么要使用JSP组件
因为Servlet生成动态页面比较繁琐,而使用JSP生成动态页面则比较便捷,因为其中的静态内容可以用HTML生成;实际应用中,Servlet是不会用来生成动态页面的,而是会用来接收来自JSP的请求,处理请求,然后调跳转到JSP页面把结果显示给客户端看
JSP与Servlet的关系?===>>JSP会被翻译成Servlet(JSP本质上就是Servlet)
Jsp的执行流程是什么?
JSP的执行过程:翻译-编译-实例化-提供服务翻译 jsp文件->Java文件编译 java->class实例化 创建servlet服务 调用_jspService(request,esponse)方法
JSP的本质就是Servlet,不过是服务器将JSP进行了翻译和编译;可以说,JSP也是一个Java类;
页面元素
- 脚本元素
格式为==》 <%java代码%> eg:<%System.out.println("这是脚本元素"); %> 服务器翻译脚本元素时,将把其中Java代码直接翻译到_jspService方法中,如果语法错误,将在浏览器中提示错误 _jspservice(HttpServletRequest,HttpServletResponse)
- 表达式元素
格式为==》 <%=java代码%> eg:<%= request.getLocalAddr()%> _jspservice(HttpServletRequest,HttpServletResponse) 使用out.print()输出
- 模板元素
模板元素指JSP中静态HTML或者XML内容
- 注释元素
格式为<%--JSP注释--%> JSP的注释只有在源代码中可见,翻译时已经忽略;```格式为<!--HTML注释--> HTML注释翻译时_jspService 翻译到java代码中格式为//java注释 _jspservice 使用out.write()输出
- 声明元素
格式为==》 <%! 声明语句%> eg: <%! private String name="耶稣"; public void say(){ System.out.println(name+"你好帅!!!!!!"); }%>声明元素被翻译到Java类中,而不是_jspService方法中;声明元素不能用内置对象
九大内置对象
- 内置对象指的是服务器已经声明并赋值的对象,可以直接使用;
request/response/page/pagecontext/application/exception/session/config/out对应的具体类型HttpServletRequest/HttpServletResponse/this/pageContext/ServletContext/Throwable/HttpSession/ServletConfig/JSPWriter
跳转两种方式
- 响应重定向
- response.sendRedirect("b.jsp") - 两次请求,不能得到原始的请求参数- url会改变- 可以转发给外部地址
- 请求转发
- request.getRequestDispatcher("b.jsp").forward(request,response);- 一次请求,能得到原始的请求参数- url不会改变- 不可以转发给外部地址
请求属性的使用
- 传值,存在请求里- servlet/jsp->jsp/servlet- request.setAttribute(String,Object)- Object request.getAttribute(String)- request.removeAttribute(String)
阅读全文
0 0
- JSP
- JSP
- jsp
- JSP
- JSP
- jsp
- Jsp
- JSP
- jsp
- jsp
- jsp
- JSP
- JSP
- jsp
- jsp
- JSP
- jsp
- jsp
- 学习angular
- docker+mysql主从复制
- c水题,但是坑很细!很深!看了百度才理解的
- H
- OpenCV3.1.0在Ubuntu上的安装方法
- JSP
- 港科VINS-Mono系统学习(5) 闭环检测
- DB2中,INSERT 语句等待行级别的U锁的两种情景
- 实习第五天
- 软件工程7-软件测试
- [日常训练] 太空飞船
- 二分模板
- Codeforces Round #383 (Div. 1) 741A Arpa's loud Owf and Mehrdad's evil plan
- Java中字符串的大写字母、小写字母等字符个数的统计(三种方法)