自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 收藏
  • 关注

原创 再见

一直以来都有人说CSDN怎么怎么样,商业化太严重,抄袭泛滥,这确实是CSDN的缺点,但是一路走来,你会发现,你搜索的编程方面的知识,有相当一部分是来自csdn的。你必须承认,他帮了你很多。写这篇博文,也是如题所说的,我会永远感谢csdn,它见证了我的成长,直到今天。我自己也做了一个小站,准备分享一些知识给大家,所以以后可能不会在CSDN上发布博文了。也感谢每位鼓励过我的朋友谢谢。附:我的小...

2019-10-01 01:12:41 341 2

原创 推荐一款超好用的vue的markdown 编辑器

首先非常感谢这款编辑器的作者大大,因为我在正在写项目,所以需要用到富文本编辑器和markdown编辑器,富文本编辑器解决后,就发现了这款好用的编辑器。github地址:mavonEditor关于这款编辑器在vue中的使用,README写的非常清楚了,文档非常齐全,作为一款markdown编辑器,它的功能基本上满足我这种’二吊子’了。如果有觉得缺少什么的,可以进行扩展嘛,毕竟时markdown。...

2019-08-10 16:18:11 3878

原创 这篇文章不做知识分享,只想跳槽一下js

js 你真不愧是个流氓语言,long都没有,稀里糊涂来了个BigInt,结果不能序列化,你有个 luan 用.

2019-08-09 13:56:02 264

原创 vue 父组件延时获取子组件的值,避免子组件数据为空

又是在项目的过程中发现的问题。我的全局头部每次加载页面的时候,都会发送ajax请求后端的用户数据,而我的另外一个组件需要获取头部请求到的用户的数据,以此做出相应的逻辑。头部是作为子组件使用的,而另外的组件自然就是父组件。所以引申出来的父组件主动获取子组件的数据。但是在子组件渲染完成之前,父组件是获取不到子组件的数据的。所以需要延时获取。(不断判断)子组件: 在 created 钩子里请求...

2019-08-06 13:32:17 879

原创 elementui upload 上传文件详解

各位同学,请希望看完,如果看了开头不看结尾, 代码错误请不要怪我。这个必须好好说说,不知道各位同学有没有这样的体验,在使用 elementui的时候,发现它真是一个不要太好的库,真的,体验贼好,毕竟vue是只关注数据层面的框架。vue也确实做的太棒了。说说今天在使用elemenui中 upload 组件的时候,一开始看有好多属性,然后我仔细看了,并总结了以下它的使用和常用属性的作用。lim...

2019-07-21 23:09:52 31898 9

原创 mysql普通索引和唯一索引的区别

最近在考虑mysql去重和查询效率问题,不可避免的想到了标题所说的问题。普通索引一般建立在经常需要读取的数据的 column 上,但是因为mysql是更新index的,所以建索引前需要考虑清楚,一面浪费空间。唯一索引虽然也可以提高效率,但是因为唯一索引较普通索引具有数据唯一性,所以在扫描唯一 column 时是全字段扫描,效率其实没有普通索引那么高,通常是建立在 像 username 这种最...

2019-07-20 15:33:09 249

原创 vue 和 elementui的坑有些多

使用 el-form 组件的时候,是不能使用 回车 提交的 ,这里就需要我们自己在每个 el-input 组件上加上@keyup.enter.native="表单提交方法" 这样才能使用回车提交...

2019-07-09 12:42:01 301

原创 Vue 使用:style 内联样式设置背景样式

先说一句Vue 太强了。我要给下面这个 div 动态设置背景图片,而图片的url 是从网络上动态获取的,也就是说 url 是可变的<div></div>怎么设置呢?使用 vue 提供的 :style 属性,这个属性可以是 css 里面的属性,也可以是你自定义一个对象,然后再对象里设置属性://这里的background就是一个属性的对象<div :sty...

2019-07-09 10:34:54 7229

原创 SpringBoot自定义RedisHttpSession实现Session共享

最近发现,SpringSession的好像优点不对我的胃口,有些难控制,于是我就自己照着它写了自己的Session实现。首先,我们需要复习 Java Web 的知识,想想我们是如何操作 Session 的: session = request.getSession(),很明显是通过HttpServletRequest获取的,因为每次用户请求过来,我们服务端都会获取到请求携带的唯一Cookie S...

2019-07-07 13:37:46 2758

原创 LettuceConnectionFactory多配置,及配置原理详解

先说一下怎么配置不同的redis源吧.配置文件 application.properties:#########--------------------------------------> Redis 配置,因为是不同的数据库, 所以需要配置不同的 redisTemplate############设置缓存为 Redisspring.cache.type=redis...

