SpringBoot+JPA 博客项目的启动(历经波折)

这是在公众号里看到的一个 springboot项目,感觉好像不是特别难,就准备尝试一下,我把资料放在了放到了网盘里,要的可以私聊了。
先看看效果:
在这里插入图片描述

  • 用Java开发工具(推荐Idea)选择 maven 项目导入
  • 创建数据库 blog,并导入数据库脚本
  • 修改开发环境(-dev)的配置文件中的数据库信息,确保连接的是自己的数据库 博客首页访问地址: localhost:80
  • 博客后台登陆页面访问地址 localhost:80/admin 后台添加博客 博客主页刷新即可更新

这个是大致步骤。
首先maven项目导入一下:
在这里插入图片描述
然后看看有没有需要配置的地方,貌似没事。
然后导入一下数据库,当然先用Navicat 创建一个
因为我看了一下sql数据
在这里插入图片描述
应该需要自己先创建一个数据库的吧。
在这里插入图片描述
然后
在这里插入图片描述
把对应下载下来的sql文件导入进去
在这里插入图片描述
刷新一下就都有了

然后修改开发环境,连接自己的数据库
确保自己输入的是正确的,而且可能需要在url那边输入

&serverTimezone=UTC&

然后应该就是运行一下吧
我运行出现了:

Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.

解决方法:
把这个enable launch 这个选项去掉
在这里插入图片描述
可能是由于版本的关系吧,有一系列问题。。。
1.Error: java: 程序包javax.validation不存在
要导入依赖:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-validation</artifactId>
   <version>2.3.3.RELEASE</version>
</dependency>

2.还有一个是org.springframework.boot的报错
需要把这个注释掉:
在这里插入图片描述
然后更新一下

方法
org.springframework.data.repository.query.QueryByExampleExecutor.findOne(org.springframework.data.domain.Example)不适用
(无法推断类型变量 S
(参数不匹配; java.lang.Long无法转换为org.springframework.data.domain.Example))
方法 org.springframework.data.jpa.repository.JpaSpecificationExecutor.findOne(org.springframework.data.jpa.domain.Specification<com.lrm.po.Blog>)不适用
(参数不匹配; java.lang.Long无法转换为org.springframework.data.jpa.domain.Specification<com.lrm.po.Blog>)

又有这个错误,就是各种各样的版本升级问题。。。
有参考链接:https://blog.csdn.net/qq_41115379/article/details/114902108
需要在标红的地方

findOne(id)改成findById(id).get()delete(id)改成deleteById(id)

例如:

public Type getType(Long id) {
    return typeRepository.findById(id).get();
}

以及:

'PageRequest(int, int, org.springframework.data.domain.Sort)' has protected access in 'org.springframework.data.domain.PageRequest'

参考链接:https://blog.csdn.net/qq_41115379/article/details/114901833

Pageable pageable = new PageRequest(0, size, sort);

改成:

Pageable pageable = PageRequest.of(0, size, sort);

以及:

'Sort(org.springframework.data.domain.Sort.Direction, java.util.List<java.lang.String>)' has private access in 'org.springframework.data.domain.Sort'

参考链接:https://blog.csdn.net/qq_41115379/article/details/114901743
把:

Sort sort = new Sort(Sort.Direction.DESC,"updateTime");

改成:

Sort sort = Sort.by(Sort.Direction.DESC,"updateTime");

还有这里的问题:
在这里插入图片描述
应该就是Tag和Long之间的转换有问题
暂时先不管直接为空好了:
在这里插入图片描述
再运行一下

问题:程序包import org.junitiyu.Test;变红(RunWithd的问题可以直接导入解决)

我直接把他改成了 可能就是版本问题吧

import org.junit.Test;

再运行一下

s is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

com.mysql.jdbc.Driver 改为 com.mysql.cj.jdbc.Driver即可
这个我也是本来应该知道的,还是版本的问题

rect the classpath of your application so that it contains a single, compatible version of org.thymeleaf.spring5.SpringTemplateEngine

是thymeleaf的版本冲突.或者降低springboot版本

 <thymeleaf-spring5.version>3.0.9.RELEASE</thymeleaf-spring5.version>
       <thymeleaf-layout-dialect.version>2.2.2</thymeleaf-layout-dialect.version>

参考了这个方法,直接把上面两个删了
在这里插入图片描述
然后运行一下:因为我的80端口有东西,所以弄成了82端口,代码改一下就可以了
访问 localhost:82/admin
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值