一、创建maven的web项目
1.使用骨架
2.*不使用骨架(结合javaweb问题中的创建maven)
修改完pom.xml后记得右上角刷新xml
最后apply-ok即可
完整项目骨架
注意事项
1.修改pom文件后要刷新
二、idea使用tomcat
1.集成本地tomcat
2.pom导入tomcat插件
<build> <finalName>Web-demo</finalName> <plugins> <!--tomcat插件--> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </build>
三、Servlet
Servlet快速入门
1.在pom.xml中导入servlet,在pom中配置tomcat插件
2.
3.运行,结果如下
servlet的生命周期
servlet方法
1. init方法:
只会被调用一次,刷新页面后不会调用此方法
修改LoadOnStartUp 属性可以修改init的调用时机
刷新tomcat可以看到init()方法再servlet被创建的时候就调用了
2.service方法:
3.销毁方法
4.ServletConfig
servlet体系结构
创建一个类,继承httpServlet,调用doget和dopost方法
4.doget方法:
直接在tomcat上运行,控制台输出get
5.dopost方法:
新建一个html,在html中建一个简单的表单,使用post方法,用submit类型的input提交表单,网页自动跳转到/web-demo/demo4,控制台显示post
Servlet urlPattern配置
urlpatterns:一个servlet可以配置多个访问路径
当一个路径同时满足精确匹配和魔力匹配时,精确匹配的优先级高于目录匹配
xml配置servlet
四、request
request请求数据
request继承体系
request获取请求数据
在网站补全/req1回车后看控制台
1.获取请求方法
2.获取请求头
3.获取post请求体、请求参数
4.request通用方式获取请求参数
request通用方式会把参数拆封成map集合,通过集合可以得到参数
1.getParameterMap()
get方式提交会显示在导航栏
2.getParameterValues()
运行提交后控制台显示
3.getParameter()
运行提交后控制台显示
4.dopost使用doget方法
还是能使用doget方法
idea使用Servlet模板创建servlet
修改idea默认模板,修改@WebServlet的参数,添加this.doget()方法
创建模板
5.request请求参数中文乱码问题
6.request请求转发
五、Response
Response重定向
运行后地址栏输入补全resp1回车后会自动跳转到resp2
也可以重定向到一个网站上
资源路径问题
response响应字符数据
response响应字节数据
六、MVC模式
七、会话跟踪技术
1.cookie的基本使用
先访问aservlet发送cookie给服务器,再访问bservlet获取服务器的全部cookie再通过遍历得到想要的cookie
2.cookie的原理
3.cookie的使用细节
设置cookie的存活时间后,先访问aservlet发送cookie给服务器,关闭浏览器,再打开,访问bservlet发现还是可以拿到cookie
aservlet把中文字符通过url编码
bservlet进行解码
4.session
其方法与response类似
session获取数据,demo1进行存储,demo2进行获取
控制台输出
5.session的原理
tomcat在响应1的时候会携带 一个set-cookie的响应头,里面有sessionid,(运行demo1时打开F12-network,在response Header里面有),客户端进行请求2时会携带相同的cookie(同理F12可以看到cookie内容与demo1的id相同)以此保证一次会话的多次请求之间获取的session是同一个
6.session的使用细节
控制台重启tomcat,访问demo1,控制台ctrl+c关闭tomcat,在此启动tomcat,访问demo2,发现session不会关闭,这是因为session的钝化和活化
小结
八、Filter过滤器
不放行
放行