
Java
文章平均质量分 55
Java
十二翼堕落天使
我梦见过许多种我们有可能的未来——无一善终。
展开
-
SpringSecurity直接用username构造UsernamePasswordAuthenticationToken
结论添加在UsernamePasswordAuthenticationFilter之前的 JWT 过滤器中可以直接用username去构造UsernamePasswordAuthenticationToken:UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(username, null);SecurityContextHolder.getCont原创 2021-01-08 19:43:16 · 5781 阅读 · 0 评论 -
Elasticsearch7.8.0从安装到高亮搜索LOL英雄名
一、前言环境:ES 7.8.0JDK11SpringBoot 2.3.0(ES 7.6.2)二、安装2.1 (中文)IK分词器2.1.1 分词器效果:2.1.2 GitHub地址:https://github.com/medcl/elasticsearch-analysis-ik2.1.3 下载:为了避免在容器内下载过慢,教主选择了提前用迅雷下载下来,并以容器卷挂载的方式放到容器里去。大致的目录如下:elasticsearch/|--compose-elasticsearc原创 2020-08-23 15:25:41 · 2102 阅读 · 0 评论 -
SpringBoot枚举序列化方案
前言在使用 JSON 传值的时候,对于枚举类型的处理是比较麻烦的,因为基本上默认都只会按照枚举的名称来序列化和反序列化。先来描述一下需求。有一个性别枚举:MALE(1, "男"),FEMALE(2, "女");返回时以对象的形式序列化枚举,格式大致为:{ "gender": { "code": 1, "name": "男" }}入参时以枚举码的形式反序列化枚举,格式为:{ "genderCode": 1}SpringBoot Jackson 方案枚原创 2020-08-03 17:02:40 · 5837 阅读 · 2 评论 -
Security Jwt 动态 URL 权限验证
一、前言1.1 概述引用 项目集成Spring SecuritySpring Security 一句话概述:一组 filter 过滤器链组成的权限认证。实际上教主为了把这个功能弄出来还是看了好多好多的博客和教程,但是仍然费了不少时间。主要原因基本可以概括为对概念的理解力太差。如果只用 Security 登个录、拦截个 /hello-world、放行个 Swagger 其实还算容易,一是不用太多配置,二是毕竟有太多大神总结的代码可参考。可是关于其它的用户可能就需要了解一下 Security 的过原创 2020-07-20 15:14:03 · 1577 阅读 · 0 评论 -
Dubbo SpringBoot简单RPC调用记录
一、注册中心 Zookeeper1.1 docker-compose 伪集群部署复制自 DockerHub,docker-compose-zookeeper.yaml:version: '3.1'services: zoo1: image: zookeeper restart: always hostname: zoo1 ports: - 2181:2181 environment: ZOO_MY_ID: 1 ZOO_原创 2020-05-27 21:31:30 · 466 阅读 · 0 评论 -
生产者消费者模式笔记
synchronized资源类class Data { private int number = 0; public synchronized void increase() { while (number != 0) { // 等待 try { wait(); } catch (InterruptedExcep...原创 2020-04-27 14:53:07 · 225 阅读 · 0 评论 -
RequestURI、ServletPath、ContextPath和转发重定向的参数
一、requestURI、servletPath、contextPath假设:当前的项目根目录为:/demo,即访问首页的路径为http://localhost:8080/demo/index.jsp。页面全部位于 web 根目录下。假设有一个 Servlet:public class TestServlet extends HttpServlet { @Override ...原创 2020-04-24 17:01:10 · 2147 阅读 · 0 评论 -
Axios跨域+表单提交
1 后端1.1 Controller@Controllerpublic class StudentController { private Student student; @GetMapping(value = "/get") @ResponseBody public String get(@RequestParam("stuId") String stu...原创 2020-04-14 22:40:33 · 507 阅读 · 0 评论 -
【Nexus】Nexus搭建Maven私服
Nexus 搭建 Maven 私服前言之前对 Maven 依赖的 jar 包的管理都是直接备份本地的缓存仓库,但是日渐发现这种方式即便是对个人来说也存在着很大的局限性:难以在不同的操作系统间进行共享本地缓存仓库,每次都要重新修改 settings.xml 文件。折腾本地共享缓存仓库的根本原因是:忍不了 Win 又离不开 Win。就比如本教主好不容易折腾好的 Arch 却因为疫情上网课...原创 2020-03-05 23:33:22 · 346 阅读 · 1 评论 -
JUC使用总结
这篇博客是对 Java 并发包(`java.util.concurrent`)以及多线程的一些总结,记录一些常用用法和个人理解。由于目前还没有接触过真正的并发场景且,而且还缺少一些内容的铺垫,所以仅仅一些浅层面的使用,有问题的地方还请多多指正!原创 2020-01-29 13:18:49 · 663 阅读 · 0 评论 -
MyBatis 级联查询与逆向工程
外键是建立在==从表==的一个字段(通常是专门新建的字段)指向==主表==的一个字段(通常是被设为主键的一个字段)的引用,用于强调和约束两个表的主从关系原创 2019-05-28 13:56:12 · 1474 阅读 · 0 评论 -
Maven 快速使用
IDEA 已经自带了 Maven,位于 IDEA 安装目录下的`plugins/maven/lib/maven3`,不需要单独再下载。为了方便,只需要将其`bin`目录加入到`PATH`环境变量即可。Maven 默认的用户级配置文件和本地缓存仓库在用户主目录的下`.m2`目录下,即`~/.m2/settings.xml`和`~/.m2/repository`。全局的配置文件在安装目录下的`conf`目录下。为了使全局配置生效,有必要删除用户主目录下的`.m2`目录。原创 2019-05-25 19:30:51 · 1182 阅读 · 2 评论 -
【JPA】——多对多查询死循环嵌套解决方案
本教主在尝试用jpa来学shiro的时候,如果双向查询,那么就会发生死循环造成stackOverFlow肯定是百多过的撒,然后总结一下首先这不是jpa的问题,在controller接口中会进行json的序列化,因为双向的查询,就会发生查询时的嵌套循环,然后呢就栈溢出了1.jpa生成的表结构2.然后呢解决方法有两种:(1)不要双向查询(2)在双向查询时用 @JsonIgnoreProp...原创 2019-10-23 13:07:29 · 2720 阅读 · 8 评论 -
从 Spring 看反射注解和设计模式
反射机制是建立在类对象(Class对象)上的。所有的类都存在一个类对象,这个类对象用域提供类本身的信息,比如有几种构造方法,有多少属性,有哪些普通方法······原创 2019-05-17 23:27:18 · 2669 阅读 · 0 评论 -
【闭包】——局部变量的final修饰符思考
我们知道java参数是值传递,但是偶然发现java中参数还能加<code>final</code>修饰符,那么这个final修饰符有什么作用呢?原创 2019-12-16 23:06:59 · 426 阅读 · 0 评论 -
【JAVA8】——函数式编程、Lambda表达式、流式API
记录这篇博客的目的主要是因为不太熟悉Lambda表达式,也就顺便瞅一瞅JAVA8有哪些好玩好用的东西基本上可以有个大致的概念1. JAVA8的大部分新特性都是针对函数式编程和流式编程2. JAVA8的大部分新特性都是为了编写可读性更高的代码原创 2019-11-08 23:54:53 · 499 阅读 · 0 评论 -
终于稀里糊涂完成了模仿天猫整站ssm
1.首先感谢How2J的SSM教程。2.其次分享一下图片3.互勉加油原创 2019-08-09 21:44:05 · 1005 阅读 · 15 评论 -
【树】——从二叉树到AVL树再到红黑树
二叉树本身是以递归的方式定义的,而现有的大部分二叉树的代码的都是以 ==树的节点作为二叉树的内部类==的方式设计的。虽然这样的设计的确更容易实现继承,写出更简洁的代码。然而本教主向来对递归比较头疼,所以希望能简单的重构一下二叉树的实现。原创 2019-09-07 00:02:06 · 2671 阅读 · 1 评论 -
【图】——遍历、最小生成树、拓扑排序、关键路径、最短路径
深度优先遍历是对树的先序遍历广度优先遍历是对树的层次遍历(很多地方说后序遍历,然后后续遍历和层次遍历是不一样的)用非递归的算法的话,两个算法都只是只有栈和队列的地方有差异原创 2019-06-26 15:33:47 · 1551 阅读 · 0 评论