Jsp,Servlet,JavaBean

什么是JSP
  java服务器页面(Java Server Pages,JSP)技术是指:在HTML中嵌入Java脚本语言,然后由应用服务器中的JSP引擎来编译和执行,之后再将生成的整个页面返回给客户端.
Web容器处理JSP文件请求需要经过三个阶段:
  1.翻译阶段..JSP文件会被Web容器中的Jsp引擎转换成Java源码(.java)
  2.编译阶段..Java源码会被编译成可执行的字节码(.class)
  3.执行阶段..容器接受了客户端的请求后,执行编译成字节码的Jsp文件.处理完请求后,容器把生成的页面反馈给客房端进行显示.
Web容器(如Tomcat)提供JSP引擎,负责JSP文件的执行,提拱JSP的运行时环境
(JSP需要Tomcat的支持).
使用动态网页:不仅可以动态输出网页内容、同用户进行交互,而且可以对网页中内容进行在线更新.
HTTP协议是无状态协议:
当浏览器向服务器发送一个请求后,服务器对该请求做出响应,当响应结束后,就断开连接,彼此并不保存连接信息.(意思:不能判断访问网页的是否.是同一用户)
什么是会话:
  一个会话就是用户通过浏览器与服务器之间进行的一次通话,它包含浏览器与服务器之间的多次请求、响应过程。
会话是Web容器创建的,而不是由程序员编码创建的。当客户端浏览器第一次访问服务器的时候,服务器为客户创建一个session.
结束session有以下3种方式:
  1.关闭浏览器
  2.两次访问的间隔时间大于非活动时间
  3.调用HttpSession的invalidate()方法.
JSP的9个内置对象:request、response、pageContext、session、application、
                out 、config、page、exception

什么是Servlet
  Servlet是一个Java程序,是在服务器端运行以处理客户端请求并做出响应的程序
Servlet的作用:
  实现Web上的数据传递,处理客户端的请求并做出响应.
JSP和Servlet的关系:
  JSP在运行前首先将编译为一个Servlet.由此可见Servlet是JSP的基础.
JavaEE的体系结构:表示层,中间层,数据层.
三层结构的好处如下:
  1。一个组件的更改不会影响支其他两个组件.
  2。同于表示层和数据层相互独立,因而可以方便地扩充表示层,使系统具有良好的可扩展性.
  3。代码重复减少,在3个组件之间尽可能地共享代码.
  4。良好的分工与协作。这将使不同的小组能够独立地开发应用程序的不同部分,并充分发挥各自的长处与优势.
实现序列化是:为了把对象保存在文件中或是在网络上远程操作些对象.
Servlet的生命周期:
1。加载和实例化--Servlet容器创建Servlet的实例
2。初始化--该容器调用init()方法.被初始化后,就处于能响应请求的就绪状态
3。服务--如果请求Servlet,则容器调用service()方法.再判断请求方式(GET,POST)
4。销毁--销毁实例化之前调用destroy()方法
.所有客户端向Serlvet发送请求时,最先执行service()方法.不是get,或post...
.(2。和4。)只执行一次,(3。)可执行多次.
.Servlet的实例是由Servlet容器创建的,所以实例的销毁也是由容器来完成的.
.Destroy()方法指明哪些资源是可以被系统回收,而不是由destroy()方法直接进行回收
实现页面的跳转有两种方式:
  转发和重定向.转发可以以request的作用域进行数据的传递;重定向将丢失request作用域内的数据.
基于Servlet的MVC设计模式
什么是设计模式:
  设计模式是一套被反复使用、成功的代码设计经验的总结。模式必须是典型问题(不是个别问题)的解决方案。
MVC是一种流行的软件设计模式。它把系统分为以下3个模块:
(1)模型(Model):对应的组件是--JavaBean(Java)类
(2)视图 (View): 对应的组件是--JSP和HTML文件.
(3)控制器(Controller): 对应的组件是--Serlvet.
作用:提高了应用(程序)系统的:(可维护,可护展,可移植,以及组件的可重用)性.

什么是JavaBean
  是java中开发的可以跨平台的重用组件,它是一种组件体系结构.
JavaBean实际上就是一个java类,这个类可以重用.
从javaBean的功能上可以分两类:封装数据,封装业务.
JavaBean一般情况下要满足以下要求:
  是一个公共类,并提拱无参的公有的构造方法
  属性私有
  具有公有的访问属性的getter和setter方法
jsp标准动作中
 
使用<jsp:>作为前缀; 属性区分大小写; 属性中的值必须置于双引号内
常用的JSP标准动作有以下4种
(1). <jsp:useBean id="BeanName" class="packpage.class" scope="page|request|session|application" />
(2). <jsp:setProperty  name="对应useBean中的id" property="类的属性" param="form表单元素名" />
(3). <jsp:getProperty name="对应useBean中的id" property="类的属性" />
(4). <jsp:forward page="url" />
5.
<jsp:include page="url"  flush="true"/> 包含传值 <jsp:param name="username ",value="janely " />
JSTL标准标签库:
1. 核心标签库 core
  <%@ taglib uri=”http://java.sun.com/jsp/jstl/core”  prefix=”c” %>
2. SQL标签库 DataBase access
3  XML标签库xml processsing
4. 函数标签库
5. Il8N格式化标签库 Il8N capable formatting

核心标签
1.通用标签:set, remove ,out
2.条件标签:if
3.迭代标签:forEach, forTokens

<c:set var=”name” value=”$ {param.isbn}” scope=”reqeust” />
<c:remove var=”name” scope=””/>
<c:out value=”value” default=” ” escapeXml=”false”/>
<c:if test=”condition” val=”name” scope=”page” ></c:if>

<c:forEach items=”collection” var=”name” begin=”1 ” end=”5 ” step=”2” varStatus=”status “>
</c:forEach>

<c:forTokens items="1*2*3*4*5*6*7" delims="*" begin="1" end="3" var="n" varStatus="s">
<c:out value="$ {n}" />的四种属性:<br>

  所在位置,即索引:<c:out value="$ {s.index}" /><br>

  总共已迭代的次数:<c:out value="$ {s.count}" /><br>

  是否为第一个位置:<c:out value="$ {s.first}" /><br>

  是否为最后一个位置:<c:out value="$ {s.last}" /><br>
</c:forTokens>

<c:choose>
<c:when test=”{条件判断}”>
</c:when>
<c:otherwise>
其它条件
</c:otherwise>
</c:choose>

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值