• 【仿牛客网笔记】 Spring Boot进阶,开发社区核心功能-发布帖子


    请添加图片描述

    异步请求的实现需要用到AJAX。
    使用JQuery发送AJAX。
    请添加图片描述
    请添加图片描述
    请添加图片描述
    定一个公有的静态的字符串,参数为code编码,提示信息map。定义一个json对象,将值放入到json中。
    map需要打散将每个键值对放入到对象中,所有需要判断是否为空,如果不为空遍历这个map,就需要遍历这个key,value,key-value。每次遍历一个Key,将key存入到对象。最后转成字符串就是字符串的json。
    请添加图片描述
    main方法进行测试。

    请添加图片描述
    AJAX的是示例
    请添加图片描述
    我们需要一个网页,网页中写入JQuery的代码,写一个段落,段落中有一个按钮,按钮点击的时候就发送异步请求,触发单击事件send方法。重点是实现send方法。引入JQuery后通过Script标签实现send()方法,首先加入访问的路径,然后加入需要访问的数据,还需要一个匿名的回调函数,console.log控制台输出。
    parseJSON传入数据后会转成JSON的字符串,可以调用它的属性。
    请添加图片描述
    实践:采用AJAX请求,实现发布帖子的功能
    在Mapper中传入DiscussPost
    请添加图片描述
    实现这个方法:
    请添加图片描述
    请添加图片描述
    添加方法后,首先判断,如果为空抛出异常,过滤敏感词,title,context过滤敏感词。
    先转义HTML,通过HTMLUtils工具中有一个htmlEscape方法。
    请添加图片描述
    视图层的处理,页面中有异步请求需要用到js代码。
    创建一个DIscussPostController的类,添加@Controller的注解,另外添加一个请求路径。注入DIscussPostService,获取当前用户是通过HostHolder
    添加一个方法,添加请求路径,因为请求的数据所以使用POST的方法。另外返回的字符串所以添加一个@Response,返回类型时String,页面传入了标题和内容,所以参数为标题和内容。首先发帖的前提是登录,所以先获取user,如果没有获取user就没有登录,则返回一个异步的提示,403代表没有权限。
    创建post对象,添加id,标题,内容,创建时间。
    返回异步成功提示。
    报错的情况统一处理。
    请添加图片描述
    请添加图片描述

    处理页面
    在页面加载完之后,获取发布按钮,发布按钮定义了单击事件,单击事件的方法 ,显示提示框,2秒之后隐藏。

    请添加图片描述

    当填数据的时候我们对话框隐藏掉,服务器发送消息后在显示提示框,所以发送异步请求,获取标题和内容。
    请添加图片描述

    请添加图片描述

  • 相关阅读:
    7天学完Spring:基础学习结束,关于Spring事务及其传播机制
    紧跟恺明的步伐:记录一下复现行为识别slowfast模型的全流程(附详细代码)
    数据存储技术的相关概念
    基于costas环的载波同步系统matlab性能仿真
    axios封装
    Linux学习第36天:Linux RTC 驱动实验:时间是一条流淌的河
    华为OD:IPv4地址转换成整数
    day-56 代码随想录算法训练营(19)动态规划 part 16
    SuperSlide系列之轮播图
    Linux下redis安装教程
  • 原文地址:https://blog.csdn.net/xue_hua_c/article/details/127645904