2019-07-02 23:26:40 43937 1

原创 docke启动Mongodb,并启动功能认证,真实可靠

sudo docker run -d --name mongodb -p 27017:27017 -v 你的配置目录:/data/configdb -v 你的数据目录:/data/db mongo这段命令相信会docker的同学来说应该不陌生,如果有不懂的同学,可以先学习相关知识。记住上面是没有加 --auth 的,因为如果上面加了 --auth , 你后面进入容器内部,进行添加用户等操作 ...

2019-06-29 21:51:42 555

原创 redis Desktop Manager 下载

因为要做项目了,也不能像以前一样愉快的的在 xshell上玩耍了,所以应该会用到 桌面端管理的工具,先分享一下。盘:链接:https://pan.baidu.com/s/17t-xzzvPwFG-GhEMQ8Kh5w提取码:42i2...

2019-06-29 16:02:06 2173 2

原创 docker 启动mysql 8.* 版本 自定义配置 挂载数据到宿主机

先上一张docker mysql8版本的作者的github的的my.cnf 配置上面是mysql8把版本的my.cnf,可以载dockerhub上找到对应的版本,查看人家github上的详细配置,根据原作者的意思,就是载我们启动容器的时候只需要把自己写好的配置my.cnf放到一个文件夹下,然后再启动该容器的时候,-v 共享到如上图的们目录就行了就行了docker run -d --name t...

2019-06-28 18:05:35 1522

原创 js,jq实现上传图片时,显示图片,自动调整图片宽高

//add-user-headImg 是 input ,使用change监听 $("#add-user-headImg").change(function(){ //检测用户的浏览器是否支持FileReader if(typeof FileReader==='undefined'){ alert("您的浏览器暂不支持上传图...

2019-06-17 21:42:18 1112

原创 在项目中使用 shiro 的心得

不要使用 shiro 默认的拦截器。我第一个使用shiro的场景就是登录,但是权限,登录,登出的拦截器都是重写的,也不要实现 LogOutFilter,这就是个坑,当你重写 preHandler 方法的时候,那不是登出的时候调用,是只要有拦截到 你 SecurityMananger 配置好的 拦截器,就会判断,如果你拦截器返回 true,就会调用 preHandler方法,而我需要的是,在用户点击...

2019-06-08 15:57:08 903

原创 切记切记:RSA加密的时候不要用Base64的encodeBase64URLSafeString方法

简直是尼玛的有毒,什么方法都试过了,2个小时的时间就没了。我使用RSA非对称加密的时候,前端可以接收到公匙,jsencrypt也可以设置公匙,但是,但是啊啊啊啊啊啊啊啊啊啊啊,在加密数据的时候 一直返回 false , 我一直检查我的 ajax 的其它地方,和生成密匙的地方,其实也注意到这个地方有问题,一直没去管,但最后一想,还是试一试,结果一试把我的心都给刺痛了,我发誓,以后一定认真对待每个...

2019-05-27 21:53:52 11136 6

原创 SpringMVC处理ajax请求,参数等问题详解

在前端使用ajax传递数据的时候有2种方式,使用 json 和 使用普通的类型json : 需要使用 jquery特定的方法包装 ,要引入外部 js文件: <script src="https://cdn.bootcss.com/jquery.serializeJSON/2.9.0/jquery.serializejson.min.js"></script>这个式c...

2019-05-25 17:39:11 548

原创 linux安装MongoDB,启动(报错 无法创建文件)又是一条血泪

这个点:请记住 , 无论你的目录放那里第一个 第一个 dpath depath depath !!!一定要是一个目录,这个是放Mongodb的数据文件的,不要定义成一个文件,否则mongodb启动时不能创建数据文件如 mongodb.lock等错误的方式:logpath=/usr/local/bin/mongodb_bin/data/mongodb.db#MongoDB配置文件#...

2019-05-14 01:05:03 991

原创 Redis哨兵模式

简单说一下这个模式。这个模式是在 ##主从复制## 的基础上来构建的,首先需要 多台 slave 连接 master作为例子,这里 slave 设为2台,master设为1台。而哨兵模式的作用就是,当master挂了之后,不至于影响继续服务,这个时候,哨兵模式在已经挂掉的master的slave中进行投票机制,票数多的,就会被选举为新的master,而其它的slave就会重新设定ma...

2019-05-12 17:17:20 138

原创 redis主从复制究极大坑。(CentOS7)

我直接点吧 。把 redis.config 里的 bind 绑定的端口注释掉,把protected mode yes改为 protected mode no把master主机防火墙关掉,把slave防火墙关掉先开master,再开slave的redis...

