【2020版】4小时学会Spring Boot+Vue前后端分离开发
超级鱼老大:
其实大三的学生都希望可以学习一个由vue+spring boot+element ui+shiro的简单项目,这样就可以为毕业项目做准备,希望楠哥可以录制一下。
【回复】回复 @楠哥教你学Java :对对对,一直在找这种是视频,基于vue+antd/element+springboot+shiro+mybatisPlus,不要jpa的,jpa企业开发很少有人用,非常需要,一直寻找这样的视频找好久了,数据库的rbac模型我也特别迷糊,想听
【回复】回复 @佛系克烈 :同求,谢谢哦[微笑]
wwpjjkp:
有跨域问题的可将代码替换为:
package com.yuanshuai.springboottest.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class CrosConfig {
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowCredentials(false)
.allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")
.allowedOrigins("*");
}
};
}
}
【回复】把.allowedOrigins("*")改成.allowedOriginPatterns("*")就可以了 其他不用改 主要是springboot版本太高
【回复】我也是这个问题
allow credentials == true 和 Access-Control-Allow-Origin * 不能同时存在
那为什么视频里的就可以,我这个就不行呢[撇嘴]
如果想要设置allow credentials为true,那 Access-Control-Allow-Origin就必须指定访问地址,不能是通配符*,这是服务器版本的问题吗?[思考]
【回复】回复 @Java新星 :谢谢,解决了,爱死你了,兄弟[嗑瓜子]
楠哥教你学Java:
P4已重录,声音炸裂的Bug已修复,三连走起来
【回复】享受到福利了,我说怎么声音好了
【回复】回复 @幸福的小猴子kiki :几百本常用电子书链接:https://github.com/XiangLinPro/IT_book
遇见一个小矮子:
刚想说这么好的教程居然才几千播放天理难容,才发现是前天刚上传的,话不多说已三连。老师讲的很清晰,先占名,日后必火。
顺便婊一下那个XX邦培训机构的广告引流视频居然还有3.2w播放...[无语]
【回复】回复 @59277187413_bili :这套适合有一定基础的人看,完全没基础的看起来很多地方都不懂.整套下来是一个标准的增删改查流程,这个搞定了,再学习其他的就容易很多了.不过up用到的很多东西都是最新的,这个在其他人的视频那里是没见过的,比如数据库用的IDEA自带的,VUE UI这些,挺好的.
【回复】感谢老铁的支持哈[支持]
【回复】楼主看完了吗,客观说说怎么样
账号已注销:
讲的很好,我看现在很多spring视频动不动几十个小时,我确实看着没什么动力,其实我觉得这种代码对于编程不是完全零基础的人来说是应该讲一下大致的流程和原理,熟悉一下思路,其他的功能查询文档或者各种资料自然可以得到。up主的视频讲的很好!支持!
o3oYDD_-:
过年在家学完了spring全家桶,刚好想接触vue没有头绪,看完这个视频豁朗开窍了,不错三连支持一下!
【回复】回复 @heartFire98 :入门很快,推荐尚硅谷的教程,讲的还是不错的
【回复】回复 @heartFire98 :才大二 时间还多 建议从spring开始学 理解spring原理
【回复】回复 @heartFire98 :spring boot 10分钟入门
愿有清风不解语i:
看这弹幕,有多少人是学了vue以及Java的,jpa可以说是全自动的持久层框架,对付小一点的项目是非常好用的,因为几乎不用自己写sql,还有问为什么实体类不写get和set什么的,没看见创建项目的时候添加了Lombok吗?如果不清楚的建议百度,还有技术选型的,问老师为什么不用mybatis的,咋滴,老师不用,你就不会用mybatis了?你咋不问老师为什么是个男的?
【回复】可能刚入门的没试过@Getter有多舒服[doge]
【回复】回复 @熠阳0121 :Lombok就是红辣椒的图标,如果没用的话,可以考虑看一下idea的配置,一般都是配置出了问题
LomsLKkk:
P1中跨域出问题的小伙伴,原因可能是你的springboot版本比视频里的高,解决办法就是在楠哥复制跨域的那几行代码中把
allowedOrigins("*")
改成
allowedOriginPatterns("*") 就可以了
杨桐桦:
跨域还没能解决的看这里:
这里把老师的代码:
.allowCredentials(true)
改成:
.allowCredentials(false)
就可以了。
这个属性是“是否支持跨域用户凭证”。
别问我为什么,我这么改了就可以了跨域了。
海边的小贱贱:
P1 结尾的箭头函数
axios.get("http://localhost:8081/book/list").then((resp)=>{
this.books = resp.data
})
【回复】回复 @伊曼沙华 :俺也一样 老哥解决了没
【回复】为什么我这么做没有发送data数据,是还要在哪里配置些什么吗
【回复】你这里用this指向的是回掉函数里的对象 应该在外面 let that = this 然后在that.books=resp.data
将白嫖贯彻到底_:
p3那节设置动态设置菜单栏选中状态,只使用<el-menu router :default-active=$route.path>。比不使用:class="$route.path==item2.path?'is-active':''"和<el-menu router :default-openeds="【'0', '1'】">这两个会更好
【回复】感谢大佬~[热词系列_妙啊]
【回复】回复 @苍山十九疯 :我也是多尝试才试出来的。$route.path是获取当前路由对象的路径。
【回复】感谢大佬指点 一直在这里蒙蔽
稀薄梨鸭头:
感谢up主,已完成 https://github.com/yidou120/BookDemo 欢迎star
KwanHe:
{"content":【{},{},{}】,"pageable":{"sort":{"sorted":false,"unsorted":true,"empty":true},"offset":6,"pageSize":3,"pageNumber":2,"paged":true,"unpaged":false},"last":false,"totalElements":17,"totalPages":6,"size":3,"number":2,"sort":{"sorted":false,"unsorted":true,"empty":true},"numberOfElements":3,"first":false,"empty":false}
查询分页的时候为什么content内容一直为空,其他参数可以获取到
楠哥教你学Java:
关注微信公众号:Java大联盟
回复【面试题】
2020年最新企业面试题解析送给大家
【回复】回复 @崔崔崔崔ccc :百度搜 Typora
【回复】回复 @赵小雷的南方姑娘C :typo ra
【回复】楠哥,这个文本编辑写笔记的软件是什么啊
灰烬_大人:
看完并写完了,总结一下遇到的坑:
1.一定要用vue2,vue3不兼容elementUI和axios,浪费了我很多时间
2.MySQL千万不要驼峰式命名(表名和属性名),用jpa查询的时候会自动给你加上下划线,然后报错属性不存在,离大谱
【回复】3.实体类型能用String就用String,这样就能在后端判断前端数据是否合法了,不如若数据类型不同,前端数据传到后端会直接报错。MySQL不用担心,就算属性类型是int,你插入类似“123”这种的字符串也能插入成功的
【回复】回复 @时常痛苦面具的我 :不知道,速成的早忘了
PianoBear_:
在添加elementui插件的时候,如果遇到app.vue无法显示的情况,可能是由于vue版本过高造成的:
在创建新项目的最后一个步骤上,有一个选择vue.js的版本(默认是3.x),我们勾选成2.x,就可以解决了
但是3.x的版本我不知道是因为什么造成的app.vue无法显示。
如果我使用的是3.x的版本所生成的项目,在注释掉main.js里的这一句:import './plugins/element.js'后,就不会出现显示的问题,目前我只知道是这个语句导致的错误,但是解决办法还是没找到
bili_12025877058:
java: java.lang.IllegalAccessError: class lombok.javac.apt.LombokProcessor (in unnamed module @0x6119872d) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.processing to unnamed module @0x6119872d
我这这怎么报这个错
Tang7O:
跨域问题无法解决的同学,可以尝试以下写法@Configuration
public class CrosConfig extends WebMvcConfigurationSupport {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedMethods("*")
.allowedOrigins("*")
.allowedHeaders("*");
super.addCorsMappings(registry);
}
}
【回复】这个解决了我的跨域问题
糖糖家的喵喵:
java.lang.IllegalStateException: Failed to load ApplicationContext 报错解决
Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
在直接拷贝的application.yml文件中添加database-platform,如下:
spring:
datasource:
url:
username:
password:
driver-class-name:
jpa:
//在这个里面添加database-platform,其他不变
database-platform: org.hibernate.dialect.H2Dialect
================================================
参考链接:https://blog.csdn.net/LuuvyJune/article/details/89884118
【回复】感谢兄弟[大哭][大哭]这个报错我找了一天了
【回复】呜呜呜太感谢了,一个人被隔离在家只能自己学,报这错误半天查csdn解决不了,太牛了,万分感谢![打call][打call][打call]