jsp讲解框架

(一)Java EE核心十三种技术介绍

(二)Java EE程序员修炼成精的法门

(三)jsp版本的用户管理系统演示

(四)jsp概述

(五)jsp的运行原理

(六)jsp版的计算器

  6.1jsp中如何使用js(javascript)和css技术...

***************************************************************************

(一)Java EE核心十三种技术介绍

  Java EE是一个开放的平台,它包括的技术还多,主要包括十三种核心技术。

  在完成一个项目中,并不是这十三种技术都要用到,实际上是有选择的使用。换句话说,一个程序员不是非要把这十三种技术全部掌握了才能从事Java EE开发。但是必须掌握的技术是java,servlet,jsp。

(三)jsp版本的用户管理系统演示

  在学习jsp技术过程中,将前面servlet版本的用户管理系统---->改为jsp版本的用户管理系统。在这个系统中,只使用jsp技术来完成(modell模式开发)。

  并且在后面通过jsp版的用户管理系统的改写,可以非常自然的过渡到mv设计模式,更进一步过渡到mvc设计模式。

  开发工具将使用:eclipse+myeclipse

(四)jsp概述

  1、为什么会出现jsp技术?

  程序员在开发过程中,发现servlet做界面非常不好,所以出现了jsp。

  jsp=html+java片段+jsp标签+javascript(css)

  jsp功能的强大因为可以与javabean结合使用(即:jsp作前台,javabean作后台)

  jsp+javabean的基础上再结合servlet,就会构成mvc的开发模式。mvc模式是目前软件公司中相当通用的开发模式。

  2、jsp的基本语法

  1)指令元素--用于从jsp发送一个信息到容器,比如设置全局变量,文字编码,引入包等。 

(1)page指令
<%@page contentType="text/html;charset=gb2312"%>
(2)include指令
<%@include file="filename"%>
(3)taglib指令--这个指令允许在jsp页面使用自定义的标签
<myTag:yourTag num1="123">

  2)脚本元素--在一定程度上可以理解就是java的片段scriplet

(1)scriplet    <% java代码%>
(2)表达式 <%=java表达式%> <%=rs.getString(1)%>
(3)declaration声明
<%!变量声明 %> 比如:<%! int count=10%>
<%!函数声明%>
<%! int jisuan(int num){
int result=0;
for(int i=0;i<num;i++){
result=result+i;
}
}
%>

  3)动作元素--动作元素是使用xml语法写的,是jsp规定的一系列标准动作,在容器处理jsp时,当容器遇到动作元素时,就执行相应的操作。

(1)<jsp:useBean>  //创建一个javabean实例
(2)<jsp:setProperty> //给一个javabean实例设置初始值
(3)<jsp:param> //给一个jsp设置参数,常常与<jsp:include>结合使用
<jsp:include file="info.jsp">
<jsp:param name="parameter1" value="parameter Value"/>
<jsp:param name="parameter2" value="parameter Value"/>
</jsp:include>
(4)<jsp:getProperty> //获得一个javabean实例的成员变量
(5)<jsp:include> //引入另外一个文件
(6)<jsp:plugin> //使用插件
(7)<jsp:forward> //转发
(8)<jsp:fallback>

  4)jsp的九大内置对象

(1)out //向客户端输出数据,字节流
out.println("");
(2)request //接受客户端的http请求
getParameter(String name); //name表示表单的参数名
getParameterValues(String name); //使用得到是String[]
setAttribute(String name,Object obj); //设置名字为name的obj.值为obj
getAttribute(String name); //返回由name指定的属性值,如果不存在就返回null
getCookie();
(3)response //封装jsp的产生回应
addCookie(Cookie cookie);
sendRedirect("/welcome.jsp");
(4)session //用于保存用户的信息,跟踪用户的行为
setAttribute(String name,Object obj);
getAttribute(String name);
(5)application //多个用户共享该对象,可以做计数器
(6)pageContent //代表jsp页面的上下文
(7)exception //代表运行时的一个异常
getMessage();
(8)page //代表jsp这个实例本身使用比较少
(9)config // 代表jsp对应的servlet的配置可以得到web.xml中的参数

  

