servlet和Filter的区别
2017-09-30 10:39
357 查看
1、创建一个dw工程,注意需要生成一个web.xml,如果没有生产web.xml,侧可以拷贝其他工程的web.xml使用,如果都没有,
去tomcate下找一个web.xml使用
2、web.xml配置:1、主页的配置:<welcome-file-list></welcome-file-list>
a、配置需要寻找的主页,使用子标签<welcome-file></welcome-file>标签内容使用自己设置的主页
2、servlet配置<servlet></servlet>
a、<servlet-name>随便起</servlet-name>
b、<servlet-class>类的全名</servlet-class>
*c、<load-on-startup>1</load-on-startup> 表示系统启动时就创建对象,详细参考servlet生命周期
*d、<init-param></init-param>启动类初始化的时候可以传递进servlet初始化参数
3、Filter配置<filter></filter>
a、<filter-name></filter-name>同servlet
b、<filter-class>类的全名</filetr-class>
* c、不用《load-on-startup>本来就系统启动时启动
*d、使用最多的场景<init-param></init-param>
4、mapping配置:<servlet-mapping></servlet-mapping>
<Filter-mapping></Filetr-mapping>
分别配置<servlet-name>和<filter-name>
都需要配置: <url-pattern>,一般servlet需要配置很明确的一个点,而filter需要配置
具有相似名字的所有请求
Servlet
1、导包
拷贝tomacte->lib-servlet-api.jar到工程下的->web-content-web-InF->lib
以后所有需要导入的包,都可以直接拷贝到web-INF的lib中
2、创建一个servlet ,让其继承httpservlet,重写doGet和doPost等方法,*如果需要通过servelt配置系统变量,则需要重写
init方法。
具体使用到的小技术的:1、获取参数是,使用的是HttpServletRequest中的getParameter方法
2、中文乱码可resp.setContentType解决
3、向前端页面写内容,分为3中办法,如果是ajax我们一般使用resp.getWriter().println("内容");
ajax收到的是字符串
JSONArray:数组形式展示内容,格式是[对象,对象,对象,对象] (字符串,数字、JSONArray,JSONObject)
JSONObject:对象形式展示内容{key:value,key:value}
如果是form表单我们 req.getRequestDispatcher("路径").forward(req,resp);
这叫由服务器转发
特点:a、浏览器只发送一条请求。b、地址栏显示的内容就是请求的接口
c、HTTP状态码,只有一个200
2、resp.sendredirest("路径");有服务器通知浏览器重定向,游浏览器发送一个请求。
a、浏览器请求两次,地址栏显示最终内容所在地址,http码先收到302,在发送请求收到的是200(成功),
3、使用resp.getWriter().println("");先写一个HTML页面,这个页面并不存在于系统当中。
当没有访问系统是都不存在这么一个页面 JSP
Servlet的配置:
web.xml方式,请参考web.xml配置部分
注解方式配置:1、只能配置在一个继承了httpservelt的类的上面
2、配置方式:webServlet("url-pattern"),器默认是赋值个url-pattern,其最终原理还是体现在一个web.xml中
去tomcate下找一个web.xml使用
2、web.xml配置:1、主页的配置:<welcome-file-list></welcome-file-list>
a、配置需要寻找的主页,使用子标签<welcome-file></welcome-file>标签内容使用自己设置的主页
2、servlet配置<servlet></servlet>
a、<servlet-name>随便起</servlet-name>
b、<servlet-class>类的全名</servlet-class>
*c、<load-on-startup>1</load-on-startup> 表示系统启动时就创建对象,详细参考servlet生命周期
*d、<init-param></init-param>启动类初始化的时候可以传递进servlet初始化参数
3、Filter配置<filter></filter>
a、<filter-name></filter-name>同servlet
b、<filter-class>类的全名</filetr-class>
* c、不用《load-on-startup>本来就系统启动时启动
*d、使用最多的场景<init-param></init-param>
4、mapping配置:<servlet-mapping></servlet-mapping>
<Filter-mapping></Filetr-mapping>
分别配置<servlet-name>和<filter-name>
都需要配置: <url-pattern>,一般servlet需要配置很明确的一个点,而filter需要配置
具有相似名字的所有请求
Servlet
1、导包
拷贝tomacte->lib-servlet-api.jar到工程下的->web-content-web-InF->lib
以后所有需要导入的包,都可以直接拷贝到web-INF的lib中
2、创建一个servlet ,让其继承httpservlet,重写doGet和doPost等方法,*如果需要通过servelt配置系统变量,则需要重写
init方法。
具体使用到的小技术的:1、获取参数是,使用的是HttpServletRequest中的getParameter方法
2、中文乱码可resp.setContentType解决
3、向前端页面写内容,分为3中办法,如果是ajax我们一般使用resp.getWriter().println("内容");
ajax收到的是字符串
JSONArray:数组形式展示内容,格式是[对象,对象,对象,对象] (字符串,数字、JSONArray,JSONObject)
JSONObject:对象形式展示内容{key:value,key:value}
如果是form表单我们 req.getRequestDispatcher("路径").forward(req,resp);
这叫由服务器转发
特点:a、浏览器只发送一条请求。b、地址栏显示的内容就是请求的接口
c、HTTP状态码,只有一个200
2、resp.sendredirest("路径");有服务器通知浏览器重定向,游浏览器发送一个请求。
a、浏览器请求两次,地址栏显示最终内容所在地址,http码先收到302,在发送请求收到的是200(成功),
3、使用resp.getWriter().println("");先写一个HTML页面,这个页面并不存在于系统当中。
当没有访问系统是都不存在这么一个页面 JSP
Servlet的配置:
web.xml方式,请参考web.xml配置部分
注解方式配置:1、只能配置在一个继承了httpservelt的类的上面
2、配置方式:webServlet("url-pattern"),器默认是赋值个url-pattern,其最终原理还是体现在一个web.xml中
相关文章推荐
- Servlet中的过滤器(拦截器)Filter与监听器Listener的作用和区别
- servlet/filter/listener/interceptor区别与联系
- servlet/filter/listener/interceptor区别与联系
- servlet/filter/listener/interceptor区别与联系
- servlet,filter区别,网上找到,感觉挺好的。
- servlet/filter/listener/interceptor区别与联系
- 四个概念详细分析servlet、filter、listener、interceptor的区别与联系?
- 【知识点】Filter、Servlet、Listener区别与联系
- servlet/filter/listener/interceptor区别与联系
- Filter与Servlet的区别和联系
- servlet/filter/listener/interceptor区别与联系
- servlet/filter/listener/interceptor区别与联系(转)
- 【知识点】Filter、Servlet、Listener区别与联系
- web.xml中filter,servlet和listener区别
- servlet/filter/listener/interceptor区别与联系
- Servlet Filter与Spring interceptor的区别和应用Servlet Filter与Spring interceptor
- servlet/filter/listener/interceptor区别与联系
- servlet/filter/listener/interceptor区别与联系
- filter与servlet区别
- 四个概念详细分析servlet、filter、listener、interceptor的区别与联系?