当前位置: 首页 > news >正文

表白墙项目(JAVA实现)

1、在html里

class使用.

id使用#

2、记得引入响应依赖(举例lombok)

3、messageController

package com.example.demo.demos.web;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
@RequestMapping("/message")
@RestController
public class massageController {//学过数据库的可以将这里改为数据库操作public List<MessageInfo> messageInfos=new ArrayList<>();//提交留言@RequestMapping("/publish")public boolean publishMessage(MessageInfo messageInfo){if(!StringUtils.hasLength(messageInfo.getMessage())||!StringUtils.hasLength(messageInfo.getTo())||!StringUtils.hasLength(messageInfo.getFrom())){return false;}//暂时存放在内存中messageInfos.add(messageInfo);return true;}@RequestMapping("/getlist")public List<MessageInfo> getlist(){return messageInfos;}
}

4、MessageInfo

package com.example.demo.demos.web;import lombok.Data;
import lombok.Getter;//可以省去我们的get和set方法,其他类可以直接调用
@Data
public class MessageInfo {private String from;private String to;private  String message;
}

5、messagewall前端代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>留言板</title><style>.container {width: 350px;height: 300px;margin: 0 auto;/* border: 1px black solid; */text-align: center;}.grey {color: grey;}.container .row {width: 350px;height: 40px;display: flex;justify-content: space-between;align-items: center;}.container .row input {width: 260px;height: 30px;}#submit {width: 350px;height: 40px;background-color: orange;color: white;border: none;margin: 10px;border-radius: 5px;font-size: 20px;}</style>
</head><body>
<div class="container"><h1>留言板</h1><p class="grey">输入后点击提交, 会将信息显示下方空白处</p><div class="row"><span>谁:</span> <input type="text" name="" id="from"></div><div class="row"><span>对谁:</span> <input type="text" name="" id="to"></div><div class="row"><span>说什么:</span> <input type="text" name="" id="say"></div><input type="button" value="提交" id="submit" onclick="submit()"><!-- <div>A 对 B 说: hello</div> -->
</div><script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
<script>//页面加载后信息留在页面上$.ajax({type:"get",url:"/message/getlist",success:function(messages){for(var message of messages){var html="<div>"+message.from+"对 "+message.to+" 说: "+message.message+"</div> "$(".container").append(html);}}});function submit(){//1. 获取留言的内容var from = $('#from').val();var to = $('#to').val();var say = $('#say').val();if (from== '' || to == '' || say == '') {return;}$.ajax({type:"post",url:"/message/publish",data:{from:from,to:to,message:say},success:function(result){if(result==true){//添加成功//2. 构造节点var divE = "<div>"+from +"对" + to + "说:" + say+"</div>";//3. 把节点添加到页面上$(".container").append(divE);//4. 清空输入框的值$('#from').val("");$('#to').val("");$('#say').val("");}else{//弹一个框alert("发表失败")}}});}</script>
</body></html>

6、前端代码中涉及到的后端代码部分说明

(1)前端获取留言内容部分

(2)防止页面刷新之后我们上次写的话消失,我们对其进行一下保存

7、效果展示

http://www.lryc.cn/news/330302.html

相关文章:

  • openGauss 高级分析函数支持
  • 【Java面试题系列】基础篇
  • Ubuntu 23.04 安装es
  • gradle 7.0 + 配置
  • vue3的ref和reactive对比
  • 是否应该升级到ChatGPT 4.0?深度对比ChatGPT 3.5与4.0的差异
  • C++刷题篇——04找等值元素
  • 2024年最新服装erp软件排名!(建议收藏)
  • Radash一款JavaScript最新的实用工具库,Lodash的平替!
  • 使用node爬取视频网站里《龙珠》m3u8视频
  • 搜索与图论——Prim算法求最小生成树
  • sqlmap基础知识
  • 读《C Primer Plus》
  • 深入理解计算机系统 家庭作业 2.66
  • 【服务端】node.js详细的配置
  • 二、CentOS基础配置(1.网络与包管理)
  • Golang基础-5
  • Mysql数据库:故障分析与配置优化
  • 常见的图像分析算法
  • 朵米3.5客服系统源码,附带系统搭建教程
  • Python 踩坑记
  • 搭建Spark单机版环境
  • 使用Flutter混淆技术保护应用隐私与数据安全
  • ClickHouse初体验
  • 在k8s中部署高可用程序实践和资源治理
  • WebView的使用与后退键处理-嵌入小程序或者 H5 页面
  • 【攻防世界】file_include (PHP伪协议+过滤器)
  • Linux 内核中PHY子系统(网络):PHY驱动
  • 【六 (1)机器学习-机器学习算法简介】
  • TCP服务端主动向客户端发送数据