2019-05-12 02:45:01 200

原创 Java设计模式 ------------------模板模式

模板模式是基于继承的代码复用的基本技术。模板模式将一部分逻辑具体化,然后声明抽象方法让它的子类以不同的方式去实现,这样就对相同的逻辑有了不同的实现。模板方法有两个部分: 抽象模板(抽象类) , 具体模板(不同的实现类)抽象模板:定义了一个或多个抽象操作(抽象方法,基本方法),让子类实现。并定义和实现了一个模板方法,这个模板方法就是抽象模板的顶级架构。具体模板:实现了抽象模板定义的一个或多个...

2019-05-08 21:44:46 86

原创 JAVA复习---------------------手写ArrayList(全面方法)

做任何事都应该持有认真的态度。因为是复习,再加上一直想写一些轮子,后期的代码会一起上传到我的github上,可能会很久,因为还有很多其它的知识没有学习,不过我会一直保持更新的.http://www.github.com/YangGuangSuccess解释:其中大家一些没有见过的异常是我自义的,所以不必纠结于此,YList接口只是定义了规范,并没有其它实际作用,希望大家有所收获YArray...

2019-05-08 01:08:47 122

原创 JAVA 复习 -------------集合序列化(1)

集合的常用知识我就不说了 ,这里说说容器被忽略的Java中的集合实现了 Serializable 接口以 ArrayList 为例,它的 elementdata 数组被 transient 关键字修饰,代表ArrayList被序列化的时候,数组不会被序列化,原因是数组的空间是不确定的,如果数组的空间大于元素的数量,那么序列化就会浪费空间,于是 ArrayList 自己定义 readObje...

2019-05-06 23:45:04 293

原创 CentOS7下 服务管理

启动服务 : systemctl start 服务名.service停止服务 : systemctl stop 服务名.service重启服务 : systemctl restart 服务名.service查看服务状态 : systemctl status 服务名.service禁止服务 :systemctl mask 服务名.service取消禁止 :systemctl un...

2019-05-04 21:43:50 346

原创 事务放在cotroller or service

之前对这个问题也很疑惑,事务处理到底是放在 service层,dao层,还是controller也行,在网上看到有人说service ,其实这个取决于你自己的业务,或 <tx:annotation-driven transaction-manager=“dataSourceTransactionManager”/>放的位置吧,也是你自己决定的,如果放在applicationCo...

2019-04-10 20:41:57 504

原创 SpringMVC拦截器运行流程总结(源码角度解析)

先说一下 ,只有单个拦截器的时候的运行流程:(配图是自己的Demo)当Interceptor 拦截到请求的时候,会执行 preHandle方法,如果这个preHandle方法返回true,就代表这个拦截器放行了,如果返回false,代表这个拦截器不会放行请求如果放行了这个请求,那么,接下来就会执行目标方法,然后执行这个Interceptor的 postHandler方法,然后目标方法才渲染界...

2019-03-28 21:01:13 1103

原创 SpringMVC自定义ViewSolver(视图解析器) 和 Convert(类型转换器)

ViewSolver的作用我就不多说了.Conver的作用的作用说一下:在前端传递给后端数据的时候,会有一些问题,如数据的类型转换,数据的格式化,数据的校验等SpringMVC有一个WebDataBind(DataBinder) 来完成数据绑定功能,而这个WebDataBind又有许多组件来完成各种功能ConversionService组件:负责数据类型转换和格式化功能,将请求信息填充到入...

2019-03-25 00:13:17 542

原创 SpringMVC执行流程

先说一下SpringMVC的九大核心组件/这九大组件都是接口,每个接口都有非常多的实现类,所以这就是面向接口编程的好处,如果某个组件的功能不够用了,就可以实现接口,完成功能/1:/* 支持文件上传功能*/private MultipartResolver multipartResolver;2:/区域解析器,支持国际化功能/private LocaleResolver localeR...

2019-03-23 15:42:55 157

原创 SprngMVC配置编码拦截器

之前在网上查了好多方式,最后自己看了一下CharacterEncodingFilter的源码,发现跟以前的源码有些不一样,以前都是forceEncoding,新版本的SpringMvc分成了forceRequestEncoding和foreResponse两个,所有都要设置,有兴趣的同学可以看一下源码,原理还是利用了request.setCharacterEncoding,还有一点,如果设置了还不...

2019-03-21 19:49:48 127

原创 idea搭建SpringMVC环境 文件结构目录 xml 文件配置详解

