开发小而美博客总结

1.P23 添加th:href="@{/css/me.css}"和xmlns=“http://www.w3.org/1999/xhtml” 但是不能加载css样式
解决:在application.yml里加resources:add-mappings: true,或者在HTML里改用 xmlns:th=“http://www.thymeleaf.org” 声明

  1. P26 访问admin/login页面Request method ‘GET’ not supported
    解决:在logininController加
    @GetMapping("/login")
    public String LoginPage1() { return “admin/login”;}

  2. JPA生成table问题
    Spring boot 2.x 里更改了设定spring.jpa.hibernate.use-new-id-generator-mappings=true,可能影响JPA的ID generator。在application.yml吧设定改为false。
    Spring.jpa.hibernate.ddl-auto = update:运行过程中更改DB。Production环境中设为false比较安全。

  3. MD5加密密码:可以用spring自带的DigestUtils.md5DigestAsHex。

5.BlogServiceImpl
blogRepository.findOne(id) 在Spring 2.x里可以改用getOne(id),但是id不存在的时候getOne(id)并不会return null,所以后面的if (blog == null)不能正常工作。可以改用getBlogById(id), 在BlogRepository里加上Blog getBlogById(Long id)这个方法。

  1. PageRequest和Sort的构造方法在spring 2.x里是protected的,可以改用Pageable pageable = PageRequest.of(0, size, Sort.by(Sort.Direction.DESC, “updateTime”));

  2. org.hibernate.LazyInitializationException - could not initialize proxy - no Session
    参考https://stackoverflow.com/questions/22821695/how-to-fix-hibernate-lazyinitializationexception-failed-to-lazily-initialize-a
    我的解决方法是 e.g.
    @ManyToMany(fetch = FetchType.EAGER)
    private List tags = new ArrayList<>();

  3. Request method ‘POST’ not supported
    检查controller里对应的注解

9.网页响应速度过慢:
1.第一次找到一个国内免费cdn:https://www.bootcdn.cn/,虽然加速了,但没解决问题本质
2.问题本质,通过F12可以看出,访问页面时间都浪费在https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic&subset=latin(这个页面是senamtic.min.css请求的)上了,这是谷歌字体,服务器在外国,请求半天最终结果是无法访问;解决办法,将字体下载到本地,将senamtic.min.css也下载到本地(https://files-cdn.cnblogs.com/files/tekikesyo/LocalGoogleFont.zip),并进行替换,在第11行
3.速度问题已经解决了,但是F12发现有3个请求报错,分别是icons.ttf、icons.woff、icons.woff2;解决方法,将相关文件导入(文件在senamtic官网下载的压缩包里面)
4.文件导入后本以为完事了,这时还有一个坑,idea无法识别,最后误打误撞直线发现,先在idea中手动打开一下这3个文件就可以识别了。

如何将博客部署到服务器上:
先确保项目能正常在本地运行
1.打开功能文件pom.xml 将中的jar包改成war包。在使用maven的clean和package打包
2.打包完成的目录默认项目的target目录下,有个名称为(项目名)-(版本号)的war包
3.把war包 放入tomcat的目录下面有个webapp,将war包丢进去就行了,他会自动识别
4.接着到tomcat的bin目录下有个startup.bat 启动tomcat,等tomcat编译运行
5.当bin下出现一个跟你项目名-版本号一样的一个名字,你就输入正确的网址去访问就好了
正常到这里就完成了,不过我遇到了输入正确访问地址然后出现404
这个的话就要分析三个地方:
1.原本的启动类
2.Pom.xml中将springboot自带的tomcat移除掉,再添加一个servlet的api依赖
3.最后最后,jdk版本和tomcat版本。比如本地1.7 服务器1.8 .
4.这些都弄好了就肯定不会404了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值