一、HTTP协议中的响应代码
响应代码从1xx--5xx一共有41中。常见的
404:表示访问的页面不存在。这表示一个浏览器的错误,就是服务端没有提供这个服务,你却去访问。这个锅要算在浏览器头上,而不能算在服务器头上。
当然,有的时候因为服务器没有配置这个路径,所以浏览器访问不到对应的资源。比如在web.xml中没有指定要访问页面的路径,就会得到404错误。
500:表示服务端的错误。比如要增加新的英雄的时候,血量是一个数字,但是你提交的数据是123a,而在服务端使用的是Float.parseFloat(),视图把它转换为数字的时候,就会抛出异常。这就是服务端的问题。
二、JSP
1. <%@page contentType="text/html;carset=UTF-8" pageEncoding="UTF-8" import="java.util.*"%>
JSP的page指令:<%@page
contentType=“text/html;charset=UTF-8”,告诉浏览器以UTF-8进行中文解码
pageEncoding="UTF-8"如果jsp文件中出现了中文,这些中文使用UTF-8进行编码
import=“java.util.*”导入其他类,如果导入多个类,彼此用逗号隔开,import="java.util.*,java.sql.*"
2.为什么JSP可以在html中运行java代码
JSP被转译成了Servlet
执行过程:
1. 把 hello.jsp转译为hello_jsp.java
2. hello_jsp.java 位于
d:\tomcat\work\Catalina\localhost\_\org\apache\jsp
3. hello_jsp.java是一个servlet
4. 把hello_jsp.java 编译为hello_jsp.class
5. 执行hello_jsp,生成html
6. 通过http协议把html 响应返回给浏览器
我们说HelloServlet是一个Servlet,并不是因为他的类名里面有一个Servlet单词,而是因为它继承了HttpServlet。
打开转译hello.jsp后得到的hello_jsp.java。可以发现它继承了类org.apache.jasper.runtime.HttpJspBase。而HttpJspBase继承了HttpServlet
所以hello_jsp.java是一个Servlet。
3.页面元素
3.1、静态内容:由HTML,CSS,JS等内容
3.2、指令:以<%@ %>,比如<%@page import="java.util.*"%>
3.3、表达式<%=java表达式%>:用于输出一段html
3.4、Scriptlet:<%JAVA代码%>,之间可以写任何java代码
3.5、声明:<%!字段方法%>
3.6、动作:<jsp:include page="Index">在jsp页面中包含另一个页面。
3.7、注释:<%-- --%>
4、Cookie
Cookie是一种浏览器和服务器交互数据的方式。Cookie是由服务器端创建,但不村保存在服务器上。创建好之后,发送给浏览器,浏览器保存在用户本地。下一次访问网站的时候,就会把该cookie发送给服务器。
有的网站登录的时候,会出现一个选项,问你时候一周内,或者是否记住密码,如果选了,那么一周之内,都不需要再输入账号密码,这个功能就是靠cookie实现的
5、Session
翻译为会话。指的是用户打开浏览器访问一个网站开始,无论在这个网站中访问了多少页面,点了多少链接,都属于同一个会话。知道该用户关闭浏览器为止,都属于同一个会话。