jsp第1讲(上集)的更多相关文章

  1. servlet第3讲(上集)----同一用户的不同页面共享数据

    1.方法综述 2.Cookie 3.sendRedict()方法     4.隐藏表单

  2. servlet第2讲(上集)----创建servlet实例(实现servlet接口)

  3. servlet第2讲(上集)

  4. 坎坷路:ASP.NET 5 Identity 身份验证(上集)

    之所以为上集,是因为我并没有解决这个问题,写这篇博文的目的是纪录一下我所遇到的问题,以免自己忘记,其实已经忘了差不多了,写的过程也是自己回顾的过程,并且之前收集有关 ASP.NET 5 身份验证的书签 ...

  5. jsp+servlet实现文件上传下载

    相关素材下载 01.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" ...

  6. JSP实现大文件上传和下载

    javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 <form id=" ...

  7. K8S线上集群排查,实测排查Node节点NotReady异常状态

    一,文章简述 大家好,本篇是个人的第 2 篇文章.是关于在之前项目中,k8s 线上集群中 Node 节点状态变成 NotReady 状态,导致整个 Node 节点中容器停止服务后的问题排查. 文章中所 ...

  8. JSP大文件分片上传

    核心原理: 该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. * 如何分片: * 如何合成一个文件: * 中断了从哪个分片开 ...

  9. 不用代码趣讲 ZooKeeper 集群

    本文作者:HelloGitHub-老荀 Hi,这里是 HelloGitHub 推出的 HelloZooKeeper 系列,免费开源.有趣.入门级的 ZooKeeper 教程,面向有编程基础的新手. 项 ...

随机推荐

  1. lldb 命令

    po [[UIWindow keyWindow] recursiveDescription]

  2. android 简单粗暴的注解初始化View学习

    原理是在Activity加载好后通过找到Activity中使用注解的字段,再通过Java反射的方式,动态的给这个字段设置值. 1定义一个注解接口 /** * view inect by id * * ...

  3. 第八十四节,css布局小技巧及font-awesome图标使用

    css布局小技巧及font-awesome图标使用 图片鼠标放上去遮罩效果,显示文字 当鼠标放上去时 /*最外层div*/ .a{ width: 384px; height: 240px; backg ...

  4. B/S和C/S的区别。

    现在软件开发的整体架构主要分为B/S架构与C/S架构 一,C/S——Client/Service:客户机/服务器模式: C/S (Client/Server)结构,即大家熟知的客户机和服务器结构.它是 ...

  5. 《JS权威指南学习总结--1.1语言核心》

    1.1语言核心 --本节主要介绍<js权威指南>基础部分各章讲解内容和一些简单的示例 本小节内容: 一.第二章讲解js注释.分号和Unicode,第三章主要讲解js变量和赋值 简单示例: ...

  6. 禁止使用test类的就是禁止使用本来的$this对象.可以调用父类的对象

    public function __construct() { parent::__construct( ); parent::__construct( ); if(!APP_DEBUG ) die( ...

  7. 线索thread二叉树

    对于一个普通的二叉树 我们可以很明显的看到,在一个二叉树中,会有许多的空结点,而这些空结点必然会造成空间的浪费,为了解决这个问题,我们可以引入线索二叉树,把这些空结点利用起来,利用 '^' 记录给定结 ...

  8. MySQL(2)-数据类型和Schema

    一.数据类型 只介绍基本的数据类型. MySQL中选择合适的数据类型还是很有必要的,下面是一些通用原则: 小的就是好的 一般情况下,应该尽量使用可以正确存储数据的最小数据类型.更小的数据类型通常更快, ...

  9. 深入JVM锁机制1-synchronized

    目前在Java中存在两种锁机制:synchronized和Lock,Lock接口及其实现类是JDK5增加的内容,其作者是大名鼎鼎的并发专家Doug Lea.本文并不比较synchronized与Loc ...

  10. delphi怎么实现全选的功能

    1. SelectAll 可以实现全选功能 Delphi/Pascal code edit1.SelectAll; // Delphi/Pascal code RichEdit1.SelStart:= ...