Cookie cookie = new Cookie(key,value);
response.addCookie(cookie);
新建CookieServlet类测试
@WebServlet(“/cookieTest”)
public class CookieServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Cookie c1 = new Cookie(“name”, “zhangsan”);
resp.addCookie(c1);
}
}
浏览器访问该地址
再次访问,浏览器会携带这cookie中数据去访问服务器
获取所有Cookie
@WebServlet(“/getCookie”)
public class GetCookieServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Cookie[] cookies = req.getCookies();
String name = null;
String age = null;
for (Cookie cookie : cookies) {
if (cookie.getName().equals(“name”)) {
name = cookie.getValue();
}
if (cookie.getName().equals(“age”)) {
age = cookie.getValue();
}
}
resp.getWriter().write(“name:” + name + “, age:” + age);
}
}
浏览器访问该地址:
成功获取到所有cookie对象,cookie对象是键值对的,
一个name对应一个value
Cookie有效期设置
设置Cookie的有效期,默认cookie有效期关闭浏览器失效,通过setMaxAge方法设置cookie的有效期
@WebServlet(“/cookieTest”)
public class CookieServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Cookie c1 = new Cookie(“name”, “zhangsan”);
Cookie c2 = new Cookie(“age”, “34”);
//通过setMaxAge方法设置cookie的有效期,参数为秒
c1.setMaxAge(60);
c2.setMaxAge(60);
resp.addCookie(c1);
resp.addCookie(c2);
}
}
Session技术
session技术为服务器技术,将会话过程产生的数据保存到服务器内存中
浏览器第一次访问服务器时,服务器会在服务器端创建session文件
然后,将session文件名称(想象成钥匙)以cookie的形式响应给浏览器
当浏览器第二次访问服务器时,只需要随身携带钥匙(session文件名),再通过该钥匙找到内容
session基本操作
服务器创建session
@WebServlet(“/sessionTest”)
public class SessionServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//获取session(就是session文件)
HttpSession s1 = req.getSession();
//向session存储数据
s1.setAttribute(“name”, “张三”);
}
}
浏览器访问该地址:
再次访问请求头中会有服务器响应给浏览器的钥匙
设置Session有效期:
1.在web.xml文件中配置
2.在tomcat服务器配置文件中配置
session-config,默认值为:30分钟
30
在java程序中设置
s1.setMaxInactiveInterval(10);
参数为秒
JSP
JSP,Java Server Pages,Java服务器端页面(网页)技术
在JSP页面中,Java代码可以和HTML代码共存,其中Java代码负责处理数据,HTML代码负责显示数据
jsp就是一个Servlet
创建JSP页面
右击WebContent—New—JSP File—输入文件名
或者:右击WebContent—New—Other—Web—JSP File—输入文件名
修改jsp页面的编码为UTF-8
Window—Preferences----搜索JSP—Templates----
JSP基本语法
代码块
在JSP页面中可以将Java代码块写到:
<% Java代码块 %>
<%@ page language=“java” contentType=“text/html; charset=utf-8”
pageEncoding=“utf-8”%>
<% out.write(“helloword”) %>
输出变量/表达式结果:
<%=变量 或 表达式%>
<%@ page language=“java” contentType=“text/html; charset=utf-8”
pageEncoding=“utf-8”%>
<%
out.write(“helloword”)
int a = 12;
int b = 30;
%>
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
总结
我个人认为,如果你想靠着背面试题来获得心仪的offer,用癞蛤蟆想吃天鹅肉形容完全不过分。想必大家能感受到面试越来越难,想找到心仪的工作也是越来越难,高薪工作羡慕不来,却又对自己目前的薪资不太满意,工作几年甚至连一个应届生的薪资都比不上,终究是错付了,错付了自己没有去提升技术。
这些面试题分享给大家的目的,其实是希望大家通过大厂面试题分析自己的技术栈,给自己梳理一个更加明确的学习方向,当你准备好去面试大厂,你心里有底,大概知道面试官会问多广,多深,避免面试的时候一问三不知。
大家可以把Java基础,JVM,并发编程,MySQL,Redis,Spring,Spring cloud等等做一个知识总结以及延伸,再去进行操作,不然光记是学不会的,这里我也提供一些脑图分享给大家:
希望你看完这篇文章后,不要犹豫,抓紧学习,复习知识,准备在明年的金三银四拿到心仪的offer,加油,打工人!
了自己没有去提升技术。
这些面试题分享给大家的目的,其实是希望大家通过大厂面试题分析自己的技术栈,给自己梳理一个更加明确的学习方向,当你准备好去面试大厂,你心里有底,大概知道面试官会问多广,多深,避免面试的时候一问三不知。
大家可以把Java基础,JVM,并发编程,MySQL,Redis,Spring,Spring cloud等等做一个知识总结以及延伸,再去进行操作,不然光记是学不会的,这里我也提供一些脑图分享给大家:
[外链图片转存中…(img-z4RdIj6x-1711644740843)]
[外链图片转存中…(img-OtGDtdnF-1711644740844)]
[外链图片转存中…(img-rfase3qm-1711644740844)]
希望你看完这篇文章后,不要犹豫,抓紧学习,复习知识,准备在明年的金三银四拿到心仪的offer,加油,打工人!