javaweb基础
C/S结构:C/S (Client/Server)结构,即大家熟知的客户机和服务器结构
B/S结构:B/S(Browser/Server)结构即浏览器和服务器结构
http通信协议:超文本传输协议
JSP全称Java Server Pages,是一种动态网页开发技术。
动作元素:
1.jsp:forward 把请求转到一个新的页面。
2.jsp:include 在页面被请求的时候引入一个文件。
3.jsp:useBean 寻找或者实例化一个JavaBean。
九大内置对象:web容器直接初始化,可以直接使用
request HttpServletRequest 接口的实例
response HttpServletResponse 接口的实例
out JspWriter类的实例,用于把结果输出至网页上
session HttpSession类的实例
application ServletContext类的实例,与应用上下文有关
config ServletConfig类的实例
pageContext PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
page 类似于Java类中的this关键字
Exception Exception类的对象,代表发生错误的JSP页面中对应的异常对象
jsp指令:<%@page %> 定义网页依赖属性
<%@include…%>包含其他文件
<@%taglib…%> 引入标签库的定义
四大作用域:
时间周期
pagecontext: 当前页面从打开到关闭这段时间
request:HTTP请求开始到结束这段时间
session:当前会话有效
application :服务器启动到停止这段时间
作用域范围:
pagecontext<request<session<appliacation
el(表达式语言):
语法:
表达式使用
e
l
表达式获取作用域的属性
e
l
函数,
{表达式} 使用el表达式获取作用域的属性 el函数,
表达式使用el表达式获取作用域的属性el函数,{ns:func(a1,a2…)}
jstl标签库
<%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>
foreach:
<c:forEach
items=“”
begin=“”
end=“”
step=“”
var=“”
varStatus=“”>
<c:if> 与我们在一般程序中用的if一样
<c:out> 用于在JSP中显示数据,就像<%= … >
格式化标签:<%@ taglib prefix=“fmt”
uri=“http://java.sun.com/jsp/jstl/fmt” %>
日期格式化: <fmt:formatDate pattern=“yyyy-MM-dd”
value=“${now}” />
mvc模式
MVC 模式代表 Model-View-Control(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。
分层的思想:userBean,model,control,dao,utils
servlet
生命周期:
Servlet 通过调用 init () 方法进行初始化。
Servlet 调用 service() 方法来处理客户端的请求。
Servlet 通过调用 destroy() 方法终止(结束)。
最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的
转发: request.getRequestDispatcher().forward();
重定向:response.sendRedirect();
目录映射:/ 映射到端口后的位置:http://localhost:8080/
注解的使用:@WebServlet("/。。。") 代替web3.0一下的web.xml中的servlet的<servlet-mapping>元素中servlet的配置
@MultipartConfig() 文件的上传
@WebFilter 用于将一个类声明为过滤器
@weblistener 用于将一个类声明为监听器
核心接口类:servletConfig,可以获得xml文件中servlet标签下的内容
ServletContext中不仅包含了 web.xml 文件中的配置信息,还包含了当前应用中所有Servlet可以共享的数据
httpservletrequest接口:request请求
httpservletresponse接口:response响应
文件的上传:① form表单的enctype 必须值为:multipart/form-data
② 接收文件上传的servlet,必须有 @MultipartConfig注解
③ 使用request.getPart(name值) : 获取文件对象
④ part.write(path) : 进行文件持久化
⑤ 文件的真实名称在头信息中,从头信息中进行字符串处理,从而获取文件名称
uuid 的使用: UUID.randomUUID().toString()
web-info安全目录
安全就是客户端无法访问,只有服务端可以访问的目录,转发可以跳转到安全目录
ajax
AJAX = 异步 JavaScript 和 XML。
AJAX 是一种用于创建快速动态网页的技术
onreadystatechange 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。
readyState
存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。
0: 请求未初始化
1: 服务器连接已建立
2: 请求已接收
3: 请求处理中
4: 请求已完成,且响应已就绪
status 200: "OK"
404: 未找到页面
formdate 异步传文件
json
JSON(JavaScriptObject Notation, JS 对象简谱) 是一种轻量级的数据交换格式。
json常用的对象是键值对
json数组相当于Java的list集合
json对象相当于java的map集合