标签:java类 http2 环境 带来 维护成本 头信息 系统 com 遇到的问题
web开发:
web,网页的意思
静态web
动态web
在java中,动态web资源开发的技术统称为javaweb;
可以提供浏览器访问的程序
web应用程序编写完毕后,若想提供给外界访问:需要一个服务器来统一管理。
1.3、静态web
ASP
PHP
JSP/Servlet
服务器是一种被动的操作,用来处理请求和响应。
IIS
微软的;ASP....,Windows中自带的。
Tomcat
Apache的;免费开源;中小型系统和并发访问用户不是很多的场合下被普遍使用;Tomcat实际上运行JSP页面和Servlet。
...
配置环境变量
1.文件夹作用:
2.可能遇到的问题:
1.java环境变量没有配置
2.闪退问题:需要配置兼容性
3.乱码问题: 配置文件中设置(尽量不要修改配置文件)
3.配置:
可以配置启动的端口号:默认8080
可以配置主机的名称:默认localhost
默认的网站应用存放位置:webapps
4.面试题:
谈谈网站是如何进行访问的?
1.输入一个域名,回车;
2.检查本机的C:\Windows\System32\drivers\etc\hosts配置文件下有没有这个域名的映射
1.有:直接返回对应的ip地址,这个地址中,有我们需要访问的web程序
127.0.0.1 www.liuyang.com
2.没有:去DNS服务器找,找到后返回
将自己写的网站放到服务器(Tomcat)中指定的web应用文件夹下(webapps),就可以访问了
网站结构
HTTP(超文本传输协议)是一个简单地请求响应协议,通常运行在TCP上
Https:安全的
200:请求响应成功
3xx:请求重定向
4xx:找不到资源
5xx:服务器代码错误
502:网关错误
? 1.浏览器获得url对应的请求,向操作系统请求该url对应的iP地址
? 2.操作系统查询DNS (首先查询本地host文件,没有则查询网络)获得对应ip地址
? 3.浏览器发送tcp连接请求向 ip地址对应的服务器。
? 4.服务器收到tcp连接请求后,回复可以链接请求。
? 5.浏览器收到回传的数据,确认ok后,还会向服务端发送数据包表示三次握手结束。
? 6.三次握手成功后,浏览器和服务端开始tcp连接形式传输数据包。
? 7.服务器传给浏览所需要的资源数据。
? 8.浏览器获得数据,渲染网页然后呈现给用户。
项目架构管理工具:方便导入jar包,Maven的高级之处在于,他会帮你导入jar包所依赖的其他jar包;
核心思想:约定大于配置,Maven会规定好你该如何编写java代码,必须按照这个规范来;
配置环境变量
阿里云镜像下载,在settings.xml下配置
建立一个本地仓库:localRepository
1.创建一个MavenWeb项目
2.IDEA中Maven设置
3.创建一个干净的Maven项目
是Maven的和核心配置文件
1.由于约定大于配置,可能会遇到我们写的配置文件,无法被导出或者生效的问题,解决方案:
2.web.xml头信息过时
替换为和tomcat一致
Servlet接口Sun公司有两个默认的实现类:HttpServlet,GenericServlet
1.构建一个普通的Maven项目,删掉里面的src目录,在里面建立Moudel,这个空的工程就是Maven主工程;
2.父项目中的jar包子项目可以直接使用
3.修改web.xml为最新,将maven项目搭建完整(java,resources)
4.编写Servlet程序,继承HttpServlet,重写doGet和doPost方法
5.编写Servlet的映射:
为什么需要映射:我们写的是java程序,要通过浏览器访问,而浏览器需要连接web服务器,所以要在web服务中注册我们写的Servlet,还需要给他一个浏览器能访问的路径;在web.xml中做映射;
6.配置Tomcat
注意配置项目发布的路径
7.启动测试
Servlet是由web服务器调用,web服务器收到浏览器请求后
1.一个Servlet指定一个映射路径
2.一个Servlet指定多个映射路径
3.一个Servlet指定通用映射路径(/hello/*)
4.默认请求路径(/*)
5.指定一些后缀或前缀(*.do),*前面不能加项目映射的路径
6.优先级问题:
指定了固有的映射路径优先级最高,如果找不到就会走默认的处理请求
web容器在启动的时候,会为每个web程序都创建一个对应的ServletContext对象,它代表了当前的web应用
标签:java类 http2 环境 带来 维护成本 头信息 系统 com 遇到的问题
原文地址:https://www.cnblogs.com/shuita/p/12813715.html