JSP:Java Server Page(Java的服务网页),也是Java的动态网页.
 JSP的本质:其实就是一个Servlet.
 JSP---->翻译成Servlet类---->编译成字节码文件--->解释执行了.
 
1.jsp的基本语法:
1、JSP的注释:
   作用:注释Java脚本代码
   语法:<%--这是注释--%>,JSP的注释不会被翻译到Servlet代码中去.
2、JSP的Java脚本表达式:
   作用:输出数据到页面上
   语法:<%=表达式%>(实际上就是调用输出流打印到页面上) out.print(表达式);
3、JSP中的Java脚本片段:(实际开发中,应做到JSP中不能出现一行Java脚本片段)
   作用:书写Java代码逻辑
 
2.三大指令:
/*page*/
作用:定义JSP页面的各种属性
属性:
   1、language:指示JSP页面中使用脚本语言。默认值java,目前只支持java。
   2、extends:指示JSP对应的Servlet类的父类。不要修改。
   3、*import:导入JSP中的Java脚本使用到的类或包。(如同Java中的import语句)
注意
 1、一个import属性可以导入多个包,用逗号分隔。
 2、*sessioin:指示JSP页面是否创建HttpSession对象。默认值是true
 3、*buffer:指示JSP用的输出流的缓存大小.默认值是8Kb。
 4、autoFlush:自动刷新输出流的缓存。
 5、isThreadSafe:指示页面是否是线程安全的(过时的)。默认是true。
 6、true:不安全的。
 7、false:安全的。指示JSP对应的Servlet实现SingleThreadModel接口。
 8、*errorPage:指示当前页面出错后转向(转发)的页面。
 9、目标页面如果以"/"(当前应用)就是绝对路径。
 
配置全局错误页面提示
访问当前JSP的时候,出现错误(404找不到/500代码有问题),我们可以专门提供一个错误页面. 出错之后,就跳转到错误页面,显示错误信息.
  1. web.xml
  2. <error-page>
  3. <exception-type>java.lang.Exception</exception-type> <location>/error.jsp</location>
  4. </error-page>
  5. <error-page>
  6. <error-code>404</error-code>
  7. <location>/404.jsp</location>
  8. </error-page>
 
 
/*include*/
作用:包含其他的组件。
语法:<%@include file=""%>file指定要包含的目标组件。路径如果以"/"(当前应用)就是绝对路径。
原理:把目标组件的内容加到源组件中,输出结果。
动态包含:采用动作元素:<jsp:include page=""/>路径如果以"/"(当前应用)就是绝对路径。
 
/*taglib*/
作用:引入外部的标签
语法:<%@taglib uri="标签名称空间" prefix="前缀"%>
例:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
 
3.九大内置对象
 
4.servlet+jsp综合
 
5.jsp代码解说
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  4. <!DOCTYPE html>
  5. <html>
  6. <head>
  7. <meta charset="UTF-8">
  8. <title>Insert title here</title>
  9. </head>
  10. <body>
  11. <%= pageContext.findAttribute("test")!=null ? pageContext.findAttribute("test") : "111" %>
  12. ${test }
  13. <%-- ${pageContext.getRequest().getContextPath()} --%>
  14. <!-- 通过实体.属性 -->
  15. <%-- ${user.username }
  16. ${user.password } --%>
  17. <!--
  18. jsti常用标签:
  19. c:forEach:
  20. items:要循环的集合/列表
  21. var:定义集合元素的类型
  22. begin:从第几项开始循环
  23. end:循环到第几项结束
  24. step:循环的步长
  25. varStatus:关于下标的对象
  26. index:下标
  27. count:成员总数
  28. first:判断是否是第一个元素(boolean)
  29. last:最后一个元素(boolean)
  30. c:set:
  31. var:定义变量名称
  32. value:变量的值
  33. scope:变量的作用域 默认为:page
  34. c:remove:
  35. var:需要移除的变量名
  36. scope:作用域
  37. c:out:
  38. value:输出的值(相当于<%-- <%=%> --%>)
  39. c:if
  40. -->
  41. <table border="1">
  42. <c:forEach items="${users }" var="user" varStatus="item">
  43. <c:set var="setDemo" value="${item.index }"></c:set>
  44. <c:remove var="setDemo"/>
  45. <%-- <td> ${testDemo }</td> --%>
  46. <c:if test="${item.index > 10 }" var="testDemo">
  47. <tr>
  48. <td> <c:out value="1"></c:out></td>
  49. <td> ${user.username }</td>
  50. <td> ${user.password }</td>
  51. </tr>
  52. </c:if>
  53. <c:choose>
  54. <c:when test="${item.index > 10 }">
  55. <c:out value="大于10"></c:out>
  56. </c:when>
  57. <c:otherwise>
  58. <c:out value="小于等于10"></c:out>
  59. </c:otherwise>
  60. </c:choose>
  61. </c:forEach>
  62. </table>
  63. </body>
  64. </html>
