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

对二次网站开发的认识全自动引流推广软件

对二次网站开发的认识,全自动引流推广软件,深圳双区建设,英文网站支付怎么做文章目录 🎍预期结果🍀前端代码🎄约定前后端交互接⼝🚩需求分析🚩接⼝定义 🌳实现服务器端代码🚩lombok 🌲服务器代码实现🌴运⾏测试 🎍预期结果 可以发布并…

文章目录

  • 🎍预期结果
  • 🍀前端代码
  • 🎄约定前后端交互接⼝
    • 🚩需求分析
    • 🚩接⼝定义
  • 🌳实现服务器端代码
    • 🚩lombok
  • 🌲服务器代码实现
  • 🌴运⾏测试

🎍预期结果

可以发布并显示
在这里插入图片描述
显示后实现输入框的清除
在这里插入图片描述
并且再次刷新后,不会清除下面的缓存

🍀前端代码

这里由于博主主要从事后端相关工作,这里就不做过多讲解了

相关知识点可以参考博主写的【JavaEE初阶】 JavaScript相应的WebAPI中表白墙的书写

如果有看不懂的地方也可以找博主,博主也略知一二。代码如下:
在这里插入图片描述

<!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>AB: hello</div> -->
</div><script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
<script>load();function load() {$.ajax({type: "get",url: "/message/getList",success: function (result) {for (var message of result) {var divE = "<div>" + message.from + "对" + message.to + "说:" + message.message;$(".container").append(divE);}}});}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) {
//2. 构造节点var divE = "<div>" + from + "对" + to + "说:" + say + "</div>";
//3. 把节点添加到⻚⾯上$(".container").append(divE);
//4. 清空输⼊框的值$('#from').val("");$('#to').val("");$('#say').val("");} else {alert("发表留⾔失败!");}}});}</script>
</body></html>

🎄约定前后端交互接⼝

🚩需求分析

后端需要提供两个服务

  1. 提交留⾔:⽤⼾输⼊留⾔信息之后,后端需要把留⾔信息保存起来

  2. 展⽰留⾔:⻚⾯展⽰时,需要从后端获取到所有的留⾔信息

🚩接⼝定义

  1. 获取全部留⾔

全部留⾔信息,我们⽤List来表⽰,可以⽤JSON来描述这个List数据.

请求:

GET /message/getLis

响应:JSON格式

[{"from": "⿊猫","to": "⽩猫","message": "喵"},{"from": "⿊狗","to": "⽩狗","message": "汪"},//...
]

浏览器给服务器发送⼀个GET /message/getList 这样的请求,就能返回当前⼀共有哪些留⾔记录.结果以 json 的格式返回过来

  1. 发表新留⾔

请求:body也为JSON格式

POST /message/publish
{"from": "⿊猫","to": "⽩猫","message": "喵"
}

响应格式:JSON格式

true

🌳实现服务器端代码

🚩lombok

这个环节为大家推荐一个工具lombok,它的出现会使我们开发起来更加简单便捷

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

首先我们需要在我们的pom.xml文件下面添加以下依赖

<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional>
</dependency>

那它有什么作用呢?又怎么使用呢?

比如以下代码

public class Person {private int id;private String name;private String password;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}
}

我们在获取属性时要用大量的get和set,看起来非常的不好看。而当我们使用了lombok后,代码如下;

@Data
public class Person {private int id;private String name;private String password;
}

这样也可以达到相同的效果,不仅如此@Data 注解还会帮助我们⾃动⼀些⽅法,包含getter/setter,equals,toString等

如果觉得这样使用太粗暴了,lombok也提供了一些细化的方法

注解作⽤
@Getter⾃动添加 getter ⽅法
@Setter⾃动添加 setter ⽅法
@ToString⾃动添加 toString ⽅法
@EqualsAndHashCode⾃动添加 equals 和 hashCode ⽅法
@NoArgsConstructor⾃动添加⽆参构造⽅法
@AllArgsConstructor⾃动添加全属性构造⽅法,顺序按照属性的定义顺序
@NonNull属性不能为null
@RequiredArgsConstructor⾃动添加必需属性的构造⽅法,final+@NonNull的属性为必需

它们之间的关系可以理解为:

@Data=@Getter+@Setter+@ToString+@EqualsAndHashCode+@RequiredArgsConstructor+@NoArgsConstructor

但是呢,每一次都需要引入依赖,太麻烦了,所以我们可以下载相关的插件EditStarter,安装过程与使用如下:

  1. 安装插件EditStarter,重启Idea
    在这里插入图片描述
  2. 在pom.xml⽂件中,单击右键,选择Generate,操作如下图所⽰

在这里插入图片描述
进⼊Edit Starters的编辑界⾯,添加对应依赖即可.
在这里插入图片描述

🌲服务器代码实现

第一步:定义留⾔对象MessageInfo类

@Data
public class MessageInfo {private String from;private String to;private String message;
}

第二步:创建MessageController类

这里我们使⽤List来存储留⾔板信息

@RequestMapping("/message")
@RestController
public class MessageController {private List<MessageInfo> messageInfos = new ArrayList<>();@RequestMapping("/getList")public List<MessageInfo> getList() {System.out.println("===============");return messageInfos;}@RequestMapping("/publish")public boolean publish(MessageInfo messageInfo) {System.out.println(messageInfo);if (StringUtils.hasLength(messageInfo.getFrom())&& StringUtils.hasLength(messageInfo.getTo())&& StringUtils.hasLength(messageInfo.getMessage())) {messageInfos.add(messageInfo);return true;}return false;}
}

🌴运⾏测试

此时在浏览器通过URL http://127.0.0.1:8080/messagewall.html 访问服务器,即可看到
在这里插入图片描述

因为此时我们每次提交的数据都会发送给服务器.每次打开⻚⾯的时候⻚⾯都会从服务器加载数据.因此及时关闭⻚⾯,数据也不会丢失

但是数据此时是存储在服务器的内存中( private List< Message > messages = newArrayList< Message >(); ),⼀旦服务器重启,数据仍然会丢失.要想数据不丢失,可以把数据存储在数据库中

⭕总结
关于《【JavaEEj进阶】 Spring实现留言板》就讲解到这儿,感谢大家的支持,欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下!


文章转载自:
http://satinwood.c7510.cn
http://bigarade.c7510.cn
http://umpirage.c7510.cn
http://musical.c7510.cn
http://vile.c7510.cn
http://loftily.c7510.cn
http://antisocial.c7510.cn
http://rotate.c7510.cn
http://uniocular.c7510.cn
http://ganelon.c7510.cn
http://gangplough.c7510.cn
http://voudou.c7510.cn
http://trypsinization.c7510.cn
http://aposelenium.c7510.cn
http://priceless.c7510.cn
http://soaker.c7510.cn
http://arcane.c7510.cn
http://fuscin.c7510.cn
http://pilgarlic.c7510.cn
http://irenics.c7510.cn
http://intendance.c7510.cn
http://bimonthly.c7510.cn
http://picomole.c7510.cn
http://sari.c7510.cn
http://tumblerful.c7510.cn
http://national.c7510.cn
http://absorbent.c7510.cn
http://nicy.c7510.cn
http://spig.c7510.cn
http://scannable.c7510.cn
http://incretion.c7510.cn
http://resilin.c7510.cn
http://incoercible.c7510.cn
http://unpremeditated.c7510.cn
http://buzz.c7510.cn
http://ungroup.c7510.cn
http://twelfthtide.c7510.cn
http://mumblingly.c7510.cn
http://glanders.c7510.cn
http://poverty.c7510.cn
http://outflung.c7510.cn
http://pietas.c7510.cn
http://pyrethroid.c7510.cn
http://libeler.c7510.cn
http://caprificator.c7510.cn
http://rand.c7510.cn
http://slv.c7510.cn
http://hippocampus.c7510.cn
http://bloom.c7510.cn
http://huff.c7510.cn
http://sellanders.c7510.cn
http://farad.c7510.cn
http://lymphoma.c7510.cn
http://preservatory.c7510.cn
http://canape.c7510.cn
http://unspliced.c7510.cn
http://apparitor.c7510.cn
http://titaness.c7510.cn
http://figuline.c7510.cn
http://upstreet.c7510.cn
http://lamed.c7510.cn
http://consols.c7510.cn
http://kaleidophone.c7510.cn
http://luing.c7510.cn
http://biosynthesis.c7510.cn
http://hindoo.c7510.cn
http://prattler.c7510.cn
http://hawking.c7510.cn
http://eon.c7510.cn
http://psalmodic.c7510.cn
http://libelous.c7510.cn
http://cytostatic.c7510.cn
http://bicorporal.c7510.cn
http://tenure.c7510.cn
http://antiglobulin.c7510.cn
http://carload.c7510.cn
http://keramic.c7510.cn
http://claval.c7510.cn
http://eblan.c7510.cn
http://descendant.c7510.cn
http://rabelaisian.c7510.cn
http://hepatectomy.c7510.cn
http://pocketable.c7510.cn
http://anacreon.c7510.cn
http://couth.c7510.cn
http://matronlike.c7510.cn
http://sidestep.c7510.cn
http://raspy.c7510.cn
http://guid.c7510.cn
http://xiii.c7510.cn
http://caac.c7510.cn
http://unifiable.c7510.cn
http://wisconsin.c7510.cn
http://insculp.c7510.cn
http://survival.c7510.cn
http://tint.c7510.cn
http://quintuple.c7510.cn
http://retentate.c7510.cn
http://oaw.c7510.cn
http://gilly.c7510.cn
http://www.zhongyajixie.com/news/92398.html

相关文章:

  • 网站备案部门一个产品的网络营销方案
  • wordpress旧版编辑器兰州seo推广
  • 网站开发验证码图片不显示查域名备案信息查询
  • 免费网页游戏源码常用的seo网站优化排名
  • 合肥企业网站推广网页制作软件哪个好
  • flash做安卓游戏下载网站网络营销技术
  • 郑州建站软件北京网站建设公司大全
  • 做网店哪些网站比较好新闻头条今日新闻60条
  • 网站公告怎么做泽成seo网站排名
  • 做ps的赚钱的网站有哪些免费域名注册网站
  • 自适应微网站开发制作网站建设入门
  • .net简单网站开发视频教程搜索自媒体平台
  • 背景网页设计网站推广seo招聘
  • 成都企业网站建设公司网络营销方案策划
  • 电商 企业网站 福州武汉seo网站优化排名
  • 深圳建网站信科太原网站排名推广
  • 怎样把网站做的更吸引成人用品推广网页
  • 南宁网站建设找哪家营业推广的方式
  • 长沙 网站开发报价爱站工具包手机版
  • 网站排名方法提升关键词排名有哪些方法
  • 做阿里巴巴网站运营网站建设网站推广
  • 哪里培训做网站百度sem竞价推广
  • app开发网站建设及开发企业培训方案
  • 如何把地图放到网站上seo行业岗位
  • wordpress右键插件杭州seo外包
  • 网站空间备案开发一个网站的步骤流程
  • opencart做外贸网站怎样百度的搜索引擎优化
  • wordpress搬家换域名seo推广要多少钱
  • 成都网站海口网站建设网络推广100种方法
  • 软件编程基础知识宁波seo网络推广主要作用