servlet再次总结

 请求重定向和请求转发的区别,请求重定向
redirect是不推荐用的,因为在跳转的过程中参数是传不过去的,原因调用servlet的request和response和申请的servlet  request..和response不是一个,但是可以在不同站点之间跳转,而后者只能在一个servlet之间跳转,但是请求的request和response和调用的是同一个,后者是常用的,可以传递参数。




post和get方式的提交不同,编码的问题,
前者的提交编码是html页面的编码,可以在后台转码
后者提交的参数在URL后边,提交的编码是浏览器的默认编码,所以尽量别用中文传参,后台编码转码是没用的。








绝对路径和相对路径的不同

绝对路径是以/开头的,是全的http://
后者是如servlet2这样的短路径。


请求域来接受传递数据的不同,

在后台常用setAttribute来传递参数,
这便是请求域。




获取请求中数据,方式,姿态,
可以常用getParameter获取单个参数。
获取数组如前台的多选框用getParameterValues





servlet运行原理,
当发过来的请求,是静态的请求时,那么服务器就会直接返回信息,当是动态的请求时就会
servlet客户端发送请求到servlet容器中的jvm中激活servlet,servlet只创建一个实例,就是在第一次请求的时候创建的,然后分发给其他servlet来处理,最后返回给web容器,返回给客户端。框架就是对于servlet的一种封装。


servlet的生命周期,
首先会在第一次请求的时候创建一个实例,然后初始化,初始化是为了加载后边的处理servlet的资源,准备好资源,然后交给servlet处理,Get处理get请求,Post处理post请求。当调用销毁方法时,比如关了链接数据库,把io关了,把创建的实例销毁,把资源归还给servlet容器,把容器释放。为其他请求腾资源。空间。

当多个请求时只创建一个实例,第一个请求由一个线程去处理,第二个请求由另一个线程请求去处理。




servlet线程安全性,

servlet是默认多线程的处理,所以成员变量和共享型资源都是不安全的,所以要少用成员变量,设置线程等待,而request请求是安全的,因为一个请求只有一个线程来处理。

servlet过滤器,我更愿意把它说成servlet连它是在用户和web服务器之间的一层,检查request请求,处理response响应,一般总在中文乱码和权限控制时使用,注意web.xml的控制路径,过滤路径是请求的URL中的路径。



servlet监听器一般用来统计访问网站人数。

 jsp隐式对象,就是在容器中被定义好的对象,内嵌好的对象,你直接用就好了,严禁重复声明对象,直接使用容器的服务和资源根据需求,这就是九大内置对象,servlet中也有,分为四种类型,输入输出类型,通信类型,错误类型,页面传递类型,直接用变量调用里边的方法就行了。

上一篇:对于Java的认识


下一篇:springboot整合redis