关于SpringBoot开源项目的解压与查看

以下是关于SpringBoot开源项目黑马程序员博客系统的解压与查看:

下载好后解压到你所需建好的文件夹中:

完成后打开,里面都有这些文件,并将sql.zip解压到当前文件夹中

接下我我们启动IDEA,在设置中配置好Maven的路径并装配好本地仓库:

然后就等待下载好项目所需要的依赖:

接下来我们创建数据库:

打开之前解压的sql文件

用记事本打开这个sql文件,之后就可以创建好这些所需要的表了。

这里更改本机对应的密码:

接下来启动主程序类:

然后在浏览器中访问主程序的首页:

http://localhost

项目详情首页:

文章详情页:

后台管理界面:

文章管理界面;

相关代码的解析:

这段代码是一个后台管理模块的控制器类,用于处理与文章相关的请求。以下是对代码的解析:

  1. 导入了所需的包和类。
  2. 使用@Controller注解将该类标识为Spring的控制器。
  3. 使用@RequestMapping注解指定了该控制器处理的请求路径前缀为"/admin"。
  4. 定义了一个私有静态Logger对象logger,用于记录日志。
  5. 使用@Autowired注解进行依赖注入,将ISiteService和IArticleService接口的实现类注入到当前类中。
  6. @GetMapping注解表示处理GET请求,处理的路径为"/admin"或"/admin/index",方法名为index。
    • 在该方法中,通过siteServiceImpl调用recentArticles和recentComments方法获取最新的5篇博客和评论。
    • 再通过siteServiceImpl调用getStatistics方法获取统计数据。
    • 将获取的数据存储到HttpServletRequest的Request域中,然后返回"back/index"页面。
  7. @GetMapping注解表示处理GET请求,处理的路径为"/admin/article/toEditPage",方法名为newArticle。
    • 该方法用于向文章发表页面跳转,直接返回"back/article_edit"页面。
  8. @PostMapping注解表示处理POST请求,处理的路径为"/admin/article/publish",方法名为publishArticle。
    • 该方法用于发表文章。
    • 首先判断文章的分类是否为空,如果为空则设置为默认分类。
    • 然后通过articleServiceImpl调用publish方法发布文章。
    • 如果发布成功,返回ArticleResponseData.ok();如果发布失败,返回ArticleResponseData.fail()。
  9. @GetMapping注解表示处理GET请求,处理的路径为"/admin/article",方法名为index。
    • 该方法用于跳转到后台文章列表页面。
    • 通过@RequestParam注解获取请求中的page和count参数,默认值分别为1和10。
    • 通过articleServiceImpl调用selectArticleWithPage方法查询文章,并使用PageInfo对象封装查询结果。
    • 将查询结果存储到HttpServletRequest的Request域中,然后返回"back/article_list"页面。
  10. @GetMapping注解表示处理GET请求,处理的路径为"/admin/article/{id}",方法名为editArticle。
    • 该方法用于向文章修改页面跳转。
    • 通过@PathVariable注解获取路径中的id参数,然后通过articleServiceImpl调用selectArticleWithId方法查询对应id的文章。
    • 将查询结果存储到HttpServletRequest的Request域中,然后返回"back/article_edit"页面。
  11. @PostMapping注解表示处理POST请求,处理的路径为"/admin/article/modify",方法名为modifyArticle。
    • 该方法用于处理文章的修改。
    • 通过articleServiceImpl调用updateArticleWithId方法更新文章。
    • 如果更新成功,返回ArticleResponseData.ok();如果更新失败,返回ArticleResponseData.fail()。
  12. @PostMapping注解表示处理POST请求,处理的路径为"/admin/article/delete",方法名为delete。
    • 该方法用于处理文章的删除。
    • 通过@RequestParam注解获取请求中的id参数。
    • 通过articleServiceImpl调用deleteArticleWithId方法删除id对应的文章。
    • 如果删除成功,返回ArticleResponseData.ok();如果删除失败,返回ArticleResponseData.fail()

登录界面的相关代码解析:

这段代码是一个处理用户登录相关功能的控制器类,使用了Spring MVC框架。下面是对代码的分析:

  1. 该类位于com.itheima.web.client包下。

  2. 使用了@Controller注解,表示这是一个控制器类,处理请求和响应。

  3. 定义了一个login方法,使用@GetMapping注解,处理GET请求。该方法向登录页面跳转,并封装原始页面地址到Map对象中。

  4. 该方法接收一个HttpServletRequest类型的参数,用于获取请求头和参数中的原始页面地址。

  5. 如果参数url中已经封装了原始页面路径,则直接返回该路径;如果请求头本身包含登录,将重定向url设为空,让后台通过用户角色进行选择跳转;否则就记住请求头中的原始访问路径。

  6. 返回视图名为"comm/login"的登录页面。

  7. 定义了一个AccessExecptionHandler方法,使用@GetMapping注解,处理GET请求。该方法用于处理Security拦截的无权限访问异常,接收两个路径变量pagecode,并返回对应的错误页面视图名。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值