博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Servlet
阅读量:2345 次
发布时间:2019-05-10

本文共 1821 字,大约阅读时间需要 6 分钟。

在这里插入图片描述


Servlet:

java类必须符合一定的规范:
a.必须继承 javax.servlet.http.HttpServlet
b.必须重写其中的doGet()或doPost()方法
c.配置:
Servlet2.5 :
web.xml
< servlet >
< servlet-name >随便名字,一般同类名< /servlet-name >
< servlet-class >全类名< /servlet-class >
< /servlet >

< servlet-mapping >

< servlet-name >名字同上< /servlet-mapping >
< url-pattern >访问路径,(如/Servlet) < /url-pattern >
< /servlet-mapping >

Servlet3.0 :

@WebServlet:
在Servlet类的定义处上写 注解@WebServlet(value = “url-patternd的值”)value = 可不写


根目录问题:(如Web项目中src和WebContent都是构建路径,根目录)

如果:index.jsp中请求< a href = “abc” >…< /a >,既在src根目录中找,也会在WebContent中找abc
< a href = “a/abc” >…< /a > 现在src或webContent中找a目录,再找abc

/:

web.xml中,/代表项目根目录:
http://localhost:8080/Project/
jsp中,/代表服务器根目录:
http://localhost:8080/


Servlet生存周期

加载

初始化 init() : Servlet被加载并实例化的以后执行
服务 service() -> doGet() doPost()
销毁 destory() : 服务关闭时执行
卸载

init():

a.第一次访问Servlet时会被执行,仅一次
b. 可修改为服务启动时自动执行:

2.5:在web.xml中要设置的servlet的servlet标签里加< load-on-startup >1< /load-on-startup >,其中1为设置多个servlet时的启动顺序

3.0 :注解内加 loadOnStartup = 1


所有javax.servlet.http包中的类和接口都继承、实现于

ServletConfig

该接口主要方法:
ServletContext getServletContext() //获取Servlet上下文对象 application

String getInitParameter(String name) // 在当前Servlet范围内,获取名为name的参数值

即获取初始化参数;设置初始值方法:
2.5:
web.xml
< servlet >
< >
< / >
< /servlet >

3.0

在注解中加 initParams = { @WebInitParam(name = " " , value = " ") }

a. ServletContext中常见方法(application):

getContextPath(); getRealPath();
setAttribute(); getAttribute();

String getInitParameter(String name) // 在当前Web容器范围内,获取名为name的参数值

只在web.xml中
< context - param >
< param - name >name< /param - name >
< param - value >value< /param - value >
< /context - param >

HttpServletRequest、HttpServletResponse

request、response就是各自的对象


编码问题

request.setCharacterEncoding(“utf-8”);

response.setCharacterEncoding(“utf-8”);

response.setContentType(“text/html;charset=UTF-8”);//可去jsp处复制

转载地址:http://zmjvb.baihongyu.com/

你可能感兴趣的文章
将Java Swing Jar 封装成exe文件
查看>>
端口显示被占用,netstat -aon | findstr却找不到端口的解决方法
查看>>
Linux内核中读写文件数据的方法
查看>>
USB电池充电基础:应急指南(转载)
查看>>
I2C死锁原因及解决方法【转】
查看>>
Ubuntu系统如何安装双网卡及更改网卡名称(eth0改为eth1)
查看>>
二维数组指针
查看>>
Linux下socket的五种IO模型
查看>>
1--ip首部
查看>>
2--第四层
查看>>
3--TCP三次握手
查看>>
4--网关
查看>>
4.内存非连续分配管理方式
查看>>
5.虚拟内存的概念、特征以及虚拟内存的实现
查看>>
mmap()函数:建立内存映射
查看>>
munmap()函数:解除内存映射
查看>>
三层交换机是否会代替路由器?
查看>>
5--TCP的状态
查看>>
6--企业常用防火墙iptables相关原理详解
查看>>
7--企业常用防火墙iptables核心配置讲解
查看>>