6.相关的导包:
 
6.jsp作用域范围从大到小:
pageContext-->request-->session-->application
什么叫做作用域:对象的声明周期和可访问性

javabean

1.JavaBean 是一种JAVA语言写成的可重用组件(类)。(JavaBean就是特殊的类) 设计JavaBean必须遵循的规范: 1、把JavaBean类设计为public的.

2、必须具有公共的无参数构造器,(方便反射创建对象).

3、一般的,JavaBean的字段是私有的,外界不能访问,我们得提供让外界访问字段的公共方法. (getter/setter:必须遵循一定的规则)--->属性.

2.JavaBean的分类:

1、有用户界面(UI,User Interface)的JavaBean(Panel,Window,Button等);

2、没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的JavaBean。 比如:dao组件,domain,service等等.

3:JavaBean具有的成员:

1、事件(event),存在于有界面的JavaBean中.(点击事件).

2、方法(method):

3、字段/成员变量 (属性property):

简单来说:当一个Pojo可序列化,有一个无参的构造函数,使用getter和setter方法来访问属性时,他就是一个JavaBean。

Introspector:内省机制核心类

反射机制: 获取字节码对象,创建该字节码对应类的对象以及调用方法.

内省机制: 操作avaBean中的成员(事件,方法,属性):获取属性/设值属性.

4.JavaBean和Map的转换操作

要消除JSP中的Java代码,咱们就得使用Java的标签库,每一个标签的背后其实就是一段Java代码. 一般的,我们不用自定义标签,我们使用JSTL(Java的标准标签库(SUN自己提供的标签库)).

使用JSTL的准备环境:

1、需要拷贝相应的jar.

2、需要在使用JSTL的JSP页面引用标签库. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

3、使用JSTL的标签库了.

