HTTP
- get(查询/获取)、post(修改)、put(添加)、Delete(删除)
- get在地址栏会显示请求数据
- get传输数据有限制
- Post安全性高
servlet(serve Applet)
java编写的服务器端程序
主要功能:交互式地浏览和修改数据,生成动态网页
重写HttpServlet的doGet和doPost方法,或重写service的get和post请求响应
servlet生命周期
加载、初始化、处理请求、服务结束,有javax.servlet.Servlet接口的init、service和destroy方法表达。
- 加载servlet的class–>实例化Servlet–>调用init初始化–>请求到达后容器调用service的doXXX()–>容器关闭调用 destroy
servlet的forward和redirect
forward:服务器端转向,浏览器地址不会变,还是原来的请求。效率高
redirect:客户端跳转,浏览器地址变,重新发送请求。效率低。
需要跳转到其他服务器上,必须用sendRedirect()方法
JSP和servlet联系
所有JSP文件都会翻译成继承HttpSevlet类
Servlet的应用逻辑在Java文件,完全从HTML分离,在页面输出PrintWriter pw = response.getWriter();pw.write(“hahahha”)。JSP=Servlet+HTML。
JSP注重视图,Servlet注重控制逻辑。
jsp的内置对象
request、response、session、application、(四大作用域:page页面、request请求、session会话、application应用级别)pageContext、out、config 、page、exception
request | 客户端请求 |
---|---|
response | 响应 |
session | 与请求相关的会话 |
application | servlet正在执行的内容 |
pageContext | 页面属性,取参数 |
out | 浏览器的输出信息 |
config | 取服务器的配置信息 |
page | JSP页面 |
exception | 错误页面处理 |
session和cookie区别
会话跟踪技术
- cookie:在客户端通过记录信息确定用户身份,不安全,保存数据不超过4K。
session在服务器端记录信息确认身份,session的实现以来Cookie,sessionId(session的唯一标识需存在客户端)。占内存。
购物车用cookie+数据库,当cookie取不出数据时,从数据库获取。
- 使用场景:重要数据放session
MVC
M:模型-JavaBean
V:视图-html、jsp、volicity、freemaker
C:控制器-servlet、Action
Model1:jsp+service+dao
Model2:jsp+servlet+service+dao
使用struct和springmvc框架:jsp+control+action+javabean