1. 符合 j2ee 标准的 web-app 的目录结构

WEB-INF classes

web.xml lib

  1. servlet 开发过程
    从 httpservlet 继承, 重写 doget / doPost 方法

    部署web.xml

  2. servlet 声明周期

    • 只有一个对象

    • 第一次请求的时候被初始化,只一遍

    • 初始化后先调用init方法,只一遍

    • 每个请求,调用一遍serviceàserviceàdoGet/doPost。以多线程的方式运行

      不要在 servlet 中设计成员变量。

    • 卸载前调用destroy方法

  3. 为什么有 2 个 init 方法

  4. /的含义

    • form
      form提交中action的路径可以为虚拟路径,
      也可以为绝对路径,/代表 http://127.0.0.1/

    • web.xml
      web.xml中url-pattern为webapplication根路径,/代表http://127.0.0.1/Test/

      6.乱码





场合:页面本身有中文的时候



解决办法:servlet:
Jsp:
注意:一定要写在 PrintWriter out = resp.getWriter();之前

resp.setContentType("text/html;charset=gbk");

<%@ page contentType="text/html;charset=gb2312"%>


场合:解决 get 方式乱码问题:
解决办法:

修改 server.xml àURIEncoding="GBK"


场合:解决 post 方式提交内容的乱码
解决办法:request.setCharacterEncoding("GBK");
注意:一定要写在存取第一个参数之前

不要调用 response.setCharacterEncoding("GBK");


场合:<jsp:param name="user" value="<%=s%>"/>,url 地址包含中文参数
解决办法:<%request.setCharacterEncoding("GBK");%>
注意:

7. Cookie 和 session 的区别

注意 cookie 有时候禁不掉

cookie session
存储在客户端   存储在服务器      

两种类型

  有生命周期

   无生命周期

两种实现方式

  依赖于cookie

  url重写

父路径不能访问子路径的cookie 同一个session的窗口共享一个session

典型应用

  保存一个月 一年

  购物车

典型应用

  用户登录

  购物车

不可靠 可靠

8. application (ServletContext)的概念
9. jsp 初学者容易犯的错误

WEB-INF 子目录下面不能放置 html jsp 等文件
不能直接打开

10. jsp/servlet 连接数据库时要注意的事

拷贝数据库驱动的 jar 包到 apache-tomcat-6.0.14\webapps\Test\WEB-INF\lib 文件夹
确认数据库已经启动
用户名、密码应该正确

  1. <%! <%区别

  2. 如何解决 ie 缓存问题

  3. TestErr.jsp / ErrPage.jsp

不太稳定,有的时候不好使:

  • 先不写这句话:<%@page errorPage="ErrPage.jsp"%>

  • Ie不行,firefox行

14. <%@include 和 jsp:include 的区别

<%@ include file="date.jsp" %>

<jsp:include page="date.jsp" flush="true"/>

include 编译指令是在 JSP 程序的转换时期就
将 file 属性所指定的程序内容嵌入,然后再
编译执行;

而 include 指令在转换时期是不会被编译的,
只有在客户端请求时期如果被执行到才会被
动态的编译载入

只生成一个 class 文件

多个

Include 不能带参数

<jsp:include>可以

同一个 request 对象

不同的 request 对象,可以取得包含它的页面
的参数,并添加了自己的参数

常用

不常用

15. forward 和 sendredirect 的区别

Sendredirect

Forward

是不同的 request

虽然是不同的对象,但是,可以取到上一个页面的内容

send 后的语句会继续执行,除非 return

forward 后的语句不会继续发送给客户端

速度慢

速度快

需要到客户端的往返,可以转到任何页面,

服务器内部转换,

地址栏有变化

地址栏没有变化

可以传参数,直接写在 url 后面

可以传参数

/代表的是 http://127.0.0.1/
<%response.sendRedirect("/test/ServletToJSP");%>
<form action="/test/ServletToJSP">
<a href="/test/ServletToJSP">test</a>

/代表的是 http://127.0.0.1/test
this.getServletContext().getRequestDispatch
("/servlet_jsp/ServletUseJsp.jsp")
.forward(req, resp);

并且只能以/开头

常用

常用

16. <jsp:useBean scope =
page|request|session|application>

17. jsp 内 置 对 象 : out request response
session application exception

