当前位置: 首页> 科技> 能源 > Spring项目:文字花园(三)

Spring项目:文字花园(三)

时间:2025/8/27 10:08:31来源:https://blog.csdn.net/LHY537200/article/details/141332047 浏览次数:0次

一.实现博客详情

1.后端逻辑代码

controller层添加方法(根据博客id查看博客详情)

@RequestMapping("/getBlogDetail")public Result<BlogInfo> getBlogDetail(Integer blogId){log.info("getBlogDetail, blogId: {}", blogId);BlogInfo blogInfo = blogService.getBlogDetail(blogId);return Result.success(blogInfo);}

Service层写构造方法 

public BlogInfo getBlogDetail(Integer blogId) {return blogMapper.selectById(blogId);}

mapper层:

package com.example.demo.mapper;import com.example.demo.model.BlogInfo;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;import java.util.List;@Mapper
public interface BlogMapper {/*** 返回博客列表* @return*/@Select("select * from blog where delete_flag = 0")List<BlogInfo> selectAll();/*** 根据博客ID, 返回博客信息* @return*/@Select("select * from blog where id =#{id}")BlogInfo selectById(Integer id);/*** 更新博客* @return*/Integer updateBlog(BlogInfo blogInfo);/*** 发布博客*/@Insert("insert into blog (title, content, user_id) values (#{title}, #{content}, #{userId})")Integer insertBlog(BlogInfo blogInfo);}

 使用postman来进行测试

 测试成功


2.前端代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>博客详情页</title><link rel="stylesheet" href="css/common.css"><link rel="stylesheet" href="css/detail.css"></head><body><div class="nav"><img src="pic/rose.jpg" alt=""><span class="blog-title">文字花园</span><div class="space"></div><a class="nav-span" href="blog_list.html">主页</a><a class="nav-span" href="blog_edit.html">写博客</a><a class="nav-span" href="#" onclick="logout()">注销</a></div><div class="container"><div class="left"><div class="card"><img src="pic/doge.jpg" alt=""><h3>小李同学</h3><a href="#">GitHub 地址</a><div class="row"><span>文章</span><span>分类</span></div><div class="row"><span>2</span><span>1</span></div></div></div><div class="right"><div class="content"><div class="title"></div><div class="date"></div><div class="detail"></div><div class="operating"><button onclick="window.location.href='blog_update.html'">编辑</button><button onclick="deleteBlog()">删除</button></div></div></div></div><!-- 引入 editor.md 的依赖 --><link rel="stylesheet" href="blog-editormd/css/editormd.css" /><script src="js/jquery.min.js"></script><script src="blog-editormd/lib/marked.min.js"></script><script src="blog-editormd/lib/prettify.min.js"></script><script src="blog-editormd/editormd.js"></script><script src="js/common.js"></script><script>$.ajax({type: "get",url: "/blog/getBlogDetail" +location.search,success: function(result){if(result.code=="SUCCESS"){//填充页面var blog = result.data;$(".content .title").text(blog.title);$(".content .date").text(blog.createTime);$(".content .detail").text(blog.content);}},error:function(error){if(error!=null && error.status==401){location.href = "blog_login.html";}}});</script>
</body></html>

展示页面 

注意:

 

这里的时间是Date类型,不好看,我们修改String类型。

新建/utils/DateUtils

 代码:

package com.example.demo.utils;import java.text.SimpleDateFormat;
import java.util.Date;public class DateUtils {public static String dateFormat(Date date){//2024-04-24 21:18SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");return format.format(date);}
}

package com.example.demo.model;import com.example.demo.utils.DateUtils;
import lombok.Data;import java.util.Date;@Data
public class BlogInfo {private Integer id;private String title;private String content;private Integer userId;private Integer deleteFlag;private Date createTime;private Date updateTime;public String getCreateTime() {return DateUtils.dateFormat(createTime);}
}

 展示:

关键字:Spring项目:文字花园(三)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: