【概念笔记】JavaEE - web part2
IT`huhui前言录
续JavaEE - web part1 链接http://www.cnblogs.com/ithuhui/p/5930745.html, 持续修改更新。
Cookie
1. 定义:
服务器端写到客户端的文本信息,以名-值对形式保存数据
2. Cookie原则:
- 服务器可以向客户端写内容,只能是文本内容
- 客户端可以阻止服务器写入
- 只能拿自己web app 写入的东西
- Cookie 分两种
- 属于窗口/子窗口
- 属于文本(定时删除)
- 一个servlet/jsp设置的cookie能被同一个路径下面或者子路径下面的servlet/jsp读到(这里路径指的是URL)
Session
1. Cookie 和 Session的相同点:
Cookie和Session都是用来记录状态
2. Cookie 和 Session的不同点:
- Cookie记录在客户端
- Session记录在服务端
- Session和浏览器关联在一起
3. 机制:
用SeesionID来关联
4. 实现方法:
+ Cookie实现 SessionID放在Cookie临时内存里面(窗口)
+ URL重写实现
5. 规则:
- 如果浏览器支持Cookie,创建Session的时候会把SessionID保存在Cookie里面 + 如果浏览器不支持Cookie,必须自己编程使用URL重写方法实现Session
这这需要用到:response.encodeURL()
其作用主要是:①转码 ②URL后面加入SessionID
6. getSession()的三种方法处理过程
// session 用于服务端维护用户状态
// cookie 用于客户端维护用户状态
// 两者需要配合完成用户状态的维护
// getsession () 等同于 getsession(true)
// 处理过程:通过jserssionid判断是否有session如果当前存在session 则直接返回当前的session 如果不存在则新建一个新的session
// getsession(false)(用户第一次创建的时候会使用这个方法判断)
// 处理过程:通过jserssionid判断是否有session如果当前存在session 则直接返回当前的session 如果不存在则返回null
APPlication
1. 作用定义:
用于保存整个web application的生命周期内都可以访问的数据
2. 实现javax.servlet.ServletContext接口
application对象有两个常用的方法,setAttribute()和getAttribute() 作用分别是 设置/取得 相关属性
JSP
1. JSP基本语法
Declaraction声明
<%! %> 成员变量
<% %>局部变量scriptlet小程序段
<% JAVA程序代码%>expression表达式
<%= %>
=后面必须是字符串或者可以转换成字符串的表达式
<%="hello world "%>
<%=i+1%>
<%=request.getParameter("name")%>comment注释
directive编译指令(编译期间指令)
%@Directive属性="属性值"%
常用Directive属性
①page
②include
<%@include file="fileURL"%>
注意不能在URL中传参action动作(运行期间的指令)
jsp:useBean
jsp:include
jsp:forward
jsp:plugin内置对象
2. JSP九大内置对象
(1)HttpServletRequest类的Request对象
作用:代表请求对象,主要用于接受客户端通过HTTP协议连接传输到服务器端的数据。
(2) HttpServletResponse类的Respone对象
作用:代表响应对象,主要用于向客户端发送数据
(3) JspWriter类的out对象
作用:主要用于向客户端输出数据;
Out的基类是JspWriter
(4) HttpSession类的session对象
作用:主要用于来分别保存每个用户信息,与请求关联的会话;
会话状态维持是Web应用开发者必须面对的问题。
(5) ServletContext类的application对象
作用:主要用于保存用户信息,代码片段的运行环境;
它是一个共享的内置对象,即一个容器中的多个用户共享一个application对象,故其保存的信息被所有用户所共享.
(6) PageContext类的PageContext对象
作用:管理网页属性,为JSP页面包装页面的上下文,管理对属于JSP中特殊可见部分中已命名对象的访问,它的创建和初始化都是由容器来完成的。
(7) ServletConfig类的Config对象
作用:代码片段配置对象,表示Servlet的配置。
(8) Object类的Page(相当于this)对象
作用:处理JSP网页,是Object类的一个实例,指的是JSP实现类的实例,即它也是JSP本身,只有在JSP页面范围之内才是合法的。
(9)Exception
作用:处理JSP文件执行时发生的错误和异常
3. 查看生成的jsp
D:\workSpace\Servers.metadata.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\vote_web\org\apache\jsp
4. JSP相关基础操作
静态引入,先合并再执行
<%@include file = ""%>动态引入,先分开执行,再合并;
<jsp:include page="b.jsp"></jsp:include>引入JAVA的包
<%@ page import="java.util.*" %>
- JAVA语句要用<%%> 包起来,example:
<%
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
for(String str: list){
%>
<p><%=str %></p>
<%
}
%>
5. 注意事项
JSP里面
${user.name } 实际上调用的是 User 类里面的get函数可以通过重写URL传参
http://localhost:8080/vote_web/el.jsp?username=huweihui
${param.username}
MVC模式简易理解
1. 定义:
M:业务逻辑层(业务逻辑处理)
V:显示层
C:控制层 (servlet)
Dao 持久层 (数据库操作:增删改查)
2. 用处:
程序复用,代码清晰等
3. 注意:
层次不是分的越多越好 影响程序性能 合理分层
4. 处理过程:
(例子servlet 用户发送求求到服务端 服务端读取配置文件 客户端要求传到controller controller调用Model层进行业务处理 model层再DAO层进行数据的获取 Dao层返回数据到Model层 逐层返回到controller层 返回给客户端)
【概念笔记】JavaEE - web part2的更多相关文章
- javaEE(web)SEO优化 Yahoo军规
javaEE(web)SEO优化 Yahoo军规 1.尽可能减少HTTP请求数2.使用CDN3.添加Expire/Cache-Control头4.启用Gzip压缩5.将CSS房在页面最上方6.将Scr ...
- Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径
Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径 (2015/07/08更新) JDK下载地址(JDK官网下载地址) 下载地址为:http://www.oracle.co ...
- javaee web项目的目录结构
一般web系统的目录结构如下,其中src下的包结构和webroot下(除meta-inf和web-inf)的文件夹可以根据自己的项目实际调整,但是javaee规范的大目录结构不会变: META-INF ...
- go语言,golang学习笔记2 web框架选择
go语言,golang学习笔记2 web框架选择 用什么go web框架比较好呢?能不能推荐个中文资料多的web框架呢? beego框架用的人最多,中文资料最多 首页 - beego: 简约 & ...
- Spring实战第六章学习笔记————渲染Web视图
Spring实战第六章学习笔记----渲染Web视图 理解视图解析 在之前所编写的控制器方法都没有直接产生浏览器所需的HTML.这些方法只是将一些数据传入到模型中然后再将模型传递给一个用来渲染的视图. ...
- 【概念笔记】JavaEE - web part1
IT`huhui前言录 想对学习的内容进行下简易的总结方便自己回头复习. 但是还有很多地方是不完善的需要慢慢修改. 持续更新. Web 服务器 IIS 微软主推 Apache C写的 Tomcat j ...
- 【概念笔记】JAVA基础 - part2
IT`huhiu前言录 这是续JAVA基础 - part1 链接http://www.cnblogs.com/ithuhui/p/5922067.html的. 笔记慢慢在修改和补充 JAVA里面重要的 ...
- 【笔记】web 的回流与重绘及优化
最近看了幕课网 web 前端性能优化的课程,其中说到了浏览器的回流(reflow) 及 重绘(repaint).觉得以后面试或许会被问到所以做一下笔记: 课程从回流及重绘这两个点延伸出了一个知识点就是 ...
- 推荐一个自动抽取pdf高亮笔记的web应用
很多人可能像我一样,喜欢用电脑或平板阅读pdf格式的论文或电子书,阅读过程中难免会使用highlight(高亮)工具标记出重要的文字和段落.有没有办法将所有高亮的部分抽取出来,形成一篇单独的笔记呢?下 ...
随机推荐
- ant安装(linux)
1.下载 下载地址:http://ant.apache.org/bindownload.cgi 下载apache-ant-1.9.7-bin.tar.gz(当前最新版本),将该下载包拷贝到/data/ ...
- 【EF学习笔记08】----------加载关联表的数据 显式加载
显式加载 讲解之前,先来看一下我们的数据库结构:班级表 学生表 加载从表集合类型 //显示加载 Console.WriteLine("=========查询集合===========&quo ...
- Python之路【第十九篇】:爬虫
Python之路[第十九篇]:爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...
- 『GreenPlum系列』GreenPlum 4节点集群安装(图文教程)
目标架构如上图 一.硬件评估 cpu主频,核数推荐CPU核数与磁盘数的比例在12:12以上Instance上执行时只能利用一个CPU核资源进行计算,推荐高主频 内存容量 网络带宽重分布操作 R ...
- java8中hashMap
摘自:http://www.importnew.com/20386.html 简介 Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,分别是HashMa ...
- linux C学习笔记01--makefile
不知不觉毕业五年了,以前学的linux基本都忘了,重新温习起来吧! 下面是自己写的makefile文件,供新手和自己回头时查阅 CC=gcc EXE=c.out CCC=g++ EEE=cc.out ...
- 9.springMVC中的拦截器
springMVC中的拦截器大概大致可以分为以下几个步骤去学习: 1.自定义一个类实现HandlerInterceptor接口,这里要了解其中几个方法的作用 2.在springMVC的配置文件中添加拦 ...
- 继续努力刷题--BE STRONGER AND STRONGER
Come on,baby~ (1)Contains Duplicate 有自己的思路:两个for双重循环直接一个个比较,但肯定不是最优解.所以,使用Set中的HashSet(一种没有重复元素的无序集合 ...
- springMVC + Spring + MyBatis 整合
整理下SSM(基于注解)的整合 1. web.xml 配置文件 <?xml version="1.0" encoding="UTF-8"?> < ...
- [转载] Android中Xposed框架篇---利用Xposed框架实现拦截系统方法
本文转载自: http://www.wjdiankong.cn/android%E4%B8%ADxposed%E6%A1%86%E6%9E%B6%E7%AF%87-%E5%88%A9%E7%94%A8 ...