首先放一张已经配好的图:此处开始:创建好项目之后:把你生成的2个xml文件复制添加到配置文件目录下,以后改的时候就该配置文件下的就行,不用动classes文件夹下的接下来说 web.xml:web.xml文件:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/...

2019-03-20 01:09:14 5439

原创 spring事务细节总结

##事务细节: #timeout:默认为 -1 超时,如果超出指定时间,事务将自动终止并回滚 (单位 : s ) readOnly:默认为 false 指定事务 只读,会大大增加执行效率,但是如果 事务中不止读操作,还有其它增删改操作,那么 会报错 异常: 运行时异常(非检查异常) 默认 事务都回滚, 而 编译时异常(检查异常) 默认是事...

2019-03-19 12:26:01 153

原创 事务隔离并发问题 隔离级别 (图文详解)

脏读 实例:有两个事务 同时 访问数据库时 , 一个 事务 进行 update 操作 , 比如将 age = 20 , 改为了age=30, 这个时候 另一个事务 读取 age ,就是 读取到了 30 ,那么 第一个 事务 并没有 提交,此时如果进行了 回滚 操作 , 那么 age 仍然 = 20 , 第二个 事务 读取到的 就是 脏数据。脏读的本质就是 : 一个事务使用了另一个事务还没有提...

2019-03-18 15:05:27 324

原创 spring处理编译时异常不会回滚,而运行时异常会回滚的原因

如题: +首先说为什么 spring 事务 在 处理编译时异常不会回滚,典型的例子 IOException, 我们说,当我们进行io操作的时候会手动捕获IOException 或者 throws 抛出去, 反正无论如何, spring 都是认为你已经对这个已知的异常 做出了处理 , 自然不会 去 回滚然后 与之 相反的 运行时异常 , 是未知的 , spring 认为 这是 意外的...

2019-03-18 12:48:06 862

原创 spring ioc 容器启动,创建bean,getBean流程

本篇文章的目的 是 了解 spring ioc 启动 ,创建bean 到获取bean的时候,ioc 都做了些什么文章很长,并且我能力有限,慎看,之前 看过知乎上有 大佬说过, 带着目的看源码才是学习的正确方法,不要为了 看源码而看源码,这样的学习是无效的测试工具 idea测试准备:测试类 (javabean) : PersonPerson 实现public class Pe...

2019-03-17 22:39:47 1093

原创 jdk 动态代理和cglib动态代理 spring AOP

昨天在实现动态代理的时侯:https://blog.csdn.net/qq_42394457/article/details/88550481以为只能用接口实现,但是我今天学习 aop 的时候,发现 aop 里 , 一个 类 , 不需要实现 接口也能被 ioc 创建 动态代理我后来google了,发现 , 我昨天实现的是 jdk 的动态代理,而 jdk 的动态代理对象必须通过接口获取因为 ...

2019-03-15 15:07:44 116

原创 实现jdk动态代理必须使用接口

直接上代码了,非常简单的一段代码接口:package com.yg.aop.proxy;/**@ClassName Calculate@Date 2019/3/14 12:05@Author NEVER FORGET ONE*/public interface Calculate {public abstract int add(int a, int b);public ...

2019-03-14 12:20:19 837

原创 LeetCode: day2

字符串,锯齿形转换思路:example :String : “0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15” row:4先把这一串字符串想象成一个 字符数组: char[] arr = {‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,…} 0 6 12 1 5 7 ...

2019-02-26 16:58:00 99

原创 LeetCode----day1

最近停下脚步,练习算法了,通过这2天的刷题,越发感觉基础知识的重要了我会不定期发一些leetcode上我做的题目今天把这两天学习到的写一下:很抱歉,我第一题就卡住了,最后无奈,看了答案,写了两种方法 两数之和 : easy // method1: 利用数组,蛮力搜索,时间复杂度 O(n^2) public static int[] twoSum(int[] nums, in...

2019-02-24 00:42:31 105

原创 Cookie,Session和3大域对象总结

先总体说一下关系: cookie和session属于会话技术,通俗的讲,cookie是创建数据,存入浏览器缓存,而session是在服务器端创建的域对象,它的范围是一个会话。而其它的域对象包括 ServletContext, request,比较一下这三个域对象之间的区别范围:ServeltContext &amp;gt; session &amp;gt; requestServletContext的...

2019-02-21 01:23:44 834

原创 Servlet获取时间乱码

今天在写cookie的时候,获取上一次的时间代码如下//利用cookie,设置用户上一次登录的时间@WebServlet(name = "LastTimeServlet",urlPatterns="/LastTimeServlet")public class LastTimeServlet extends HttpServlet { @Override protected v...

2019-02-20 21:21:53 215

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除