上述留言板的笔记链接 ,初步尝试,若有问题,多多担待!!!(╹▽╹)
相关代码
前端代码
<!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/getMessageInfo",
type: "get",
success: function (messages) {
for(let message of messages){
// 拼接显示的记录了
//2.拼接节点的html
let divE = "<div>" + message.from + "对" + message.to + "说:" + message.message + "</div>"
//3.把节点添加到页面上
$(".container").append(divE);
}
}
})
function submit() {
//1.获取留言的内容
let from = $("#from").val();
let to = $("#to").val();
let say = $("#say").val();
// 不为空
if (from == "" || to == "" || say == "") {
return;
}
//提交留言
$.ajax({
url: "/message/publish",
type: "post",
data: {
"from": from,
"to": to,
"message": say
},
success: function (result) {
if (result) {
//添加成功
//2.拼接节点的html
let message = "<div>" + from + "对" + to + "说:" + say + "</div>"
//3.把节点添加到页面上
$(".container").append(message);
//4.清空输入框的值
$("#from").val("");
$("#to").val("");
$("#say").val("");
} else {
//添加失败
alert("留言发布失败")
}
}
});
}
</script>
</body>
</html>
后端代码
package org.example.demo.controller;
import org.apache.catalina.util.StringUtil;
import org.apache.logging.log4j.message.Message;
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;
/**
* Created with IntelliJ IDEA.
* Description:
* User: fly - 逐梦者
* Date: 2024-06-12
* Time: 19:46
*/
@RequestMapping("/message")
@RestController
public class MessageController {
private List<MessageInfo> messageInfos = new ArrayList<>();
@RequestMapping("/publish")
public Boolean publishMessage(MessageInfo messageInfo) {
String from = messageInfo.getFrom();
//进行参数的校验
if(!StringUtils.hasLength(messageInfo.getFrom())
|| !StringUtils.hasLength(messageInfo.getTo())
|| !StringUtils.hasLength(messageInfo.getMessage())){
return false;
}
// 添加留言
messageInfos.add(messageInfo);
return true;
}
@RequestMapping("/getMessageInfo")
public List<MessageInfo> getMessageInfo() {
return messageInfos;
}
}
package org.example.demo.controller;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
/**
* Created with IntelliJ IDEA.
* Description:
* User: fly - 逐梦者
* Date: 2024-06-12
* Time: 19:55
*/
@Data
public class MessageInfo {
// @Getter @Setter
private String from;
// @Getter @Setter
private String to;
private String message;
// private Date CreateTime;
}