学习笔记6_Java_day11_JSP_基础和入门(1、2)
主要内容:
1. JSP基础
2. Cookie
3. HttpSession
================================
JSP基础
1. jsp的作用:
* Servlet:
> 缺点:不适合设置html响应体,需要大量的response.getWriter().print("<html>")
> 优点:动态资源,可以编程。
* html:
> 缺点:html是静态页面,不能包含动态信息
> 优点:不用为输出html标签而发愁
* jsp(java server pages):
> 优点:在原有html的基础上添加java脚本,构成jsp页面。
2. jsp和Servlet的分工:
* JSP:(JSP作为发起和结束的环节)
> 作为请求发起页面,例如显示表单、超链接。(类似服务员,真正做菜的厨师还是Servlet。)
> 作为请求结束页面,例如显示数据。
* Servlet:
> 作为请求中处理数据的环节。
3. jsp的组成
* jsp = html + java脚本 + jsp标签(指令)
* jsp中无需创建即可使用的对象一共有9个,被称之为9大内置对象。例如:request对象、out对象
* 3种java脚本:
> <%...%>:java代码片段(常用),用于定义0~N条Java语句!方法内能写什么,它就可以放什么!
> <%=...%>:java表达式,用于输出(常用),用于输出一条表达式(或变量)的结果。response.getWriter().print( ... );这里能放什么,它就可以放什么!
> <%!...%>:声明,用来创建类的成员变量和成员方法(基本不用,但容易被考到),类体中可以放什么,它就可以放什么!
案例:演示jsp中java脚本的使用!
案例:演示jsp与servlet分工!
4. jsp原理(理解)
* jsp其实是一种特殊的Servlet
> 当jsp页面第一次被访问时,服务器会把jsp编译成java文件(这个java其实是一个servlet类)
> 然后再把java编译成.class
> 然后创建该类对象
> 最后调用它的service()方法
> 第二次请求同一jsp时,直接调用service()方法。
* 在tomcat的work目录下可以找到jsp对应的.java源代码。
* 查看jsp对应java文件:
> java脚本
> html
5. jsp注释
* <%-- ... --%>:当服务器把jsp编译成java文件时已经忽略了注释部分!
<!--fdsafdsa-->:html注释
=================================
学习笔记6_Java_day11_JSP_基础和入门(1、2)的更多相关文章
- mybatis学习笔记之基础复习(3)
mybatis学习笔记之基础复习(3) mybatis是什么? mybatis是一个持久层框架,mybatis是一个不完全的ORM框架.sql语句需要程序员自己编写, 但是mybatis也是有映射(输 ...
- mybatis学习笔记之基础框架(2)
mybatis学习笔记之基础框架(2) mybatis是一个持久层的框架,是apache下的顶级项目. mybatis让程序将主要精力放在sql上,通过mybatis提供的映射方式,自由灵活生成满足s ...
- Oracle RAC学习笔记:基本概念及入门
Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章] oracle 10g real applica ...
- Linux内核学习笔记-1.简介和入门
原创文章,转载请注明:Linux内核学习笔记-1.简介和入门 By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...
- MyBatis:学习笔记(1)——基础知识
MyBatis:学习笔记(1)--基础知识 引入MyBatis JDBC编程的问题及解决设想 ☐ 数据库连接使用时创建,不使用时就释放,频繁开启和关闭,造成数据库资源浪费,影响数据库性能. ☐ 使用数 ...
- bootstrap学习笔记之基础导航条 http://www.imooc.com/code/3111
基础导航条 在Bootstrap框中,导航条和导航从外观上差别不是太多,但在实际使用中导航条要比导航复杂得多.我们先来看导航条中最基础的一个--基础导航条. 使用方法: 在制作一个基础导航条时,主要分 ...
- 【转载】【时序约束学习笔记1】Vivado入门与提高--第12讲 时序分析中的基本概念和术语
时序分析中的基本概念和术语 Basic concept and Terminology of Timing Analysis 原文标题及网址: [时序约束学习笔记1]Vivado入门与提高--第12讲 ...
- Django学习笔记(基础篇)
Django学习笔记(基础篇):http://www.cnblogs.com/wupeiqi/articles/5237704.html
- C#学习笔记(基础知识回顾)之值类型与引用类型转换(装箱和拆箱)
一:值类型和引用类型的含义参考前一篇文章 C#学习笔记(基础知识回顾)之值类型和引用类型 1.1,C#数据类型分为在栈上分配内存的值类型和在托管堆上分配内存的引用类型.如果int只不过是栈上的一个4字 ...
随机推荐
- HDU 1953
#include<stdio.h> #include<math.h> long long int euler(long long int n) { long long int ...
- [CODEVS3299]有序数组合并求第K大问题
题目描述 Description 给出两个有序数组A和B(从小到大有序),合并两个有序数组后新数组c也有序,询问c数组中第k大的数 假设不计入输入输出复杂度,你能否给出一个O(logN)的方法? 输入 ...
- ftp两种传输方式区别
转自:http://linux.chinaitlab.com/server/806269.html FTP可用多种格式传输文件,通常由系统决定,大多数系统(包括UNIX系统)只有两种模式:文本模 式和 ...
- windows service自动重启服务
服务一般都能正常的运行,但有时候也会有一些假死现象,比如公司有一考勤服务就因为依赖于硬件厂家的api, 但厂家api运行一段时间后会默名的假死,引起整个服务假死,因为这一假死现象具有不确定性,所以不太 ...
- A Tour of Go Short variable declarations
Inside a function, the := short assignment statement can be used in place of a var declaration with ...
- Android核心基础(四)
1.联系人表结构 添加一条联系人信息 package com.itheima.insertcontact; import android.app.Activity; import android.co ...
- 【转】html input radio取得被选中项的value
html代码: <input id="rad" name="rad" type="radio" value="1" ...
- opencv基础知识-videowriter
一.前言-简介 在试验中需要常常将实验结果进行保存,在opencv中提供很好用的录制视频的句柄,也可称之为类-videowriter. videowriter应用那是相当的简单,总之分为三步: //声 ...
- GridControl 选择列、复选框全选(下)
功能: 删除选中行 前台调用: string str=""; GridDelete(gv, "chk", out str); MessageBox ...
- excel导入数据库iis设置
导入成功以后,基本这个小项目的所有功能都开发完成了,请IT部门帮我设定了一个固定IP,我以本机作为服务器,在本机IIS上发布了一个测试版,结果上传Excel数据报错, 错误信息“未在本地计算机上注册“ ...