JSP基础
什么是JSP?                                                                          
JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束
 JSP基础语法                                                                        
1.代码片段
代码片段可以包含java语句,变量,方法或表达式。其表达方式为 <% 代码 %>
2.表达式
表达式可以把执行的结果转换为String类型,插入到表达式出现的地方,与<% out.print(内容); %>功能相同
3.page指令
page指令用于定义页面的依赖属性,比如脚本语言,引入的Java包,,页面字符编码等.
4.include指令和include动作
include指令或动作可以被用来包含其他的文件(jsp,html,inc,txt)。在一个网站中,如果有多个网页有相同的类容(如页头,页脚),使用include指令或动作可以提高网页的创建效率。要将其他文件包含进来的JSP文件称为主文件,被包含的文件称为从文件。
例:
静态包含(include指令):<%@ include file="/include/header.jsp" %>
动态包含(include动作):<jsp:include page="/include/header.jsp"></jsp:include>
两者不同之处在于静态包含是在编译时就把两个文件合并,动态包含是在代码执行到include的时候才编译和执行另一个文件的内容到主文件。从代码运行效率考虑,通常能用静态包含就不用动态包含
request对象
request对象代表了浏览器的请求信息,主要用于接受浏览器通过HTTP协议传送到服务器的数据(包括头信息,系统信息,请求方式以及请求参数)。request对象的作用域为在本次请求期间有效。
request对象中 getParameter 和 getAttribute 方法的区别
1.getParameter 方法是用于客户端(浏览器)通过get或者post传递过来的参数;而getAttribute方法中的参数是从来自服务器的
2.前置只能返回字符串类型返回值,而后者则没有限制
重定向和转发的区别
重定向即调用response.sendRedirect(String path)方法
转发即调用request.getRequestDispatcher(String path).forward(request,response)方法
流程:
重定向流程:浏览器发送请求 --> 服务器返回url --> 浏览器请求响应的url --> url所指的服务器返回响应
转发流程 :浏览器发送请求 --> 服务器请求url所指的服务器 --> url所指的服务器响应原服务器 --> 原服务器再响应浏览器
图解:

参考文章:https://blog.csdn.net/liubin5620/article/details/79922692
区别:
1.转发不会改变地址而重定向会
2.转发后request对象还是同一个,而重定向则会刷新request对象
3.从流程可知,转发只做了以次访问请求,而重定向做了两次访问请求,因此转发更快捷
4.转发是服务器行为,重定向是客户端行为;
                    
                
                
            
        
浙公网安备 33010602011771号