jsp 环境搭建与介绍

jsp 环境搭建与介绍

1、Mac下如何安装JDK
1.1.访问Oracle官网 http://www.oracle.com
1.2.点击首页下面的java列表下面的 Download Java for Developers 下载SDK
1.3.打开Finder,可以在路径中找到安装好的jdk 1.8.0_40.jdk:资源库-->java-->JavaVirtualMachines-->jdk
1.4.其中Contents下的Home文件夹,是该JDK的根目录。
1.5.需要配置jdk的环境变量 http://www.cnblogs.com/quickcodes/p/5398709.html
2、下载tomcat软件在本地搭建服务器
2.1.下载链接 http://tomcat.apache.org/
2.2.配置Tomcat http://www.cnblogs.com/james-lee/p/5964238.html
2.3.启动Tomcat服务器%CATALINA_HOME%\bin\startup.bat
或者
C:\apache-tomcat-5.5.29\bin\startup.bat
3、Mac下安装及配置Eclipse
3.1.下载地址: http://www.eclipse.org/downloads/
注意:下载Java EE版的Eclipse
3.2.安装成功打开Eclipse 需要做一下配置
3.3.打开Eclipse的偏好设置 从左侧栏选择java下面的Installed JREs,然后点击Add按钮,我们要为Eclipse配置JDK
具体参考:http://www.cnblogs.com/quickcodes/p/5399385.html
现在我们已经完成了Eclipse的配置!

4、JSP简介
JSP:Java Server Pages。在传统的HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页。显示,JSP的执行过程共分为三步:

(1).翻译阶段,Web服务器会将接收到的JSP文件翻译成Java文件。

(2).编译阶段,Web容器将Java文件编译成字节码文件(.class文件)

(3).执行阶段,Web容器执行字节码文件将生成的结果返回给客户端进行显示。

4.1.JSP对象常见的四个作用域:

(1)page作用域:只在当前页面有效,一旦离开当前页面,则在该范围内创建的对象将无法访问。

(2)request作用域:在同一个请求范围内,可以访问该范围内创建的对象,一旦请求失败,则创建的对象也随之失效。

(3)session作用域:在会话没有失效或者销毁前,都可以访问该范围内的对象。

(4)application作用域:在整个Web应用服务器没有停止前,都可以从application中进行数据存取。

4.2. JSP语法(脚本、指令、动作)

4.2.1.脚本元素

(1).表达式:<%=  xxx %>是对数据的显示,系统将其对作为一个值进行计算并显示。

(2).Scriptlet:<% xxx %>就是在JSP页面嵌入 java脚本。

(3).声明:<%!  xxx %>就是在JSP中声明 java 的方法和 变量 (用于定义JSP代表Servlet的成员变量和方法名)。

4.2.2.指令:用于设置JSP的属性

(1).page: <%@ page contentType="text/html;charset=GBK" %>

属性:

language定义要使用的脚本语言,如果在将来的JSP容器支持 多种语言可以使用它"java"
import定义以","分割的类或者包名的列表,就像通常在java代码中使用的import语句那样
pageEncoding指定JSP文件本身的字符集编码GBK
contentType定义JSP字符编码方法和JSP页面响应的MIME类型cha'tset=iso-8859-1
isErrorPage表示当前页面作为 错误页面true ,false
errorPage定义处理异常的JSP页面error_url
isELIgnored设置是否忽略JSP页面中的EL表达式的执行"fasle"
session指定这个页面是否参与一个HTTP会话"true"

(2).include:<%@ include file="/head.jsp" %>  用于在运行时将html 或者 JSP 嵌入到另一个 JSP 页面。

(3).taglib: <%@ taglib uri="http://java.sun.com/jsp/jstl/core"  prefix="c"%>  在JSP页面中,将标签描述符文件引用到该页面中,并且 设置前缀,利用前缀 使用标签文件中的标签 。

4.2.3动作:在该JSP被翻译成Servlet源代码的过程中,当容器遇到标准动作元素时,就调用与之对应的Servlet的方法来替代它,所有标准动作元素的前面都有一个JSP前缀作为标记。例如:<jsp:标签名 ...属性.../>

JSP的标准动作的分类 6组:

(1).jsp中使用大JavaBean的标准动作<jsp:userBean>定义一个使用JavaBean,实例,ID属性定义实例名称,<jsp:getProperty> 从一个JavaBean中获取一个属性值,并将其添加到响应中;<jsp:setProperty> 设置一个JavaBean的属性

(2).在jsp中包含其他jsp文件或者web资源的标准动作,<jsp:include> 在请求处理阶段包含来之一个Servlet或者jsp文件的响应,注意和include指令不同

(3).将到达的请求 转发到另一个jsp页面或者web资源,以便进行下一步的操作的标准动作,<jsp:forward>

(4).在其他标准动作中间指定参数的标准动作,<jsp:param>对使用<jsp:include> 或者 <jsp:forward>传递到另一个Servlet和jsp页面请求添加一个传递参数

(5).在客户端的页面嵌入java对象 (例如 applet,是运行在客户端的小java程序)的标准动作  <jsp:plugin>根据浏览器类型为java插件生成 Object或者 Embed标记 <jsp:params><jsp:fallback>

(6).仅仅用户标记文件的标准动作   <jsp:attribute>  <jsp:body> <jsp:invoke>  <jsp:dobody> <jsp:element> <jsp:text> <jsp:output>

4.3.JSP的内置对象(9大内置对象)

(1).request对象:客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是 HttpServletRequest类的实例。

(2).response对象: response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse类的实例。

(3).session对象:session对象指的是客户端与服务器的一次会话,从客户端连接到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。它是HttpSession类的实例。

(4).out对象:out对象是JspWriter类的实例,是向客户端输出内容常用的对象。

(5).page对象:page对象就是指向当前JSP页面本身,有点象类中的this指针,它是java.lang.Object类的实例。

(6).application对象:application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务 器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。它是ServletContext类的实例。

(7).exception对象:exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个 JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。他实际上是java.lang.Throwable的对象。

(8).pageContext对象:pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者,它的本类名也叫pageContext。

(9).config对象:config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)。

4.4.JSP页面的静态包含和动态包含的区别:

4.4.1.静态包含:<@ include file="URL"> 静态包含是指将被包含的文件插入JSP页面中,简单的说是将另一个文件中的代码复制到一个JSP页面中,被包含的文件代码将会在JSP中执行。先将页面包含,后执行页面代码,即将一个页面的代码复制到另一个页面中。

4.4.2.动态包含: 先执行页面代码,后将页面包含,即将一个页面的运行结果包含到另一个页面中。当包含静态页面时效果等同于静态包含。

5、JSP结构

网络服务器需要一个JSP引擎,也就是一个容器来处理JSP页面。容器负责截获对JSP页面的请求。本教程使用内嵌JSP容器的Apache来支持JSP开发。
JSP容器与Web服务器协同合作,为JSP的正常运行提供必要的运行环境和其他服务,并且能够正确识别专属于JSP网页的特殊元素。
jsp-arch

就像其他普通的网页一样,您的浏览器发送一个HTTP请求给服务器。
Web服务器识别出这是一个对JSP网页的请求,并且将该请求传递给JSP引擎。通过使用URL或者.jsp文件来完成。
JSP引擎从磁盘中载入JSP文件,然后将它们转化为servlet。这种转化只是简单地将所有模板文本改用println()语句,并且将所有的JSP元素转化成Java代码。
JSP引擎将servlet编译成可执行类,并且将原始请求传递给servlet引擎。
Web服务器的某组件将会调用servlet引擎,然后载入并执行servlet类。在执行过程中,servlet产生HTML格式的输出并将其内嵌于HTTP response中上交给Web服务器。
Web服务器以静态HTML网页的形式将HTTP response返回到您的浏览器中。
最终,Web浏览器处理HTTP response中动态产生的HTML网页,就好像在处理静态网页一样。

在网上找到一些学习JSP的教程有兴趣的的可以学习一下
1. https://chuanke.baidu.com/course/72351176527446016_JSP_salenumber_desc___2.html?statistics_channel_id=1699&statistics_uid=17?statistics_channel_id=1699&statistics_uid=13
2. http://www.yiibai.com/jsp/jsp_quick_guide.html

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值