JavaWeb学习(1)
目录
一、什么是JavaWeb
在Java中,动态web资源开发的技术统称为JavaWeb
Web应用程序编写完毕后,若想提供给外部访问,需要一个服务器来统一管理
二、静态web和动态web
静态web
动态web
动态web的优点:
- web页面可以动态更新,所有用户看到的不是一个东西
- 可以与数据库交互(数据持久化)
三、Web服务器(Tomcat)
服务器:是一种被动的操作,用来处理用户的请求和给用户一些响应信息
如何使用Tomcat?
1、安装
2、了解文件夹的作用
3、启动/关闭Tomcat(方式之一)
访问测试:localhost:8080
4、配置
可以配置启动的端口号
- Tomcat默认端口号:8080
- Mysql:3306
- http:80
- https:443
四、Http
4.1 是什么
超文本传输协议,是一个简单的请求-响应协议,通常运行在TCP之上
- 文本:html、字符串
- 超文本:图片、音乐、视频、定位、地图
4.2 两个时代
HTTP 1.0:客户端与web服务器连接后,只能获取一个web资源,断开连接
HTTP 1.1:客户端与web服务器连接后,可以获得多个web资源
4.3 Http请求
客户端------发请求(Request)------服务器
请求方式:
- Get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效
- Post:请求携带参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但不高效
4.4 Http响应
服务端------响应(Response)------客户端
响应状态码【重点】
200:请求响应成功
3xx:请求重定向
4xx:找不到资源
5xx:服务器代码错误
五、Maven
是一个工具,帮我们自动导入和配置jar包
核心思想:约定大于配置(有约束,不要去违反)
maven环境优化:1、修改web.xml为最新的 2、将maven的结构搭建完整(补充java、resources包)
六、Servlet
把实现了Servlet接口的java程序叫做,Servlet
Servlet有两个默认实现类:HttpServlet,GenericServlet
为什么需要编写Servlet的映射?
我们写的是java程序,客户端要访问,需要连接web服务器。所以我们要在web服务器中注册写的servlet,并提供给它一个客户端能够访问的路径
七、HttpServletResponse
Web服务器接收到客户端的http请求,针对这个请求,分别创建一个代表请求的HttpServletRequest对象,和代表响应的HttpServletResponse对象
- 如果要获取客户端请求过来的参数,找HttpServletRequest
- 如果要给客户端响应一些信息,找HttpServletResponse
7.1 常见应用
7.1.1 向浏览器输出消息
7.1.2 下载文件
1、要获取下载文件的路径
2、下载文件名是什么
3、让浏览器能够支持下载(设置头部文件信息)
4、获取下载文件的输入流
5、创建缓冲区
6、获取OutputStream对象
7、将FileOutPutStream流写入到buffer缓冲区
8、使用OutPutStream将缓冲区中的数据输出到客户端
7.1.3 验证码功能
7.1.4 实现重定向
面试题:请你聊聊转发和重定向的区别?
相同点:页面都会实现跳转
不同点:
- 请求转发的时候,url不会产生变化 (307)
- 重定向的时候,url会发生变化 (302)
八、HttpServletRequest
8.1 常见应用
8.1.1 获取前端传递的参数
8.1.2 请求转发
九、Cookie和Session
会话:用户打开一个浏览器,点击超链接,访问web资源,关闭浏览器,这个过程可以称之为对话
有状态对话:一个同学来过教室,下次再来教室,我们会知道这个同学曾经来过,称之为有状态对话
保存会话的两种技术:
1、cookie(客户端技术)
2、session(服务器技术)
9.1 Cookie
1、从请求中拿到cookie信息
2、服务器响应给客户端cookie
删除cookie:
- 不设置有效期,关闭浏览器,自动失效
- 设置有效时间为0
9.2 Session
服务器会给每个用户(浏览器)创建一个Session对象
删除session:
- 手动注销
- web.xml中配置
9.3 区别
- Cookie是把用户的数据写给用户的浏览器,浏览器保存
- Session是把用户的数据写到用户独占的Session中,服务器端保存
原文地址:https://blog.csdn.net/supercool7/article/details/142971514
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!