![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习记录
文章平均质量分 63
单筱风
2021年毕业软件工程专业
展开
-
docker-compose搭建nacos+nginx+mysql+redis+springboot项目
1.准备工作请提前安装docker和docker-compose并自行添加jin'xi原创 2021-06-19 22:24:24 · 1223 阅读 · 0 评论 -
springboot+spring security oauth2实现密码模式,客户端模式,验证码模式
一.OAuth 2 授权模式OAuth 协议的授权模式共分为 4 种,分别说明如下:授权码模式:授权码模式(authorization code)是功能最完整、流程最严谨的授权模式。它的特点就是通过客户端的服务器与授权服务器进行交互,国内常见的第三方平台登录功能基本 都是使用这种模式。简化模式:简化模式不需要客户端服务器参与,直接在浏览器中向授权服务器中请令牌,一般若网站是纯静态页面,则可以采用这种方式。密码模式:密码模式是用户把用户名密码直接告诉客户端,客户端使用这些信息向授权服务器中请令牌。这需原创 2021-03-17 11:42:48 · 2136 阅读 · 4 评论 -
博客浏览量通过redis缓存定时累加(只适用于学习)
1.设计缘由自己写的博客网站有浏览量这个数据项,可是我也不想每加载一次文章数据就修改浏览量加一,并且自己的博客也没有那么大访问量没必要做时时更新访问量数据。所以构思选用redis缓存定时累加浏览数据的思路。2.redis存储数据格式浏览记录(字符串)因为博客文章访问是开放的所以我设计的是key为(ip::文章id )value值随意我这里是0;因为我这里不保存浏览记录,而且5分钟以内同一ip访问同一条数据不增加访问量所以缓存时间5分钟。文章浏览量(哈希)最后会定时对浏览量进行存储所以采用(文章i原创 2021-02-01 11:44:51 · 1323 阅读 · 0 评论 -
linux下前端vue+后端vue+mysql+redis+springboot+nginx的docker部署记录(nginx下多个vue前端)
1.服务器推荐购买腾讯云的学生优惠25岁以下免验证,我购买的是轻量应用服务器,5M宽度每月1000G不香吗。系统是CentOS 7.6。购买好服务器并通过Xshell或其他软件连接好,就是前期的准备了(当然除了项目,自备)。2.安装docker#安装yum install docker#检验安装是否成功[root@localhost opt]# docker --versionDocker version 1.13.1, build 7f2769b/1.13.1#启动systemctl原创 2021-01-28 16:27:51 · 394 阅读 · 0 评论 -
Mybatis的collection获取以,分隔的id(There is no getter for property named ‘**‘ in ‘class java.lang.String‘)
1.获取idssql使用group by 进行分组的时候查找该组的id只会返回一个,只需使用group_concat(id)即可以获得该组的所有id。cast(created_time AS date) 可获取年月日并分组排序以下代码都是简化的逻辑代码,因为不能涉及到公司数据,切勿以为写的没有实际意义 <select id="select*****Page" resultMap="User******Map"> select group_concat(note_id) ids ,c原创 2021-01-25 12:51:56 · 507 阅读 · 0 评论 -
SecurityContextHolder.getContext().getAuthentication().getPrincipal()获取到的是username而不是UserDetails
1.问题引入我在使用SpringSecurity+JWT做权限认证的时候, @PreAuthorize("@el.check(‘system:user:query’)")使用上面这个注解判断用户是否有拥有方法级的操作权限,但是在使用下方这个方法获取当前登陆用户时只获取到了用户名,而不是UserDetails对象。SecurityContextHolder.getContext().getAuthentication().getPrincipal()2.解决思路查看登陆成功后是否保存了 Authen原创 2020-11-26 16:12:43 · 11106 阅读 · 1 评论 -
JsonParseException: Unrecognized token ‘username‘: was expecting表单提交登陆数据报错
1.问题追溯很长一段时间都在做前后端分离的vue案例,今天突然使用Thymeleaf提交表单登录到security登陆验证时一直报错JsonParseException: Unrecognized token ‘username’: was expecting但是使用Postman提交json数据时却没有问题,那我就可以确定是表单数据不能正确解析的问题 /** * 1.获取用户名和密码 */ @Override public Authentication a原创 2020-09-02 08:47:19 · 3739 阅读 · 0 评论 -
SpringBoot整合Elasticsearch7基于RestHighLevelClient工具类(分页,高亮)
1.主要依赖 <!-- https://mvnrepository.com/artifact/cn.hutool/hutool-all --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.3.10<原创 2020-08-24 15:04:45 · 9049 阅读 · 3 评论 -
Springboot集成MyBatis-plus的代码生成工具CodeGenerator(注释比较详细)
1.mybatis-plus依赖,代码生成器还有其所需要模板velocity(默认) <mybatis-plus.version>3.1.0</mybatis-plus.version> <velocity.version>2.0</velocity.version> <connector.version>8.0.18</connector.version><!-- ===原创 2020-08-23 13:25:03 · 2934 阅读 · 0 评论 -
MyBatisPlus多表分页查询及遇到的坑(分页插件查询COUNT(1)和LIMIT ?,? 都正确,但返回数据错误)
1.遇到的坑===》分页插件查询COUNT(1)和LIMIT ?,? 都正确,但返回数据错误问题回溯:1.1创建多表数据对应VO@Data@AllArgsConstructor@NoArgsConstructorpublic class ArticleVO { private Article article; private String tName; private User user;}1.2XML<resultMap id="ArticleVOMap原创 2020-08-12 19:28:54 · 5141 阅读 · 0 评论 -
自定义@PreAuthorize抛出异常security.access.AccessDeniedException: Access is denied
1.问题由来最近在开发中使用@PreAuthorize("@el.check(‘user’)")自定义了一个验证规则,当验证通过时返回true程序没有问题,但是返回false时却抛出了异常security.access.AccessDeniedException: Access is denied@ApiOperation(value = "获取菜单") @GetMapping("getPermission") @PreAuthorize("@el.check('user')")原创 2020-07-22 11:17:00 · 5223 阅读 · 1 评论 -
mybatis+springboot整合redis实现缓存查询(解决@Cacheable默认为二进制格式)
1.导入依赖 <dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.3</version> </dependency> <原创 2020-05-20 21:14:23 · 1534 阅读 · 0 评论 -
Linux系统springboot和vue基于nginx的前后端分离项目的启动部署(最简单配置)
1.部署条件默认已经搭建好tomcat和nginx环境,且已经准备好springboot项目打包文件和vue项目打包文件dist2.基本逻辑nginx发挥反向代理的作用,对外暴露80端口,我会将dvue打包的前端资源部署在nginx上tomcat上部署springboot项目3.nginx操作在/usr/local/nginx目录下创建test文件夹并把vue项目打包文件dist放进去(根据自身情况调整位置)修改/usr/local/nginx/conf中的nginx.conf配置文件原创 2020-05-16 14:23:50 · 1444 阅读 · 0 评论 -
Spring Security+JWT认证和授权(学习记录)
1.开始因为最近在做第二课堂项目遇到了一个问题,已经登陆的用户虽然没有对其开放管理员界面但是只要他用token请求接口还是会响应结果,没有达到权限管理的要求。于是我学习了Spring Security用它配合JWT达到认证和授权的目的。主要依赖 <!--security--> <dependency> <groupId&g...原创 2020-04-19 12:33:38 · 477 阅读 · 0 评论