Servlet学习了解
来源:互联网 发布:机器码算注册码软件 编辑:程序博客网 时间:2024/05/20 03:44
Http协议: 掌握一些头信息
请求头
Accept: text/html,image/* --支持数据类型 text/htmle text/css text/javascript 大类型/小类型 mine类型 *代表全部
Accept-Charset: ISO-8859-1 —字符集 拉丁一,不支持 中文
Accept-Encoding: gzip --支持压缩
Accept-Language:zh-cn --语言环境
Host: www.itcast.cn:80 --访问主机
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT --缓存文件的最后修改时间
Referer: http://www.itcast.com/index.jsp --来自哪个页面、防盗链
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)浏览器内核 MSIE:IE chrome:谷歌
Cookie
Connection: close/Keep-Alive --链接状态
Date: Tue, 11 Jul 2000 18:23:51 GMT --时间
响应头
Location: http://www.it315.org/index.jsp --跳转方向
Server:apache tomcat --服务器型号
Content-Encoding: gzip --数据压缩
Content-Length: 80 --数据长度
Content-Language: zh-cn --语言环境
Content-Type: text/html; charset=GB2312 --数据类型
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT --最后修改时间
Refresh: 1;url=http://www.it315.org --定时刷新
Content-Disposition: attachment; filename=aaa.zip --下载
Set-Cookie:SS=Q0=5Lb_nQ; path=/search
Expires: -1 --缓存
Cache-Control: no-cache --缓存
Pragma: no-cache --缓存
Connection: close/Keep-Alive --连接
Date: Tue, 11 Jul 2000 18:23:51 GMT
案例1 — 完成登陆案例
收集用户数据
需要:属性: name
提交的地址: action
请求方式: post
servlet : 动态的web开发技术,本质就是一个类,运行在服务端的一个java小程序
可以处理业务逻辑,生成动态的web内容
编写servlet:
1.编写一个类: 继承与httpServlet,重写dopost方法
2.编写配置文件,注册servlet,绑定路径
3.访问,主机名称:端口/项目/路径
编写一个servlet步骤:
1 编写一个类:a 继承httpservlet类
b 重写doGet或者dopost方法
2 编写配置文件(wen-inf/web-xml)
a.注册servlet
b.绑定路径
3 访问 : http://主机:端口/项目名/路径
4 接受参数: 格式 key=value
通过request.getparam(“key”)
5 会写内容:
response.getWrite.print(“数据”)
6 中文乱码
response.setContentType(“text/html; charset=utf-8”);
步骤分析:
1.现有数据库和表
create dataSource web09;
use web09;
create table user {
id Int primary key out_incement
username varchar(20),
password varchar(20),
email varchar(20),
name varchar(20),
sex varchar(20),
birthday archer(20),
hobby archer(20)
}
2.复制页面
修改login.xml
给用户和密码添加name属性
修改表单的action属性
action=“http://locahost/8080/login"
3. 创建servlet
4.导入jar包:
驱动 dbUtls c3p0
5 导入工具栏和配置文件:
dataSourceUtils
才p9-config.xml
6 创建server(loginServlet : 路径login)
接受用户名和密码
调用service层,完成登陆操作
提示信息
7 userService
login (userName, passWord)
servlet总结: 体系了解
servlet : 接口
httpServlet: 抽象类
自定义的Servle
Servlet的常用方法: Servlet 生命周期 是单实例多线程的 默认第一次访问的时候,服务器创建Servlet, 并调用init方法,并调用一次service方法
void init(servlet config) 初始化方法 执行一次,第一次访问的时候执行
void service(ServletRequest request, ServletResponse response) 服务,业务逻辑 请求一次,执行一次,请求来的时候执行
void destroy() : 销毁 Servlet被移除或者服务器被关闭的时候
servletConfig getServletConfig
GenericServlet: 抽象类
除了service方法没显现,其他的都实现了
httpServlet常用方法:
service方法做了实现,把参数强转,重载service方法
重载的service发放获取请求方式,根据请求方式的不同调用不同的doXXX方法
在servlet标签有一个子标签 load-on-startup : 作用:用来修改servlet的初始化时机
取值:正整数 值越大优先级越低
当我们的配置文件里面没有指定配置的话,就查找tomcat的web.xml
路径的写法: 相对路径:
当前路径
上一级路径
绝对路径:
带主机和协议的绝对路径:(访问站外资源)
http//:www.baidu.com/XXX
不带主机和协议的绝对路径
/day/hello
定时刷新:
常见的响应头-refresh
响应头格式:
refresh:描述; url=跳转的路径
设置响应头:
response.setHeader(string key, string value) ; 设置字符串形式的响应头
response.addHeader(String,String value); 追加响应头,若之前设置过这个头,则追加;
若没有设置过,则设置
设置定时刷新:
response.setHeader(“refresh”,”3;url=/login.html”)
统计登陆成功的总人次数:
在一个用户登陆成功之后,获取之前登陆成功的总人次,将次数加1
在访问另一个Servlet的时候,显示登陆成功的总人次
ServletContext(全局管理者) 上下文:
常用的方法:
setAttbute(String key, object value) 存取值
object getAttbute(string key) 获取值
removeAttbute(String key) 移除值
获取全局管理者:
1. 项目启动的时候,初始化登陆次数,在loginServlet的init方法中,将次数初始化为0,放入ServletContent上
2.getServletContent();
3.登陆成功之后,在loginServlet中获取全局管理者,获取登录成功的总数,然后加1,然后设置回去
4.当访问showServlet的时候,获取全局管理者,获取登陆成功的总次数,然后在页面打印出来即可
ServletConfig: Servlet的配置对象
servletContext : 一个项目的引用,代表的当前项目
当项目启动的时候,服务器会为每个web项目创建一个ServletContext对象
当项目被移除的时候或者服务器关闭的时候,ServletContext销毁
作用: 1.获取全局的初始化参数
2.共享资源
3.获取文件资源
getRealPath("/1.txt"):获取项目发布到服务器上位置的根目录
getResourceAsStream("/1.txt"):以流的形式返回一个文件
获取方式: 1.ServletConfig.getServletContext()
2.getServletContext
servletContext : 域对象 共享的数据
当成map集合 常用方法 XXXattbute
0 0
- Servlet学习了解
- Servlet之四 Session的了解和学习
- 初步了解Servlet
- tomcat servlet初步了解
- Servlet的了解
- Java Web -- Servlet(3) 了解Servlet
- Servlet——了解Java Servlet技术
- 学习了解
- Servlet学习笔记_01_Servlet或javaee要了解的一些常识
- Servlet学习笔记(HTTP请求详细了解以及文件下载示例)
- 了解servlet高级过滤器Filter
- Servlet初了解(二)
- Servlet的初步了解 --- JavaWeb
- 对servlet的简单了解
- 真的了解Servlet嘛
- 我所了解的servlet
- servlet学习
- Servlet学习
- BZOJ3812 主旋律
- 游戏数值策划入门介绍
- C# 子线程调用主线程窗体的解决方法
- New Year Snowmen CodeForces
- this关键字用法
- Servlet学习了解
- Jquery ajax 不执行success
- bamtools安装
- Spark学习笔记(四)
- 2、算法概述
- 树种统计 静态内存 排序树
- 【java并发编程实战】—–线程基本概念
- CS231n Assignment3--Q2
- 3、线性表