是:一门超文本标记语言;
作用:用于展示数据;
组成:html根标签,下面包含了一个head头标签和body身标签;
快速入门:
1.直接利用idea提供的模版创建html文件;
2.修改
3.直接在
语法格式:
1.html文件的后缀名必须是 .html或.htm
2.html中的每个标签都是w3c提前固定好的;
3.每个标签都有开始和闭合标签,也可以合并,称为自闭合标签;
4.标签名不区分大小写.,建议小写;
5.html语法不严谨;
图片标签: 定义图片
1.src:规定显示图像的URL(统一资源定位符)
2.height:定义图像的高度
3.width:定义图像的宽度
音频标签:
1.src:规定音频的URL
2.controls:显示播放控件
视频标签:
1.src:规定视频的URL
2.controls:显示播放控件
超链接:可以点击后进行跳转;使用a标签表示,
里面可以通过href属性指定跳转的位置,
可以是相对路径,也可以是网络中的路径,
但是如果是网络中的路径需要加:http://前缀;
JavaScript常用对象:
,CSS,javascript,tomcat
是:servlet 是运行在 Web 服务器中的小型 Java 程序。相当于程序员写好的servlet交给web服务器软件, web服务器软件负责创建这个servlet类的对象,并且帮我们调用servlet类中的方法!同时servlet是一个接口!
编写一个servlet类:
方式1:我们自定义的类实现servlet接口,重写里面所有的方法;
(不推荐,因为需要处理的事情太多)
方式2: 我们自定义的类继承HttpServlet,重写里面的两个方法,
doGet和doPost,这两个方法,就可以专门针对浏览器的
get请求和post请求进行处理!
代码步骤: 完成tomcat之后
1.在pom.xml文件中引入servlet坐标;
(由于所有的web服务器内部都有servlet的jar包,为了避免冲突,
我们需要给maven引入的servlet坐标设置编译级别)
2.自定义的类继承HttpServlet,重写里面的两个方法,doGet和doPost
3.需要给servlet指定一个访问路径;
4.配置xml:
5.再配置pom.xml,html
写成 80和取消/day10,在熟悉之后可以这样写,
访问的时候路径地址栏就不会再显示
7.修改Servlet模板:
是:一个接口,表示的是浏览器给服务器请求的时候,把所有的请求装成一个对象!
作用:程序员可以在servlet的doGat方法或doPost方法中,通过这个对象,获取用户请求相关的一切消息!
request对象的生命周期: 是由web服务器负责创建该对象,并且在调用servlet中的doGet方法或doPost方法 的时候,将这个对象,传递过去; 每次当浏览器给服务器发送请求的时候,web服务器都会创建出 一个request对象; 当这次请求得到服务器的响应后,该request对象就会死亡!
获取浏览器传递的参数:
1.getParameter(key);获取单个值
2.getParameterValuse(key);获取数组值;
3.getParameterMap();获取所有的键值对参数;
是:服务器的一个内部跳转的行为,对于浏览器来说,浏览器只发出了1次请求,且得到1次响应;
作用:让多个servlet对本次请求作出处理;
代码实现:reques.getRequesDispatcher("/转发资源").forward(request,reponse);
getRequestDispatcher表示获取转发器,需要指定资源路径,不带虚拟目录;(在tomcat中配置的路径)
forward表示转发的动作,需要把原始的请求对象和响应请求交给指定的资源
请求乱码问题:get请求乱码有两种解决方法:1.tomcat8以后不用管 内部已经解决了
是:表示的是一个响应对象,服务器想对浏览器响应的一切消息,都会封装到这个对象中;
在浏览器每次发送请求的时候,web服务器都会创建出一个response对象;
当这次请求得到服务器的响应后,该response对象就会死亡!
作用:让程序员通过该对象,控制给浏览器响应的内容;
Response设置响应数据的功能介绍
Response完成重定向
Response响应字符数据 :响应字符数据使用字符输出流PrintWriter getWriter();
Response响应字节数据:响应字节数据使用字节输出流SevletOutputStream getOutputStream();
如何响应数据:响应字符数据使用字符输出流,响应字节数据:使用字节输出流
如何获取字符输出流:PrintWriter getWriter();
如何获取字节输出流:SevletOutputStream getOutputStream();
重定向是:告诉浏览器,你的请求,我处理不了,我给你指定一个位置,你去哪里办理即可
与转发的区别:1.转发对于浏览器来说,一共发了1次请求,得到了1次响应,
而重定向,对于浏览器来说,发出了两次请求,得到了2次响应;
2.对于服务器来说,转发是服务器的内部行为,所以路径上不带虚拟目录,
而重定向对于服务器来说是外部的访问行为,所以路径中需要带虚拟目录
3.转发只能是服务器内部的资源跳转,重定向可以是任意位置;
代码实现://重定向的代码可以动态获取tomcat配置的虚拟目录getServletContext().getContextPath()
response.sendRedirect(getServletContext().getContextPath +"/resp2");
访问路径总结:1.凡是从浏览器发起的路径,给服务器发请求,都需要带虚拟目录(就是tomcat配置的路径)
例如:html页面,from表单的action,超链接href,图片的src,重定向!
2.凡是服务器内部的路径(转发),都不需要带虚拟目录;
给浏览器响应字节数据:直接利用io流的技术操作即可;
1.面向过程,知已使用io流操作;(只负责给浏览器写数据,浏览器会自动读数据)
2.面向commons-io工具,利用工具一步到位;
是:JSON可以简单理解为就是一个特殊格式的字符串,在java语言中,按JSON的语法格式要求,将数组组装起来, 通过网络响应给浏览器之后,浏览器可以通过js对JSON字符串进行解析,得到原始数据,并利用DOM对象操作页面 即可做到页面动态显示;网络中数据传输的载体的一种格式
作用:配合异步交互的技术,实现对html页面上的内容,动态展示;
异步交互与同步交互:
同步交互就是浏览器给服务器发送请求之后,只要服务器还没有处理完请求,浏览器始终处于等待 状态,无法进行其他操作; 异步交互就是当与浏览器给服务器发送请求之后,服务器在请求的过程中,浏览器依然可以进行 其他的操作,相当于java中的多线程的效果;(局部刷新)
JSON的语法格式:本质就是一个字符串,要求键值对数据都使用{}包裹起来,键使用双引号引起来,值是数字, boolean可以直接写,其他类型也使用双引号引起来
在js中定义json:let 变量名 = {"键1",:"值1","键2":"值2"}