浏览器最近浏览记录

浏览器历史记录存储位置及编程实现 对于开发者而言,者而言,有时候需要在自己的应用程序中获取浏览器历史记录,以实现一些特定的功能,比如展示最近访问过的网页、搜索历史等。对于开发者而言,有时候需要在自己的应用程序中获取浏览器历史记录,以实现一些特定的功能,比如展示最近访问过的网页、搜索历史等。因此,在编程中获取历史记录时,最好使用浏览器提供的API,而不是直接读取存储文件。不同浏览器的历史记录存储位置可能有所不同,因此在获取历史记录时需要注意对应的存储位置。不同浏览器的历史记录存储位置可能有所不同,因此在获取历史记录时需要注意对应的存储位置。 阅读详情
@WebServlet("/demo1")
public class Demo1 extends HttpServlet{
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

//得到所有的商品
ProService ps = new ProService();
Map<String, Product> map = ps.queryAll();
HttpSession session = req.getSession();
session.setAttribute("map", map);





//得到保存在cookie中的商品id(浏览过的)
List<Product> list = new ArrayList<>(); 
Cookie[] cookies = req.getCookies();
for (int i = 0; cookies!=null&&i < cookies.length; i++) {
if("history".equals(cookies[i].getName())) {
String value = cookies[i].getValue();
String[] split = value.split("-");
for (int j = 0; j < split.length; j++) {
//通过此id来找到商品
Product pro = ps.findPro(Long.parseLong(split[j]));
//存到集合中
list.add(pro);
}
}
}
session.setAttribute("hisList", list);

resp.sendRedirect("index.jsp");


@WebServlet("/demo2")
public class Demo2 extends HttpServlet{
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

//查看商品详细信息
String id = req.getParameter("id");
long id1 = Long.parseLong(id);
ProService ps= new ProService();
Product pro = ps.findPro(id1);
HttpSession session = req.getSession();
session.setAttribute("pro", pro);


//保存你浏览过的商品ID
String history = historyId(id, req);
Cookie c = new Cookie("history", history);
c.setMaxAge(60*60);
c.setPath("/");
resp.addCookie(c);
resp.sendRedirect("demo.jsp");



}
/*
* 刷新商品ID
*/
private String historyId(String id,HttpServletRequest req) {
Cookie[] cookies = req.getCookies();
if(cookies==null) {
return id;
}
Cookie history = null;
for (int i = 0; i < cookies.length; i++) {
if("history".equals(cookies[i].getName())) {
history = cookies[i];
}
}
if(history==null) {
return id;
}
String value = history.getValue();
String[] split = value.split("-");
LinkedList<String> list = new LinkedList<>(Arrays.asList(split));
if(list.size()<3) {
if(list.contains(id)) {
list.remove(id);
}
}else {
if(list.contains(id)) {
list.remove(id);
}else {
list.removeLast();
}
}
list.addFirst(id);

StringBuffer sb = new StringBuffer();
for (int i = 0; i < list.size(); i++) {
if(i>0) {
sb.append("-");
}
sb.append(list.get(i));
}

return sb.toString();
}


数据显示

<table border="2">
<tr>
<th>id</th>
<th>name</th>
<th>price</th>
<th>count</th>
</tr>
<c:forEach var="m" items="${map}">
<tr>
<td>${m.value.id}</td>
<td><a href="demo2?id=${m.value.id}">${m.value.name}</a></td>
<td>${m.value.price}</td>
<td>${m.value.count}</td>
</tr>
</c:forEach>
</table>
<hr>
<h3>最近浏览</h3>
<c:if test="${empty hisList}">
你还未浏览
</c:if>
<c:if test="${!empty hisList}">
<table>
<tr>
<th>name</th>
</tr>
<c:forEach var="p" items="${hisList}">
<tr>
<td>${p.name}</td>
</tr>
</c:forEach>

</table>
</c:if>

windows 10清除文档操作记录方法汇总 阅读详情

相关推荐

最近浏览记录代码

电子商城中,最近浏览记录模块的代码,电子商城中,最近浏览记录模块的代码

Chromium 历史和下载记录数据存储位置分析c+

历史和下载记录数据来源都在两个文件里面,需要的可以在此更改数据源逻辑。

杰克东的专栏 1874

Servlet实现历史记录功能(浏览记录)

使用Servlet实现简易的历史记录功能

python获取浏览器Chrome/Edge的收藏夹,历史记录(搜索记录,访问记录,下载记录),密码数据

很多时候我们由于方便的考虑,会在浏览器收藏网站,保存密码,殊不知这些东西可以轻易地通过脚本获取,基于此构建出一个用户画像。

Demonslzh的博客 7144

获取浏览器上网记录并生成文本

用java获取mac上chrome浏览器上网记录,并生成相应的文本文件

获取浏览器访问记录(c++实现)

demo详细实现了获取主流浏览器IE、chrome、Firefox的历史记录。

浏览器恢复最近浏览记录

快捷键:Shift + Ctrl + T 多按几次多恢复几个

Codernmx 7874

python 爬虫 xpath 存储到数据库

参考

我是张先生 1290

safari浏览器 js全屏问题_记录最近遇到的小问题

Lessiview使用样式文件覆盖设置自定义主题时,可能会遇到Inline JavaScript is not enabled. Is it set in your options?的错误,可能是less版本过高引起。解决:降低less版本,降级到3.0以下。calc问题。less文件内:.category-item + .category-item { margin-left: ...

weixin_42237496的博客 1924

PythonOCC基础使用:建模——倒角倒圆(二维+三维)

占坑

weixin_42755384的博客 4639

从零搭建Python接口自动化测试框架:pytest+requests+Allure实战指南

接口自动化测试是现代软件工程中保障交付质量、提升测试效率的核心实践。其基本原理是通过脚本模拟客户端请求,对服务端接口进行自动化的功能验证、性能探测与回归测试,从而替代重复的手工操作。在技术实现上,Python凭借其简洁语法和丰富的生态,成为构建此类框架的主流选择,其中pytest测试框架、requests HTTP库和Allure报告工具构成了技术栈的黄金组合。这套技术方案的价值在于,它能将测试用例数据(如YAML文件)与执行逻辑分离,实现数据驱动测试,并通过持续集成(如Jenkins)无缝融入DevOps

weixin_31822733的博客 378

轻松几步,删除夸克浏览器最近播放文章

请注意,删除播放记录后,这些记录将无法恢复。此外,如果上述方法不能解决问题,可能是因为浏览器版本较旧或其他技术问题,建议更新到最新版本或尝试卸载后重新安装。点击右上角的“管理”图标,在弹出菜单中选择“清空历史记录”选项。如果您想要删除单个播放记录,通常可以直接在最近播放列表中长按某一条记录,然后选择删除。在首页或个人中心页面,找到并点击“最近播放”或者“历史记录”选项进入相应的页面。进入存储功能界面后,点击“清空存储空间”和“清理缓存”两个选项。在应用信息界面中,点击“存储和缓存”功能选项。

2508_90388986的博客 3万+

Ubuntu20.04系统Cuckoo sandbox所需环境搭建及安装(超详细图文)

请勿叫我大神,我只是互联网的搬运工~ 前言 本教程以Ubuntu20桌面版作为示范,服务器版同样适用,但可能稍微麻烦一点,服务器版本的话安装Xmanage套装使用可能会相对轻松一些,由于后面会使用到vbox的使用,对vbox命令行操作不熟悉的小伙伴用xmanage可能会相对轻松一点。 提示:以下是本篇文章正文内容,下面案例可供参考 安装ubuntu20桌面版 步骤1:转到https://ubuntu.com/download/desktop下载下载.iso。 步骤2:使用您选择的虚拟机监控程序(VMWa

ElsonHY的博客 1万+

android chrome最近访问记录,android – 清除Chrome浏览器的历史记录

它对我有用Uri BOOKMARKS_URI = Uri.parse("content://browser/bookmarks");String TITLE = "title";String VISITS = "visits";String BOOKMARK = "bookmark";ContentResolver resolver = getContentResolver();try {Log....

weixin_32965939的博客 320

抖音直播间人气接口算法 抖音协议

抖音直播间人气接口算法 抖音协议 抖音算法

Q44804487的博客 1万+

GEE:基于 Landsat 数据集生成(1986-2024)月度合成地表温度(LST)时间序列数据

优快云@_养乐多_本文将介绍使用 Landsat 时间序列计算(1986-2024)月度合成地表温度(LST)时间序列数据集的代码。

养乐多的博客 1714

浅浅记录最近遇到的BUG-服务器上的代码更新了但是浏览器上的页面没有更新

问题:【划重点】CSS文件和HTML文件我都成功上传了服务器,但是在浏览器上,只有CSS代码(只定义宽高和背景)能看到是有变化的,而HTML代码还是原来的旧代码,网页的排版什么都没改变(代码之前是行内式,我是在基础上更改的,没有将代码重写)。

qq_43751407的博客 1342

osgEarth 球上显示地形数据库

osgEarth 球上显示地形数据库 本文展示了一种由DSM和DEM得到Osgb工程,并在osgEarth球上显示的方法。其中DSM、DOM到Osgb工程的转换由VPB(VirtualPlanetBuilder)来实现,并采用Model图层将Osgb工程在球上显示。 本文主要解决一下问题: VPB编译 VPB生成地形 地形在球上显示 目录 1 前言 2 VPB编译与使用 3 地形在osgEarth球上显示 内容 1 前言 VirtualPlanetBuilder是一个开源代码工具,用于根据

CPWWHSU的博客 2437

html记录访客信息代码,[JS]记录访客最近浏览网页js代码

1.[代码][JavaScript]代码网页特效 js记录访客最近浏览过的网页刷新一下试试!把下面的代码放到要记录“访客最近浏览过的网页”的页面中就可以了。您最近浏览过的网页未找到您最近浏览过的网页if(navigator.cookieEnabled){//判断是否支持Cookievar tag = document.getElementById("www_zzjs_net");//输出结果DIV...

weixin_29476595的博客 1308

SAP Fiori Launchpad 上看不到任何 tile 应该怎么办?

中心UI组件是一个框架,为所有SAPFiori应用程序提供公共基础设施SAPFiorilaunchpad是所有SAPFioriUI的基础,并为SAPFiori应用程序提供基本功能,如登录,界面大小,应用程序之间的导航,和基于角色的应用程序目录。ABAP前端服务器包含所有基础设施组件,用于为客户端生成SAPFiori应用程序特定的UI,并与SAPBusinessSuite后端系统通信。SAPFiori应用程序的处理过程如下首先,客户端加载SAPFiori应用程序的界面。...

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 946

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

谷歌浏览器打开最近关闭标签_如何在谷歌浏览器中重新打开关闭的标签页

谷歌浏览器打开最近关闭标签Like other modern web browsers, Chrome lets you quickly reopen tabs and windows you’ve recently closed. Google moved this option a bit in Chrome 78, but it’s still easy to find if you kno...

culunxun2863的博客 3771

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

浏览器清除缓存快捷键

按下:ctrl+shift+del 清除浏览器最近记录。 注意区分ctrl+alt+del是资源管理器

qq_42931285的博客 4935

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

标准的网页浏览器都提供一个功能:保留最近浏览过页面的历史记录。通过后退或向前按钮就能在历史记录之间跳转。现在,请你模拟这个功能,接收如下三条指令:1. BACK:回退功能,即回退到上一个访问的

标准的网页浏览器都提供一个功能:保留最近浏览过页面的历史记录。通过后退或向前按钮就能在历史记录之间跳转。现在,请你模拟这个功能,接收如下三条指令:1. BACK:回退功能,即回退到上一个访问的页面;2. FORWARD:使用BACK返回上一页之后,可以使用FORWARD回到下一页;3. VISIT url:访问指定url的页面,并且所有FORWARD的页面都被清空。解析:#include #include #include #include

weixin_72426331的博客 627

如何检查电脑的最近历史记录?这里提供详细步骤

如何检查电脑的最近历史记录?这里提供详细步骤。

wyxtx的博客 2829

firefox火狐浏览器怎么清除缓存 火狐浏览器清理cookie教程

使用火狐浏览器的小伙伴是不是会出现网页搜索速度慢之类的问题呢,其实这是网页缓存太多的缘故。接下来,就让小编为大家说一下firefox(火狐浏览器)如何清除缓存的方法吧。 1、打开火狐浏览器,点击浏览器菜单栏中的“工具”,选择其中的“清空最近历史记录”。 firefox火狐浏览器怎么清除缓存 火狐浏览器清理cookie教程 2、进入“清空最近历史记录”界面,在右边的选择框中选择“全部”。点击“详细信息”,在“浏览、下载历史”“表单&搜索历史”“Cookies”“高速缓存”和“活动的已登录会话”前面打钩

yisago的博客 4197
上一篇: dbcp 连接池
下一篇: dbutil 的使用方法
jack_czz
博客等级 码龄10年 4粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值