项目作者: leiphp

项目描述 :
:octocat:SpringBoot是由 Sprinboot+shiro+mybatis+freemarker+redis 等技术实现的 Java 博客系统,界面简洁美观、有些功能后续还待完善、请大家多多支持!
高级语言: Java
项目地址: git://github.com/leiphp/SpringBoot.git
创建时间: 2019-08-13T15:23:48Z
项目社区:https://github.com/leiphp/SpringBoot

开源协议:

下载


SpringBoot博客项目

👉SpringBoot项目是雷小天开发一个Java博客项目,由 Sprinboot+shiro+mybatis+freemarker+redis等技术实现。本人主要从事PHP开发工作,由于对Java特别感兴趣,也抱着一个学习热爱Java的心态做了这个springboot开源项目,有很多地方做的不是很完善,后续也将慢慢完善。如果大家感兴趣可以点个star支持下!

home
login
admin

开发文档

  • 注意事项

    1. 运行项目前请确认安装好了mysql和redis
    2. Linux登录MySQL时,出现Access denied for user ‘root’@’localhost’ (using password: YES) 拒绝访问
      i.出现这个问题是由于没有设置过密码造成拒绝访问,解决办法如下:
      ii.修改vim /etc/my.cnf配置文件(my.ini是windows),先新增skip-grant-tables跳过密码验证,再重启MySQLsystemctl restart mysqld.service
      iii.Mysql密码设置步骤

      1. 1.登入Linux`输入mysql -u root -p`回车出现password不用输入密码直接回车进入
      2. 2.进入mysql数据库`输入:mysql> use MySQL`
      3. 3.更改密码:`输入:mysql>update user set authentication_string=password(“这里是你想重置的密码”) where user=“root”;`
      4. 4.刷新数据库`输入:mysql> flush privileges`
      5. 5.退出mysql`输入: mysql>exit`
      6. 6.修改完root密码后,将my.cnf文件添加的`skip-grant-tables`删除,保存重启mysql服务就可以通过密码登陆mysql
      7. 7.试一下把!`mysql>mysql -u root -p`
    3. MySql数据库文件导入
      3.1.新增数据库CREATE DATABASEspringbootDEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
      3.2.选择数据库,先查看数据库是否创建成功use 数据库名;,再选中use 数据库名;
      3.3.导入springboot.sql文件source /data/wwwroot/springboot.sql注意:source命令后面不要加 分号

    4. linux安装redis 完整步骤
      4.1.获取redis资源wget http://download.redis.io/releases/redis-4.0.8.tar.gz
      4.2.解压tar xzvf redis-4.0.8.tar.gz
      4.3.安装
        cd redis-4.0.8
        make
        cd src
        make install PREFIX=/usr/local/redis
      4.4.移动配置文件到安装目录下
        cd ../
        mkdir /usr/local/redis/etc
        mv redis.conf /usr/local/redis/etc
      4.5.配置redis为后台启动
        vi /usr/local/redis/etc/redis.conf //将daemonize no 改成daemonize yes
      4.6.将redis加入到开机启动
        vi /etc/rc.local //在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf (意思就是开机调用这段开启redis的命令)
      4.7.开启redis
        /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
      4.8.常用命令
        redis-server /usr/local/redis/etc/redis.conf //启动redis
        pkill redis //停止redis
        卸载redis:
          rm -rf /usr/local/redis //删除安装目录
          rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本
          rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹

项目部署

  • jar方式部署 详情
  • docker方式部署
    1. 主机安装MySQL和Redis,并导入springboot.sql文件
    2. 拉取docker镜像:docker image pull leixiaotain/springboot-blog:latest
    3. 镜像生成容器,并启动项目:docker run —net=host -d -p 8081:8081 leixiaotain/springboot-blog(一定要带上—net=host否则会隔离容器网络,导致连接MySQL失败)
    4. 浏览器输入IP地址:8081访问
  • 项目后台登录
    1. 账号:admin
    2. 密码:123456 如果登录失败,手动加密放到数据库password中MD5(adming123456)

学习笔记

  • springboot启动方式

    1. @EnableAutoConfiguration 注解作用:扫包范围 默认在当前类里面(注解在类上面)
    2. 启动 加上扫包范围注解@ComponentScan(cn.lxtkj.springboot.controller),如果是多个时@ComponentScan(basePackages = {“cn.lxtkj.springboot.controller”,”cn.lxtkj.springboot.dao”})不建议这种方式,建议使用@SpringBootApplication
    3. @SpringBootApplication等同@EnableAutoConfiguration + @ComponentScan同级包(SpringBootApplication同级包为:cn.lxtkj.springboot)和当前包,所以启动类一般放最外面

    开发记录

    • 整合freemarker
    • 整合全局捕获异常
      全局捕获异常,使用AOP技术,采用异常通知
    • 整合mybatis
    • @Transactional事务注解(当报错会回滚,保持事务的一致性)" class="reference-link">@Transactional事务注解(当报错会回滚,保持事务的一致性)
    • 整合jpa
    • SpringBoot整合多数据源
    • SpringBoot项目打包
      1. 使用命令 mvn clean package 打包(mvn packsge Dmven.test.skip=true/ mvn -Dmaven.test.skip -U clean package //跳过测试类)
      2. 使用idea Maven Projects > 项目名 > Lifecycle > 双击package开始打包
    • SpringBootActuator监控接口
    • 项目后台及前台功能开发及完善
    • shiro权限功能完善
    • 项目redis缓存功能完善

    项目来源