JSP 基础概念归纳 5分钟看完的更多相关文章

  1. 6 分钟看完 BGP 协议。

    上一篇文章见 万字长文爆肝路由协议! 上面我们聊 RIP .OSPF 协议都是基于 AS 即自治系统内的协议,可以把它们认为是域内路由协议:而下面我们要聊的就是 AS 之间的协议了,这也叫做域间路由协 ...

  2. 3分钟看完Java 8——史上最强Java 8新特性总结之第一篇 函数式编程基础

    目录 · 行为参数化 · Lambda表达式 · 概况 · 函数式接口 · 类型推断 · 使用外层变量 · 方法引用 · 复合Lambda表达式 行为参数化 1. 理解函数式编程要先理解行为参数化. ...

  3. Java Web基础:JSP基础概念

    JSP介绍 JSP全称是Java Server Pages,它和Servlet都是Sun公司定义的用于开发动态Web资源的技术,它解决了Servlet输出流排版复杂和难以维护的问题.JSP完美融合了H ...

  4. 几分钟看完 flow.ci 全部功能

    从 0 到 1,从邀请式内测到收费上线,flow.ci 经历了十个多月的沉淀与打磨.这期间,flow.ci 工程师们奋力赶工,进行了一系列的大功能更新,Bug 修复,功能优化. 这篇文章记录了 flo ...

  5. 【matlab 基础篇 02】基础知识一键扫盲,看完即可无障碍编程(超详细+图文并茂)

    博主快速入门matlab,系统地整理一遍,如何你和我一样是一个新手,那么此文很适合你: 本人能力有限,文中难免有错误和纰漏之处,请大佬们不吝赐教 创作不易,如果本文帮到了您: 请帮忙点个赞

  6. DDD领域驱动设计落地实践(十分钟看完,半小时落地)

    一.引子 不知今年吹了什么风,忽然DDD领域驱动设计进入大家视野.该思想源于2003年 Eric Evans编写的"Domain-Driven Design领域驱动设计"简称DDD ...

  7. 3分钟看完Java 8——史上最强Java 8新特性总结之第二篇 Stream API

    目录 · 概况 · 切片(Slicing) · 映射(Mapping) · 匹配(Matching) · 查找(Finding) · 归约(Reducing) · 排序(Sorting) · 数值流( ...

  8. 3分钟看完Java 8——史上最强Java 8新特性总结之第四篇 其他新特性

    目录 · 默认方法和静态方法 · 初步理解 · 应用模式 · 优先级问题 · Optional · CompletableFuture · 基本用法 · CompletableFuture与Strea ...

  9. 3分钟看完Java 8——史上最强Java 8新特性总结之第三篇 函数式编程技巧

    目录 · 改写设计模式 · 策略模式(Strategy Pattern) · 模板方法模式(Template Method Pattern) · 观察者模式(Observer Pattern) · 责 ...

随机推荐

  1. ASP.NET Identity 3.0教程

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:我相信有些人和我一样,已经开始把ASP.NET 5用于产品开发了.不过现在最大的问题是 ...

  2. loj 1337

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1337 思路:对于搜过的区域进行标记,如果要求的点落在已经搜过的区域,那么直接取出来即可 ...

  3. loj 1316(spfa预处理+状压dp)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=27024 题意:求0-(n-1)的经过最多的标记的点的最短路. 思路 ...

  4. Android学习笔记(一)——安卓开发环境搭建

    安装教程以及资源(2015.11.8最新版):链接:http://pan.baidu.com/s/1kTnOsMr 密码:0ogf

  5. LR检查点的if (status == LR_FAIL)写法

    C语言例子:登录失败返回一个信息 int status = web_url("Login", "URL=https://secure.computing.com//log ...

  6. AngularJS学习之全局API(应用程序编程接口)

    1.AngularJS全局API用于执行常见任务的Javascript函数集合: **比较对象 **迭代对象 **转换对象 2.全局API函数使用angularJS对象进行访问:以下是通用API函数: ...

  7. javascript优化--12模式(设计模式)03

    观察者模式 通过创建一个可观察的对象,当发生一个感兴趣的事件时将该事件通告给所有观察者,从而形成松散的耦合 订阅杂志 //发布者对象 var publisher = { subscribers: { ...

  8. js:方法3. 对象

    Object.constructor object.constructor a = new Array(1,2,3); // Create an object a.constructor == Arr ...

  9. iOS10 UI教程视图的中心位置

    iOS10 UI教程视图的中心位置 center表示的是视图的中心位置属性,这个属性在相对的UI层次结构上工作,和frame类似.center属性是一个在父视图上定义视图的位置的简便方法.center ...

  10. js-新兴的API,最佳实践,离线应用于客户端存储

    离线应用于客户端存储: 1.离线检测:online以及offline事件,都是在window对象上触发 navigator.online为true的时候是表示设备能够上网 2.使用一个描述文件(man ...