jsp(Java的服务网页)$javabean的更多相关文章

  1. JSP -java service pages

    jsp的运行机制: 1客户端(请求jsp页面)------->JSP页面(转换为java源文件)------->Selvet文件(.java) (编译成相应的字节码文件也就是后缀名是.cl ...

  2. 01_Weblogic课程之概念篇:代理服务器,web服务器,应用程序服务器,JNDI概念,JTA概念,Java消息服务,Java验证和授权(JAAS),Java管理扩展,Web客户机,客户机应用程序

     1 什么是服务器 Weblogic中服务器分为两种,一种是受管服务器,另外一种是管理服务器. Weblogic课程(Weblogic是Oracle公司的,最开始的是BEA公司的) 一 系统管理 ...

  3. JSP Java服务器页面

    大家好!好久不见!今日我们开始学习JSP了,一些记录基础性的知识在这里与大家分享. 先说下URL(Uniform Resource Locator 统一资源定位符). URL包括传输协议(http:/ ...

  4. "轻"量级 Java Web 服务框架漫谈

    博文太长了, 还是先说下概要: 框架"轻量"与否可以从两方面来看待: 1) 框架本身的体量 - 例如小 jar 无依赖的苗条框架; 2) 用户使用框架是否获得各种便利而无阻隔(&q ...

  5. 【JavaWeb】【JSP】【Bean】JavaBean基础使用方法与操作步骤

    JavaBean基础使用方法与操作步骤 JavaWeb jsp Bean 项目结构 JavaBean的概念 JavaBean是可复用的.平台独立的软件组件 JavaBean既可以是简单的GUI要素,如 ...

  6. JMS(Java消息服务)入门教程

    什么是Java消息服务 Java消息服务指的是两个应用程序之间进行异步通信的API,它为标准消息协议和消息服务提供了一组通用接口,包括创建.发送.读取消息等,用于支持JAVA应用程序开发.在J2EE中 ...

  7. Unity手游之路<二>Java版服务端使用protostuff简化protobuf开发

    http://blog.csdn.net/janeky/article/details/17151465 开发一款网络游戏,首先要考虑的是客户端服务端之间用何种编码格式进行通信.之前我们介绍了Unit ...

  8. servlet+jsp+java实现Web 应用

    servlet+jsp+java实现Web 应用 用java来构建一个web应用是特别容易的事情,jsp和php很像,可以嵌套在html中.程序的结构很简单,也很清楚,本文主要记录下大概的开发过程和环 ...

  9. 交通银行 Java Socket 服务启动 管理 WINDOWS 版

    按照交通银行提供的无界面启动方法试验了很多次,都没有成功,所以自己动手用C# 知识写了一个. 小工具可以判断 交通银行 JAVA SOCKET 服务是否启动,并可以启动/关闭服务 主要代码如下: 判断 ...

随机推荐

  1. CookiesHelper

    /// <summary> ///CookiesHelper 的摘要说明 /// </summary> public class CookiesHelper { public ...

  2. Java jdk 8 新特性

    list 统计(求和.最大.最小.平均) 第一种方式 int suma = listUsers.stream().map(e -> e.getAge()).reduce(Integer::sum ...

  3. phython学习

    Python 中文学习大本营 关于作者 赞助本站 The Python Tutorial (Python 2.7.X) 的中文翻译版本.Python Tutorial 为初学 Python 必备官方教 ...

  4. Windows系统文件mshtml.dll

    今天,在vista 32bit,sp 2,IE7的机器上跑开发的软件产品,打开IE,被测系统总是崩溃,换了一台机器,同样的配置环境,却没有重现. 同事的分析很详细,学习了 I tried this c ...

  5. 电商类Web原型制作分享-IKEA

    IKEA是一个家居整合大型零售商,属于电商类官网.电商以展示商品.售后服务.购物流程为主.根据网站的图文方式排版,主导航栏使用的标签组,区域导航栏使用的是垂直选项卡,实现下拉弹出面板交互的功能. 本原 ...

  6. VS2015 python

    http://pgqlife.info/2015/05/05/VS-Python/ 配置文档

  7. 【JAVA】通过URLConnection/HttpURLConnection发送HTTP请求的方法(一)

    Java原生的API可用于发送HTTP请求 即java.net.URL.java.net.URLConnection,JDK自带的类: 1.通过统一资源定位器(java.net.URL)获取连接器(j ...

  8. 2018.08.21 bzoj4668: 冷战(并查集+启发式合并)

    传送门 可以发现需要维护连通性和两点连通时间. 前者显然是并查集的常规操作,关键就在于如何维护两点的连通时间. 然后会想到这个时候不能用路径压缩了,因为它会破坏原本树形集合的结构,因此可以启发式按si ...

  9. 一组RS485设备操作命令

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ZNJM ...

  10. [GO]删除切片的某个值

    func removePro(ddbenv []*model.EnvInfo, k int) []*model.EnvInfo { :]...) } for k, v := range ddbenv ...