![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring boot
文章平均质量分 81
一口木桶饭
意气风发,挥斥方遒!
展开
-
空的springboot项目导入nacos 配置中心和注册中心依赖后报错,提示 org.apache.http.impl.client.HttpClientBuilder 这个类找不到 问题的解决
0. 开发环境SpringBoot 2.3.3.RELEASESpringCloud Hoxton.SR10SpringCloudAlibaba 2.2.3.RELEASESpringcloudAlibabaNacos 2.2.2.RELEASE1. 报错内容报错过长,只留下了重要的一些报错语句java.lang.IllegalStateException: Error processing condition on org.springframework.cloud.commons原创 2021-03-15 08:41:10 · 7647 阅读 · 7 评论 -
spring整合 mybatis时 SqlSessionFactoryBean的一个小报错:Bean named ‘sqlSessionFactory‘ is expected to be of ty
标题盛不下了,把报错写到这Bean named 'sqlSessionFactory' is expected to be of type 'org.mybatis.spring.SqlSessionFactoryBean' but was actually of type 'org.apache.ibatis.session.defaults.DefaultSqlSessionFactory'代码背景只是在做spring整合mybatis 的练习的时候出现的一个报错,技术版本spiring:原创 2021-02-27 13:16:06 · 6222 阅读 · 0 评论 -
考研为了背单词,我手写了一个背单词小 app
1. 背景2022年考研的考研狗,寒假一个人孤苦伶仃背单词,想检查却无人提问,于是萌生了手写一个体温单词的小应用。最初只是想做一个web端的网页,用浏览器来使用,但总感觉差点意思,就封装了一下,封装成了apk形式,最终可以在手机上有模有样展示,如下图:目前只是实现了展示单词,每次进入app, 就会随机出现一个单词(单词在数据库中), 点击认识,就会切换到下一个随机的单词, 点击提示, 机会出现单词的词根等帮助自己记忆的提示,点击翻译则是改单词对应的中文意思。2. 技术实现该应用是基于spring原创 2021-02-15 10:56:26 · 2569 阅读 · 5 评论 -
springboot整合shiro (四) shiro实现权限授权
1. ShiroConfig中添加授权过滤器filterMap.put("/add", "perms[user:add]");filterMap.put("/update", "perms[user:update]");// 设置未授权页面filterFactoryBean.setUnauthorizedUrl("/unAuth");这个时候我们登录点击add或者update 就会跳转到未授权页面2. 给用户授权我们只需要一个 SimpleAhtuorizationInfo 并给他设原创 2020-06-08 10:27:31 · 553 阅读 · 0 评论 -
springboot整合shiro (三) 结合Mybatis实现真正登录
1. 数据库中数据如下2. 编写Mapper和Service3. 在 UserRealm 中实现登录逻辑即可/** * 执行认证逻辑 * @param authenticationToken * @return * @throws AuthenticationException */@Overrideprotected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken原创 2020-06-08 08:25:10 · 253 阅读 · 0 评论 -
springboot整合shiro (二) 使用shiro过滤器实现认证资源拦截
我们去写几个页面来实现登录拦截核心代码:// 添加 Shiro 内置过滤器 /** * Shiro 内置过滤器, 可以实现权限相关的拦截器 * 常用的过滤器: * anon: 无需认证(登录)即可访问 * authc: 必须认证才可访问 * user: 如果使用 rememberMe * perms: 该资源必须得到资源权限才能访问原创 2020-06-07 19:53:02 · 934 阅读 · 0 评论 -
springboot整合shiro (一) ShiroConfig配置类编写
shiro实现用户登录认证需要三个核心apiSubject 用户主体SecurityManager 安全管理器Realm 连接数据的桥梁1. 导入shiro的maven依赖导入shiro和spring整合的依赖<dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring</artifactId> <原创 2020-06-07 16:42:49 · 3548 阅读 · 2 评论 -
Alibaba Nacos配置中心加载多配置集
我们把配置数据分为了三个不同的配置文件方便管理然后在bootstrap.properties里边指定就好spring.cloud.nacos.config.extension-configs[0].data-id=datasource.ymlspring.cloud.nacos.config.extension-configs[0].group=devspring.cloud.naco...原创 2020-04-20 10:49:08 · 5065 阅读 · 1 评论 -
Alibaba Nacos配置中心的命名空间与配置分组
1. 命名空间在nacos中有一个叫做命名空间的东西默认都是public, 我们可以看到我们的配置类默认都在public命名空间下由于我们的项目需要开发,测试, 生产等多个不同的配置, 命名空间就可以做配置隔离我们填写多个命名空间可以看到之前的那个就属于public命名空间这次我们在生产环境下新建一个配置文件我们启动项目, 默认是会使用public下的配置文件的,要想用自己...原创 2020-04-19 13:38:36 · 12203 阅读 · 3 评论 -
Alibaba Nacos配置中心的使用
Nacos 1.1.4下载链接链接:https://pan.baidu.com/s/1HNWGEV1INwd5igHpDNFOBg提取码:rr3d基础用法请看Alibaba Nacos注册中心的使用1.导入依赖 <dependency> <groupId>com.alibaba.cloud</groupId> <artifac...原创 2020-04-18 20:51:05 · 1566 阅读 · 4 评论 -
Alibaba Nacos注册中心的使用
Nacos 1.1.4下载链接链接:https://pan.baidu.com/s/1HNWGEV1INwd5igHpDNFOBg提取码:rr3d1. pom.xml中导入<dependencyManagement> <dependencies> <dependency> <groupId>co...原创 2020-04-18 18:28:56 · 381 阅读 · 1 评论 -
freemarker报错500, 无法跳转到templates目录下的 index.ftl 文件问题解决
很滑稽, 我用的是springboot2.2.6版本,据说2.2.x 版本后缀改为了.ftlh,然后试着改了一下后缀就成功了…原创 2020-04-03 09:03:48 · 962 阅读 · 0 评论 -
Access denied for user ''@'localhost' (using password: NO)问题的解决
springboot项目启动遇到该问题, 查了好几天的错都没找到,结果…配置文件里边要是username和password, 而不是IDEA自己给出来的data-username和data-password,内心崩溃ing...原创 2020-04-02 23:27:27 · 473 阅读 · 0 评论 -
Spring Boot 的@RunWith注解无法使用
springboot 2.2.4版本, 把exclusion 和 Junit注释掉就可以了原创 2020-03-26 08:46:28 · 6104 阅读 · 1 评论 -
Spring Boot入门(二十八) 之 Docker安装数据库
1.下载MySQL的Docker镜像docker pull mysql2.开启MySQL开启MySQL需要两个注意的地方1.做端口映射 就是把主机的端口映射到MySQL的3306端口上,否则外部无法访问2.指定启动的密码docker run --name mysql01 -p 8888:8080 -e MYSQL_ROOT_PASSWORD=root -d mysql-p指定端口...原创 2020-03-21 12:11:57 · 117 阅读 · 0 评论 -
Spring Boot入门(二十七) 之 Docker常用命令
1.查看已有镜像docker imagesoh我的Docker里边啥也没有2.搜索镜像docker search xxxx比如tomcat docker search tomcat3.更改Docker为阿里源进入/etc/docker目录下,打开daemon.jsonzhe文件,把下边内容复制进去就行{"registry-mirrors": ["https://f1z25q...原创 2020-03-21 11:54:22 · 138 阅读 · 0 评论 -
Spring Boot入门(二十六) 之 Docker的安装与基本使用
1.安装Docker我们在Linux上安装Docker这里用的Linux版本是腾讯云服务器,centos7,我们可以查看一下内核版本uname -r //查看内核版本版本3.10以上的才可以安装,若版本过低可以升级内核yum update下面我们来安装Dockeryum install docker中间会让你确认一下输入y继续安装即可2.启动Dockersy...原创 2020-03-20 20:20:07 · 141 阅读 · 0 评论 -
Spring Boot入门(二十五) 之 错误页面的定制
当我们发出错误的请求的时候,会产生404啊,403啊等等500之类的错误,默认的错误页面很丑,我们可以自己定制错误页面在有thymeleaf模板引擎的时候,发生错误后会跳转 error/状态码所以我们可以在template文件夹下新建error文件夹, 然后里边写上错误码对应的信息.这样我们发送一个404请求,就会跳转到这个页面,如下而不是那个丑陋的默认404页面了我们当然可以...原创 2020-03-20 19:13:11 · 124 阅读 · 0 评论 -
Spring Boot入门(二十四) 之 员工删除实现
员工删除我们使用delete来提交如下:整体思路,我们先给删除的button按钮加一个事件,就是点击它就会触发 提交一个delete方式的带id的请求所以我们可以写一个form,来发送delete请求<button th:attr="del_uri=@{/emp/}+${emp.id}" class="btn btn-sm btn-danger deleteBtn">删除&l...原创 2020-03-20 11:16:58 · 200 阅读 · 0 评论 -
Spring Boot入门(二十三) 之 员工列表的编辑修改
下载来添加编辑页面,我们给编辑按钮加上路径利用拼串的形式来给编辑加上/emp/id的路径,这样我们启动服务器,就可以看到,把鼠标放到编辑按钮上边会出现路径就是emp+id然后我们在EmployeeController里边写上跳转路径 @GetMapping("/emp/{id}") // @PathVariable表示的是路径中的变量 public String to...原创 2020-03-20 10:11:22 · 206 阅读 · 0 评论 -
Spring Boot入门(二十二) 之 员工添加过程的完善
前边完成了员工添加的页面,下面我们来完善员工添加的实际过程:我们现在form表单上写下跳转路径,添加/emp请求,是post方式(post的/emp和get的/emp是不一样的)我们在EmployeeController里边添加跳转然后我们重启服务器我们这里有一个问题就是日期的问题,日期默认格式是yyyy/MM/dd如果我们写成yyyy-MM-dd就会报错如下:其实我们可以自...原创 2020-03-19 10:05:49 · 138 阅读 · 0 评论 -
Spring Boot入门(二十一) 之 员工列表的添加员工页面显示
添加员工页面我们要进行修改,删除和添加这些操作,所以我们添加一些按钮如下:表头位置添加一个操作选项然后每一行的后边增加两个按钮,分别是编辑和删除启动springboot来看可以看到多了操作和删除按钮然后我们再把Section title变成一个添加按钮下面我们来实现添加功能,我们给button添加一个a标签来实现跳转,路径改为/emp然后在EmployeeControlle...原创 2020-03-19 09:19:39 · 582 阅读 · 0 评论 -
Spring Boot入门(二十) 之 员工列表的链接高亮和列表完善
我们发现有一个小问题就是我们点进去Customers但是他不高亮,还是原来的Dashboard是高亮,所以我们要进行调整我们先把公共的模板单独抽取出来,都放到commons里边的bar.html里边然后分别在dashboard.html和list.html里边修改引入的文件,用th:replace="~{}"1.我们来实现链接高亮高亮的原因主要还是Dashboard页面的class...原创 2020-03-18 13:33:07 · 140 阅读 · 2 评论 -
Spring Boot入门 (十九) 之 CURD实验 员工列表的公共页抽取 以及公共代码的抽取
1.员工列表页前边我们实现了登录功能,并且登陆进去进去了后台管理页面下面我们要实现的是,点击Customers就出来员工列表也就是list.html我们先找到Customers的位置,并把他的href跳转改了由于我们使用的是restfulCURD,所以可以这么写记得在HTML里边写上thymeleaf的约束头下边我们要写controller来实现路由我们先把list.htm...原创 2020-03-18 11:34:20 · 220 阅读 · 0 评论 -
Spring Boot入门(十八) 之 restfulCURD与普通curd的区别
首先curd的意思就是C: createU: updateR: read/queryD: delete也就是对数据库的基本操作restfulCURD通过uri:/资源名称/资源标识 HTTP请求方式区分对资源的curd操作普通curdrestfulCURD查询getEmpemp–GET添加addEmp?id=xxx&xxx=xxemp–PO...原创 2020-03-18 10:30:45 · 240 阅读 · 0 评论 -
Spring Boot入门(十七) 之 登录拦截器
前边我们写完了登陆的页面,有一个问题就是,如果我不登录,我直接在浏览器输入登陆后的网址,照样可以进去,那么登录就失去了意义Google浏览器登录好的页面,直接复制到火狐直接打开于是我们需要设定一个拦截器,如果你没登录,那么你复制这个链接,就会返回到登录页面我们在component里边新建一个LoginHandlerInterceptor.java,然后我们让这个类implements H...原创 2020-03-17 21:21:32 · 117 阅读 · 0 评论 -
springboot制作的登录拦截器出错:java.lang.StackOverflowError: null at javax.servlet.http.HttpServletRequestWra
报错很长,报错信息如下2020-03-17 19:57:36.708 ERROR 1207 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] threw exceptionjava.lang.StackOverfl...原创 2020-03-17 21:16:58 · 2414 阅读 · 7 评论 -
Spring Boot自定义的拦截器拦截静态css js文件等问题
本文声明: 转载自https://blog.csdn.net/Kelo666/article/details/90601113?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task传送门传送门在springboot1.x里边是不需要注意这个问题的,而...转载 2020-03-17 21:14:08 · 1070 阅读 · 0 评论 -
Spring Boot入门(十六) 之 模拟登录页面
我们在登录页面加上action的位置然后我们新建一个loginControllerpackage com.zhanshen.springbootweb.controller;import org.springframework.stereotype.Controller;import org.springframework.util.StringUtils;import org.s...原创 2020-03-17 18:37:26 · 731 阅读 · 0 评论 -
Spring Boot入门(十五) 之 国际化操作(页面的中英文相互切换)
页面国际化要实现的是,语言之前的来回切换现在是英文页面,我是要实现如果浏览器默认语言是英文,那么就是英文,如果是中文,那么久是中文页面,当然我们也可以点击中英文切换来换中英文页面首先我们在resources里边新建一个名字叫做i18n的国际化配置文件 (i18n全称为internationalization, i和n分别为首字母和尾字母,中间省略18个字母 , 滑稽)我们在i18n里边...原创 2020-03-17 15:35:29 · 1495 阅读 · 1 评论 -
Spring Boot入门(十四) 之 静态资源的引入
静态资源下载位置链接: https://pan.baidu.com/s/10Gsqt1SpBwPsPR6w_oF5KQ 密码: 5iru首先我们吧dao和entities这俩文件夹放到和controller同级目录下进入后由于每个人的包路径都不一样,所以需要重新导入这俩文件的包路径 然后我们把装有css和js的assert放入到resources里边的static文件夹里最...原创 2020-03-17 13:18:15 · 280 阅读 · 1 评论 -
Spring Boot入门(十三) 之 @Configuration实现页面跳转
前边我们使用controller来跳转success页面,我们也可以通过配置类来实现,如下:我们新建一个config里边有一个MyConfig类里边代码如下package com.zhanshen.springbootweb.config;import org.springframework.context.annotation.Configuration;import org....原创 2020-03-17 12:36:08 · 402 阅读 · 0 评论 -
Spring Boot入门(十二) 之 前端静态资源的引入 (webjars 以及 thymeleaf 视图解析器)
首先webjars其实就是以jar包的形式来引入静态资源,官网在此传送门我们可以看到这里边的静态资源,点击这个maven就会出现maven的坐标这样就可以直接在pom文件里边导入静态资源当然我们自己写好的前端静态页面是要放入classpath:/templats/这个目录下的,没有templates可以手动建一个.比如我们在里边写一个success.html做测试controll...原创 2020-03-15 19:35:44 · 482 阅读 · 0 评论 -
Spring Boot入门(十一) 之 SpringBoot日志默认配置
1.日志存储springboot自己帮我们配置好了默认的日志,我们可以直接拿来用在之前我们做测试的时候,我们经常用System.out.println();来输出中间结果来看看执行的过程和中间结果,有了日志后,日志可以帮你记录过程我们在测试类里边写入以下内容/**LoggerFactory是日志工厂,我们可以从工厂中获得一个记录日志的logger日志记录器他有一下五个常用的用法tr...原创 2020-03-14 19:04:57 · 588 阅读 · 0 评论 -
Spring Boot入门(十) 之 外部配置加载顺序
springboot支持外部的配置文件加载,常见的有如下几种,且优先级由高到低,还是互补配置1.命令行参数我们先把我们的项目打包在pom文件中添加入下 <build> <plugins> <plugin> <groupId>org.springframework....原创 2020-03-14 16:09:41 · 164 阅读 · 1 评论 -
Spring Boot入门(九) 之 配置文件的加载位置
Springboot在启动的时候会依次按照以下的文件目录顺序来扫描配置文件1.file: ./config/ (项目根目录的config文件夹下)2.file: ./ (项目根目录下)3.classpath: ./config/ (类路径下的config文件夹下)4.classpath: ./ (类路径下)如下演示:1.类路径下启动springboot为8081端口2. ...原创 2020-03-14 11:51:36 · 134 阅读 · 0 评论 -
Spring Boot入门(八) 之Profile多环境支持
Profile是Spring对不同环境提供不同配置功能的支持,可以通过激活,指定参数等方式快速切换环境。1. 多Profile文件我们在主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml其中默认我们使用application.properties里边的配置文件我们在resources里边新建一个application-dev.pr...原创 2020-03-14 11:10:55 · 131 阅读 · 0 评论 -
Spring Boot入门(七) 之 配置文件占位符
有关配置文件的占位符有随机数和引用前边出现过的值等。我们再次回到application.properties修改application.properties我们在张三后面加上${random.uuid},我们可以看到,random提示了很多随机的数据修改后如下person.last-name=zhangsan${random.uuid}person.age=${random.int...原创 2020-03-13 20:45:07 · 112 阅读 · 0 评论 -
Spring Boot入门(六) 之 @PropertyResource与@ImportResource
用来加载指定的配置文件我们前边在给bean文件注入数据的时候,使用了@ConfigurationProperties注解,不过该注解,只可以把应用主配置文件的内容读取进来,要想给Bean赋值,只能读取主配置文件,就是application.properties或者application.yml文件,若我们想自己写一个配置文件来给bean赋值,我们就可以使用该注解@PropertyResource...原创 2020-02-27 13:32:24 · 1304 阅读 · 0 评论 -
SpringBoot入门(五) 之 @ConfigurationProperties和@Value的区分与用法
前边我们使用@ConfigurationProperties注解来给bean里边的属性赋值,我们在学习spring的时候其实也会有@Value来给每一个值赋值,如下是spring的xml写法<bean class="Person"> <property name="username" value="张三(或从配置文件读取${key},或者#{key}SPEL获取)">&...原创 2020-02-26 12:17:08 · 262 阅读 · 0 评论