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

Spring Boot入门指南:留言板

一.留言板

1.输⼊留⾔信息,点击提交.后端把数据存储起来.

2.⻚⾯展⽰输⼊的表⽩墙的信息

规范:

1.写一个类MessageInfo对象,添加构造方法

虽然有快捷键,但是还是不够偷懒 

项目添加Lombok。

Lombok是⼀个Java⼯具库,通过添加注解的⽅式,简化Java的开发。

2.添加Lombok 依赖

下载插件

 

 

 

 

Lombok通过⼀些注解的⽅式,可以帮助我们消除⼀些冗⻓代码,使代码看起来简洁⼀些 .

@Data注解会帮助我们⾃动⼀些⽅法,包含getter/setter,equals,toString等.

 

3.编写后端接口

3.编写后端接口(publish(),getList()),将信息暂时存储到List中(内存)。

代码:

package com.example.demo;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;@RestController
@RequestMapping("/message")
public class MessageController {/*将留言保存* */private List<MessageInfo> messageInfos = new ArrayList<>();//初始化List@RequestMapping("/publish")public Boolean publish(MessageInfo messageInfo){//1.参数校验//暂时 将信息存储到List中(内存)if(!StringUtils.hasLength(messageInfo.getFrom())|| !StringUtils.hasLength(messageInfo.getTo())||!StringUtils.hasLength(messageInfo.getSay())){return  false;}messageInfos.add(messageInfo);return true;}/** 获取留言信息*/@RequestMapping("/getList")public List<MessageInfo> getList(){return messageInfos;}
}

 4.打开post进行测试后端接口有无问题

5.编写前端代码

5.编写前端代码(根据后端返回的布尔类型选择将信息打印在页面)

代码:

<!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({url: "/message/getList",type: "get",success: function (messageInfos) {var finalHtml = "";for (var message of messageInfos) {finalHtml += '<div>' + message.from + ' 对 ' + message.to + ' 说: ' + message.message + '</div>';}$(".container").append(finalHtml);}});function submit() {console.log("发布留言");//1. 获取留言的内容var from = $('#from').val();var to = $('#to').val();var say = $('#say').val();if (from == '' || to == '' || say == '') {return;}//发送ajax请求$.ajax({url: "/message/publish",type: "post",data: {from: $('#from').val(),to: $('#to').val(),say: $('#say').val()},success: function (result) {if (result) {//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.解决问题方式

无日志提示,说明请求没有到达后端,是前端代码出问题。

 

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

相关文章:

  • Docker 中安装和配置带用户名和密码保护的 Elasticsearch
  • 面试官:说说JVM内存调优及内存结构
  • Ansible的脚本-----playbook剧本【下】
  • Mysql开启远程控制简化版,亲测有效
  • 【MQTT协议与IoT通信】MQTT协议的使用和管理
  • 根据题意写出完整的css,html和js代码【购物车模块页面及功能实现】
  • AWS免费层之后:了解和管理您的云服务成本
  • Linux定时同步系统时间到硬件时间
  • 网络编程——wireshark抓包、tcp粘包
  • el-table合计行更新问题
  • ChatGPT:数据库不符合第二范式示例
  • 27、美国国家冰雪中心(NSIDC)海冰密集度月数据下载与处理
  • vite环境下使用bootstrap
  • Laravel视图渲染封装
  • C++学习补充2:MySQL select 查询
  • uni-app声生命周期
  • 排序算法--堆排序
  • iPhone 在 App Store 中推出的 PC 模拟器 UTM SE
  • FastAPI删除mongodb重复数据(数据清洗)
  • 移动UI:排行榜单页面如何设计,从这五点入手,附示例。
  • 如何解决 uni-app 项目中 “文件查找失败:‘crypto-js‘“ 的问题
  • Apache DolphinScheduler 3.2.2 版本正式发布!
  • 汇川CodeSysPLC教程03-2-6 ModBus TCP
  • 【Python机器学习】决策树的构造——划分数据集
  • Pip换源使用帮助
  • 力扣1089复写0
  • 10 VUE Element
  • 独立游戏《星尘异变》UE5 C++程序开发日志8——实现敏感词过滤功能(AC自动机)
  • 使用 Swagger 在 Golang 中进行 API 文档生成
  • Pip换源实战指南:加速你的Python开发