本文章所有思路与素材都来自于 狂神说Java 如有冒犯 多多见谅,自己总结自己看用。
Session把用户的数据写到用户独占的Session中,服务端保存(保存重要的信息,减少服务器浪费的资源)
Session对象由服务器创建。
Session的使用费场景:
1.保存一个登录用户的信息
2.购物车信息
3.在整个网站中经常会使用的数据,我们将它保存在Session中;
使用Session:
package com.lss;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
public class mavenDame01 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//解决乱码问题
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
resp.setContentType("text/html;charset=utf-8");
//得到Session
HttpSession session = req.getSession();
//给Session中存东西
session.setAttribute("name","lss");
//获取Session的ID
String id = session.getId();
//判断Session是不是新创建
if(session.isNew()){
resp.getWriter().write("session创建成功,id"+id);
} else{
resp.getWriter().write("session已经早服务器中存在,id"+id);
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req,resp);
}
}
//得到Session
HttpSession session = req.getSession();
String name = (String) session.getAttribute("name");
System.out.println(name);
}
关于cookie和session的区别:
1.cookie是服务器发给客户端,客户端在请求服务器的时候携带cookie
2.session客户端到达的时候登记一个Session 用户拿到的SessionID(SessionID:每个用户唯一),服务器中的Session可以存东西。
JSP
1.什么是JSP:java Server Pages:java服务器端页面,也和Servlet一样,用于动态web技术!
servlet比JSP先出现:如果一个简单的jsp文件需要在Servlet中进行书写,需要进行每一样的out.write(" ");进行书写
最大的特点:
写JSP就像写HTML
区别:
1.HTML只给用户提供静态的数据
2.JSP页面可以嵌入JAVA代码,为用户提供动态数据
2.JSP原理
思路: JSP到底是真么执行的!
1.代码层面没有任何问题
2.服务器内部工作
tomcat中有一个work目录
IDEA中使用Tomcat的会在IDEA的tomcat中生产一个work目录
浏览器向服务器发送请求,不管访问什么资源,其实都是在访问Servlet;
JSP最终也会被转换成一个JAVA类
JSP本质上就是一个Servlet
1.判断请求
2.内置一些对象
3.输出页面前增加的代码
4.以上的各个对象我们可以在JSP页面中直接使用
按照神的位置:我确实没有找到idea的根,雀氏fw,但是还是可以运行。反复观看即可足矣理解。
在JSP页面中:
只要是JAVA代码就会原封不动的输出;
如果是HTML代码,就会被转换为:此番格式,输出到前端