SpringBoot之从零搭建网站(可提供源码)

在这里插入图片描述
前言
为什么想要搭建这个工作室?
我还记得,在大学的时候,我们往常一样的在学习过着大学生活,同往常一样的解决这某个bug,不停地问度娘,很巧的碰到了一个同行在他的博客中完美的记录了搭建网站的过程,随后我又看了看他写的其他博客文章,觉得都非常的不错,并且同时也被他博客网站的简约清新吸引,也就在那刻,心中埋下了准备自己网站种子…

于是在那之后的时候我就开始了Bootstrap了的学习,然后好像也并没有什么卵用,因为还是不会用~~~

就这样一直拖了大概有3个月,某天我才意识到我好像有件很重要的事没完成,就是这么的突然,毫无准备的就开始了网站的搭建。

自己在本子上设计了网站的所有页面的大致样式(也借鉴了许多大佬的网站样式,哈哈,我承认我审美不是很好),列出了应该有的功能,当时看来并不算多,也给自己定了一个目标期限,在7月5日之前上线,不错有了目标也就有了动力,就这么开始干了。

一件事情在开头总是想的很美好,然而事实总会跟你对着干。在网站搭建的过程中遇到了无数多的前端页面设计bug,我在此之前也可以算的上是个前端小小白,很是无奈,不过还是要在这里感谢其他工作室里帮我解决了许多bug的波波、田小宇和杨小卿,没有你们估计我的网站还得推迟半年才能上线吧,O(∩_∩)O哈哈~

不过现在网站还只是个雏形 ,还有继续开发中。。。。

文章概述

  • 关于项目,对于学习Springboot是个挺不错的练手项目,可以让你在烦恼的业务逻辑中保持一颗纯洁的心
  • 如何从零开始,使用Springboot开发项目
  • 开发前的一些准备工作,以及思考项目整体结构与思路
  • 记录开发过程中遇到的一些难题以及bug
  • 总结目前工作室网站的一些优缺点
  • 思考整个项目有哪些可以优化的地方,以及有哪些可增加的功能

项目需求

项目背景

对于Springboot的朋友来说,最好的一个学习方式就是那一个功能俱全的项目来练练手,通过自己重构项目来发现其中的潜在难题,并且也能很好的在编码过程中总结和发现问题、解决问题。使用Springboot开发的网站,简单并且实用,适合做练手项目。

功能需求

首页轮播图以及页面主体风格

在这里插入图片描述

服务内容

在这里插入图片描述

技术领域

在这里插入图片描述

顶尖团队

在这里插入图片描述

软件开发服务精选

在这里插入图片描述

价格定制

在这里插入图片描述

联系我们

在这里插入图片描述

安装部署需求

  • 可以使用docker方式部署,也可支持-jar方式
  • 使用springboot自带方式打包

非功能需求

性能需求
  • 首页响应时间不超过2秒钟
  • 文章页响应时间不超过3秒钟

项目设计

总体设计

本项目用到的技术和框架
1.项目构建:Maven
2.web框架:Springboot
3.数据库ORM:Mybatis
4.数据库连接池: HikariCP
5.分页插件:PageHelper
6.数据库:MySql
7.缓存:Redis

本项目中的关键点

1.采用Springboot开发,数据库使用连接池加orm框架的模式,对于系统的关键业务使用Redis缓存,加快相应速度。
2.整体系统采用门户网站+后台管理方式搭建,门户网站信息内容以及工作室介绍,后台管理用于价格定制、网站内容编辑,查看反馈,管理评论留言。
3.使用阿里云OSS进行静态资源存储,以及CDN全站加速。

环境

工具 名称
开发工具 IDEA
语言 JDK1.8 、html、css、js
项目架构 SSM
ORM Mybatis
缓存 Redis
项目构建 Maven
运行环境 阿里云Centos7
请求转发 nginx

在这里插入图片描述

对于熟悉Spring开发的朋友来说,相信对此结构也不会陌生。平时的开发过程中,结构设计是重要的环节,特别是协作开发的时候,明细的分包,模块化,可减少代码提交时的冲突。并且明确的结构有助于我们快速的寻找所对应的类。

打包、部署和运行

本项目采用Springboot的maven插件进行打包,打包结果:.jar
部署方式:使用 nohup java -jar ******.jar >
**.log 2>&1 &的方式,后台启动项目,并在该路径下生成运行日志。
大部分人喜欢打为war包,利用tomcat启动。两种方式都可以。

总结

开发中遇到的难点
  • 要实现在一个页面进行权限验证,如果验证不成功会跳转到登录界面,并且登录成功后还要返回到之前界面,这里由于对SpringSecurity内部原理的不了解,所以我这里采用的方法是利用请求头和响应头存储url,并在登录成功后的页面出跳转到响应头中存储的url处

  • 传头像处使用上传头像至阿里云的OSS对象存储中,由于上传问题并没有返回上传成功后的图片url地址,于是只好设置OSS的Bucket为公共读权限,然后当上传成功后手动拼接图片url并存入数据库
  • 项目中最大的难点还是莫过于页面css的设计,但是使用了妹子UI后极大的解决了这个问题,只需修改少量css就能实现自己所需要的样式
项目整体优化
  • 目前项目首页以及文章页响应时间过长,后期最好优化到1s响应时间
  • 定时定期进行数据库的备份,防止出现网站被攻击后数据丢失的风险
  • 手机端浏览文章页面会出现代码自动换行问题,不便于浏览过程

以上就是我在博客网站搭建过程后的所有总结记录,可能会有遗缺部分,等以后想起来了再来修改吧。

其他福利

微信扫下方二维码关注公众号,经常分享一些技术上的理解文章。欢迎骚扰,还可以回复想要的管理系统或者毕业设计,分享各种系统源码(仅限Java语言哦,如需定制系统加qq:226186862)
在这里插入图片描述

本人秉持开源原则,待后期网站功能完善之后会同步源码至Github、码云中。需要搭建网站的朋友欢迎使用使用,只要给我个star就好啦,哈哈。如果搭建过程中有各种问题欢迎来骚。

发布了24 篇原创文章 · 获赞 12 · 访问量 3432

猜你喜欢

转载自blog.csdn.net/mxg74110/article/details/103204869