JavaWeb评论功能实现步骤以及代码实例

 更新时间:2023年01月12日 11:38:06   作者:心态还需努力呀  
项目初始版本上线,有时间写点东西记录一下项目中的心得体会,通过这个项目学习了很多,要写下来的有很多,先从评论功能开始吧,下面这篇文章主要给大家介绍了关于JavaWeb评论功能实现步骤以及代码的相关资料,需要的朋友可以参考下

前言

评论功能是后端要写常见的功能之一,一般性的网站也都会包含这一功能。像是购物网站、视频网站下方都会有用户评论的功能。

一、分析功能

首先要分析功能:1.用户登录点击商品后可查看所有普通用户的评论。

                             2.用户可以添加评论,发送到评论区。

                             3.用户可以删除该用户写的评论。(不能删除其他人的评论)

二、实现功能

1.建评论表

外键约束:user_id关联user表、motorcycle_id关联商品表(motorcycle)。

然后创建实体类。

2.Dao层、service层核心代码实现

查询评论:

String sql="select c.id, c.user_id,c.motorcycle_id,c.motorcycle_comment,u.username from comment c left join user u on c.user_id=u.id where c.motorcycle_id=?";

添加评论: 

String sql = "insert into comment(user_id,motorcycle_id,motorcycle_comment) values(?,?,?)"

删除评论:

String sql = "delete from comment where id=?";

 service层直接调用,不做处理。

clist = cDao.getMotorcycleComment(motorcycleId);

3.servlet层编写核心代码

将查询结果放到request域里。

List<Comment> clist=commentService.getMotorcycleComment(id);
//        for (Comment c:clist
//             ) {
//            System.out.println(c);
//        }
        request.getSession().setAttribute("MotorcycleId", id);
        request.setAttribute("clist", clist);

调用删除后重定向到详情页。 

 commentService.deleteComment(commentId);
        resp.sendRedirect("/motorcycle_detail?id="+motorcycleId);

添加也是,添加完后重定向到商品详情页。 

CommentService commentService=new CommentService();
        int userId= Integer.parseInt(req.getParameter("userId"));
        int motorcycleId= Integer.parseInt(req.getParameter("motorcycleId"));
        String motorcycleComment=req.getParameter("comment");
 
        commentService.addComment(userId,motorcycleId,motorcycleComment);
//        req.getRequestDispatcher("/motorcycle_detail?id="+motorcycleId).forward(req, resp);
        resp.sendRedirect("/motorcycle_detail?id="+motorcycleId);

4.jsp核心代码

三、展示效果图

效果查看

添加一条后

 数据库变化:新增一条信息

 点击删除:发现已经没有该评论。

 刷新数据库后:

总结

效果展示完成。实现起来不算难,但要明白其中的外键约束关系,明白其中的逻辑。代码不是很多,大家快练起来~

到此这篇关于JavaWeb评论功能实现步骤以及代码实例的文章就介绍到这了,更多相关JavaWeb评论功能实现内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot使用@Async注解可能会遇到的8大坑点汇总

    SpringBoot使用@Async注解可能会遇到的8大坑点汇总

    SpringBoot中,@Async注解可以实现异步线程调用,用法简单,体验舒适,但是你一定碰到过异步调用不生效的情况,今天,我就列出90%的人都可能会遇到的8大坑点,需要的朋友可以参考下
    2023-09-09
  • Java中泛型学习之细节篇

    Java中泛型学习之细节篇

    泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用,下面这篇文章主要给大家介绍了关于Java中泛型细节的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • 一文详解Java8中的方法引用与构造器引用

    一文详解Java8中的方法引用与构造器引用

    这篇文章主要为大家详细介绍了Java8中的方法引用与构造器引用的具体用法,文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以参考一下
    2023-02-02
  • springboot2.0 @Slf4j log 彩色日志配置输出到文件

    springboot2.0 @Slf4j log 彩色日志配置输出到文件

    这篇文章主要介绍了springboot2.0 @Slf4j log日志配置输出到文件(彩色日志),解决方式是使用了springboot原生自带的一个log框架,结合实例代码给大家讲解的非常详细,需要的朋友可以参考下
    2023-08-08
  • SpringBoot+Vue添加腾讯云人脸识别的项目实践

    SpringBoot+Vue添加腾讯云人脸识别的项目实践

    人脸识别是一种基于人脸特征进行身份认证和识别的技术,本文主要介绍了SpringBoot+Vue添加腾讯云人脸识别的项目实践,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • spring cloud gateway如何获取请求的真实地址

    spring cloud gateway如何获取请求的真实地址

    这篇文章主要介绍了spring cloud gateway如何获取请求的真实地址问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • SpringMvc向request域中设置数据的方法

    SpringMvc向request域中设置数据的方法

    这篇文章主要介绍了SpringMvc向request域中设置数据的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • Spring Boot与Kotlin定时任务的示例(Scheduling Tasks)

    Spring Boot与Kotlin定时任务的示例(Scheduling Tasks)

    这篇文章主要介绍了Spring Boot与Kotlin定时任务的示例(Scheduling Tasks),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • java操作elasticsearch的案例解析

    java操作elasticsearch的案例解析

    这篇文章主要介绍了java操作elasticsearch的案例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • Java中的事件处理机制详解

    Java中的事件处理机制详解

    这篇文章主要介绍了Java中的事件处理机制详解,Java事件处理是采取"委派事件模型",当事件发生时,产生事件的对象,会把此"信息"传递给"事件的监听者"处理,这里所说的"信息"实际上就是java.awt.event事件类库里某个类创建对象,需要的朋友可以参考下
    2023-09-09

最新评论