SpringBoot+SemanticUI 我的第一个博客

SpringBoot+SemanticUI 我的第一个博客

我的第一个博客(孟哈哈)

此次用到了Springboot以及SemanticUI框架构建一个个人博客。第一次写,如有错误,请多多指正。

引用自 https://www.bilibili.com/video/BV1Pt4y1U7hv

所需技术

后端:Spring Boot + JPA + thymeleaf模板
数据库:MySQL
前端UI:Semantic UI框架

1.开发工具与环境:

IDEA 2020
Maven 3
JDK 1.8

2.学习内容:

1.需求分析与介绍
2.页面的制作与设计
3.后端管理实现
4.前段管理实现

  1. 管理员 ,将会对分类,标签,做相应的增删改查。
  2. 用户,对博客进行评论,浏览。

3.功能搭建

IDEA页面展示

1.前端页面
首页: index (搭建首页页面)
分类: type (搭建分类页面)
标签: tag (搭建标签页面)
归档: archives (搭建归档页面)
关于我: about (搭建关于我页面)
2.涉及的插件

编辑器 Markdown

内容排版 typo.css

动画 animate.css

代码高亮 prism

目录生成 Tocbot

滚动侦测 waypoints

平滑滚动 jquery.scrollTo

二维码生成 qrcode.js
3.引入的SpringBoot模板
web
Thymeleaf
JPA
MySQL
Aspects (此处IDEA如没有此选项,需要到Aspect官网下载插件引入)
DevTools

4.yml文件配置

1.application.yml

spring:
  thymeleaf:
    mode: HTML
  profiles:
    active: dev
  messages:
  (此处i18n国际化界面)
    basename: i18n/messages

comment.avatar: /images/me.png

(此处使用端口80,方便上传到自己的服务器,通过域名直接访问,不需要输入后面的:8080 进行访问)
server:
  port: 80

2.application-dev.yml

spring:
  datasource:
    (新版的Mysql版本要用cj.jdbc)
    driver-class-name: com.mysql.cj.jdbc.Driver
    (此处的49.232.212.151为域名,开始编写时输入数据库的主机名即可)
    url: jdbc:mysql://49.232.212.151/blog?serverTimezone=GMT&useUnicode=true&characterEncoding=utf-8
    username: root
    password: Meyolo0904!
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
(日志:方便调试,开发)
logging:
  level:
    root: info
    com.myl.blog: debug
  file:
    name: blog-dev.log

5.异常处理:

erro文件夹:
404页面
500页面

6.实体类设计

此处示例一个即可(分类):
dao层编写:

TypeRepository

package com.myl.blog.dao;

import com.myl.blog.po.Type;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;


import java.util.List;

public interface TypeRepository extends JpaRepository<Type,Long> {
   
    Type findByName(String name);


    @Query("select t from Type t")
    List<Type> findTop(Pageable pageable);
}

po层编写:
Type

package com.myl.blog.po;


import javax.persistence.*;
import org.hibernate.validator.constraints.NotBlank;
import java.util.ArrayList;
import java.util.List;

@Entity
@Table(name ="t_type")
public class Type {
   

    @Id
    @GeneratedValue
    private Long id;
    @NotBlank(message = "分类名称不能为空哦")
    private String name;

    @OneToMany(mappedBy = "type")
    private List<Blog> blogs = new ArrayList<>();

    public Type() {
   
    }

    public Long getId() {
   
        return id;
    }

    public void setId(Long id) {
   
        this.id = id;
    }

    public String getName() {
   
        return name;
    }

    public void setName(String name) {
   
        this.name = name;
    }

    
  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值