Java微型博客系统——账号和文章的删改功能的实现

本文详述了Java微型博客系统中账号和文章的修改及删除功能的实现,包括前端界面、控制层和服务层的设计。账号修改允许用户针对性地更新信息,账号删除会联动删除关联文章。文章的修改和删除同样涉及前端交互、控制逻辑和服务层处理。此外,文中还提及了未来计划的评论功能开发和防止文章标题重复的必要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java微型博客系统——账号和文章的删改功能的实现

实现了之前项目的账号和文章内容的删改。接下来计划实现评论功能的开发。

写在前面

由于文件越写越多,堆在一起实在不是很方便管理,所以将文件按照功能的类型给了分类。
以客户端为例:
在这里插入图片描述
这样分开的化会比较的清晰。(但是分层的知识我学的还不是很深,之后打算学一下其它优秀的分层,比如说dubbo的分层架构)

账号的修改

账号的修改主要是修改账号的账号、昵称、密码。
我们每次修改账号信息的时候当然不希望把账号所有的东西都改一边,而是需要修改什么则修改什么,基于这种修改的思想,我完成了账号的修改功能

前端界面
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>修改您的账号信息</title>
</head>
<body>

<h2>修改您的账号信息</h2>
<form action="/zhz/editAccount" method="get">
    注意:如果不想修改某项,则直接空缺即可。<br/>
    原昵称:<strong th:text="${userName}"></strong><br/>
    新昵称:<input type="text" name="newUserName"  placeholder="请输入您的新昵称"><br/>

    原账号:<strong th:text="${userAccount}"></strong>
    账号:<input type="text" name="newUserAccount"  placeholder="请输入您的新账号"><br/>

    原始密码:<input type="password" name="userPassword" placeholder="请输入您的原始密码"><br/>
    修改后的密码:<input type="password" name="newUserPassword1" placeholder="请再输入您的新密码"><br/>
    修改后的密码:<input type="password" name="newUserPassword2" placeholder="请再输入您的新密码"><br/>
    <p th:text="${callback}"></p>
    <input type="text" name="submit" value="1" hidden>
    <input type="submit" value="确定">
    <input type="reset" value="重置">
</form>

</body>
</html>

效果图:
在这里插入图片描述

控制层

为了节省一个控制,这一个控制器实现了转发到修改界面和修改后的操作集成在一起。好处是少了一个controller,缺点是功能杂糅在一起。
细心的朋友可以注意到前端代码中,提交的时候提交了一个“submit”=“1”的值,就是为了区分两个功能。

package com.zhz.f.client.controller.account;

import com.zhz.f.api.service.MyData;
import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

@Controller
public class EditAccountController {
   
   
    @DubboReference
    MyData myData;

    @RequestMapping("/zhz/editAccount")
    public String editAccount(HttpServletRequest request, Model model) {
   
   
        HttpSession session = request.getSession();
        String userAccount = (String) session.getAttribute("userAccount");
        String userName = myData.getUserNameByAccount(userAccount);
        model.addAttribute("userAccount", userAccount);
        model.addAttribute("userName", userName);

        //如果前端没有传入数据,则进入修改界面
        if (!"1".equals(request.getParameter("submit"))) {
   
   
            return "/account/editAccount";
        }
        //如果输入了数据,则进行修改
        String newUserName = request.getParameter("newUserName");
        String newUserAccount = request.getParameter("newUserAccount");
        String password = request.getParameter("userPassword");
        String newPassword1 = request.getParameter("newUserPassword1");
        String newPassword2 = request.getParameter("newUserPassword2");
        //为了看着舒服,将空的字符制为null,当然直接用“”来进行下面的一系列判断也是可以的
        if (newUserName.equals("")) newUserName 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值