首页 > 其他分享 >使用application模拟聊天室

使用application模拟聊天室

时间:2024-10-19 23:32:03浏览次数:7  
标签:聊天室 留言 存储 application previousMessages 字符串 模拟

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Session 测试</title>
</head>

<body>

<form method="post" name="form">
    <table>
       <tr>
       		<td>
       			输入留言:<input type="text" name="user">
       		</td>
       </tr>
             <tr>     
       		<td>
       			<input type="submit" value="提交">
       		</td>
       </tr>
    </table>
</form>

<%
    // 获取用户输入
    String user = request.getParameter("user");

    // 获取之前的留言
    String previousMessages = (String) application.getAttribute("messages");
    if (previousMessages == null) {
        previousMessages = ""; // 初始化为空
    }

    // 如果用户输入不为空,添加到之前的留言
    if (user != null && !user.trim().isEmpty()) {
        // 添加标记
        String markedMessage = "one: " + user;
        
        // 添加换行
        if (!previousMessages.isEmpty()) {
            previousMessages += "<br>";
        }
        // 追加新留言
        previousMessages += markedMessage;
    }

    // 保存更新后的留言到 application 范围
    application.setAttribute("messages", previousMessages);
%>

<h3>留言记录:</h3>
<%= application.getAttribute("messages") %>
</body>
</html>

两个jsp代码都一样,只是添加标记那里更改一下就可以
application刷新网页或者关闭浏览器都不会消失,只有重启后或者通过application.removeAttribute(“变量名称”)才可以清除记录。
存储的是一个字符串,输入新字符串时将其和就字符串拼接在一起,形成一个字符串来存储。

标签:聊天室,留言,存储,application,previousMessages,字符串,模拟
From: https://www.cnblogs.com/fyall/p/18486733

相关文章

  • 多校A层冲刺NOIP2024模拟赛09
    GG多校A层冲刺NOIP2024模拟赛09T1排列最小生成树(pmst)需要思考一会。你得发现一个性质:所有要的边的权值都得小于n,因为每个点都可以找到至少一条边权小于n的边,所以最后生成树里的边的边权一定小于n。那么$\vertp_i-p_j\vert\times\verti-j\vert$中较......
  • 使用sendReddirect模拟用户登录
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>简单登录模拟</title>......
  • [51] (多校联训) A层冲刺NOIP2024模拟赛09
    关于生成式AI怎么才能让这个b学会断句我目前的方案是,把逗号和句号单独作为一个特殊词汇看待,也统计到词频里,该断句的时候就断表扬这次的题解,写的很清楚A.排列最小生成树总存在一颗生成树使得树上最大边权值小于\(n\)考虑直接连接序列里的所有\((i,i+1)\),因为\(|a_......
  • 重庆强校模拟赛,提高组堪比省赛
    承上启下今天又被喂了四个小时的史,逆天。T1送分,简单得令人落泪,只要能打提高组就能\(AC\),当时还以为终于有一场普通的模拟赛了,哈哈,笑不活了。T2,同学大佬们目测蓝紫,就算了,我太菜了,想了两个半小时,最后二十分钟打完暴力跑路。T3,BYD,std700多行,出题人你提米当个人不行吗?!你看看这像是......
  • [DMY]2024 CSP-S 模拟赛 Day 18
    今天打的虽然有遗憾,但是也在情理之中。赛时看了眼T1,没有别人的犹豫,第一眼就看到了\(n\le5000\),然后开始写最短路。算了一下dijkstra根本跑不满,无需deque的01bfs。写完以后大概40min,改一下longlong就扔了。赛后没挂,100pts。T2一开始没有思路,在纸上画画图感觉可以......
  • 20241017 模拟赛
    看题戳这里总结时间分配:30min自习,30mint1,然后在t2,t3,t4中间反复横跳,最后一小时狂冲t3没出来,悲伤。后来听巨佬说t3很离谱,也不知道是不是真的。最终分数:0+50+0+0为什么第一题挂了?为什么第一题挂了?为什么第一题挂了?为什么第一题挂了?哦,原来是玩原神freopen注释了导致的。解析......
  • NOIP模拟赛(10.17):语言,色球,斐波,偶数
    语言题面:牛妹正在学习一种新的语言,在这种语言里,单词只有形容词(\(\texttt{A}\)),名词(\(\texttt{N}\))和动词(\(\texttt{V}\))三种词性。但是一个单词可以对应多种词性。一个名词性词组(\(\texttt{NP}\))可以由一个名词(\(\texttt{N}\)),或者一个形容词修饰一个子名词性词组(\(\texttt{A}+......
  • 2024-10-17 模拟赛总结
    \(100+50+10+0=160\),码力不够T2没调出来,死磕T2没打出T4暴力。A-语言/language题意:设A为形容词,N为名词,V为动词,用a~z的字母来表示每一个词语,没一个词语可能既是形容词又是名词,其他同理,一个名词性词语\(NP::=N|A+NP_1|NP_1+NP_2\),一个句子\(S=NP_1+V+NP_2\)。给......
  • 『模拟赛』CSP-S模拟12
    Rank有点烂A.小h的几何虽然但是看起来这就是签。赛时看到计算几何直接润了,没看到送的20pts。主要问题在证一个结论:九点圆圆心位于垂心和外心的中点。几何证法见此,用到的全是初中知识,很好懂。证完就很水了,圆心即为\(\frac{A+B+C}{2}\),随便算个选中的方案数再乘上总概率......
  • csp-s模拟12
    题面首先,这些题目的题意就不太好理解A利用三个中点,暴力就是暴力算斜率暴力算交点圆周率别再写错了constdoublePi=acos(-1);点击查看代码#include<bits/stdc++.h>#definespeed()ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);#definelllonglong#definepb......