自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zh_coder

专业代码Copy员。

  • 博客(22)
  • 问答 (2)
  • 收藏
  • 关注

原创 一文读懂JWT,JWS,JWE

这里写自定义目录标题JWT是何物,解决了一个什么问题新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入JWT是何...

2019-10-28 21:30:59 1699 6

原创 [OIDC&&Oauth2 ] 理解Oauth2授权框架

一.  什么是Oauth2授权框架?  Oauth2是一种通用的开放式的面向个人(即用户)网络授权方案,它的前身是Oauth1。但是由于Oauth1设计复杂,易用性差,所以Oauth2与Oauth1并不兼容。二. Oauth2.0的应用场景       我们拿csdn登录来举个栗子,来看csdn的登录页面下方:                 其

2018-01-14 21:16:27 7561

原创 能够检测多种设备类型的Spring Mobile

Spring Moblie是什么?      SpringMoblie是SpringMvc的一个扩展项目,它旨在简化移动web应用程序的开发。 开源地址为 https://github.com/spring-projects/spring-mobileSpring Moblie可以做什么?         它可以检测到访问当前服务器程序的请求是通过什么设备发起的(PC, 平板,

2017-10-30 17:34:14 5446 1

原创 用List构建带有层次结构的json数据

Oracle树形表转树形层次结构的json数据

2017-07-24 20:25:25 5866 2

原创 Oracle树形表和递归查询

关于Oracle 递归查询和树形表详细的实验和讲解。

2017-07-22 20:04:54 25466 1

原创 使用jdk1.8去除逻辑上重复的HashMap的value以及构建本地缓

最近在做一个老系统,由于表的信息不明确, 在数据库拿二个表的时候产生了笛卡尔联结,由于重复数据只有三条. 而这二个表的列数据比较固定. 所以决定取出来在后端去重。 数据类型是以List 进行接收的。 而接收后一个字段的HashMap数据是重复的。 现在我把它合并成一条HashMap(然而后来我们没有采用这种方式, 只是记录下来突然齐来的想法 ~). 测试代码如下: import jav

2017-03-23 20:06:32 2766

原创 Java深入理解 - 迭代器 Iterator 总结

今天一朋友在用迭代器时很郁闷为什么会会报Java.util.ConcurrentModificationExceptiond 这个错误, 于是写下这篇博客,想详细的讲讲Java里面  的迭代器.           Iterator简单的来说就是遍历, 遍历什么? 我们常用在遍历集合元素等.            Iterator接口共有四个方法:         public i

2017-01-08 16:08:26 989

原创 Java异常处理

基础语法及概念:       java中的异常处理主要围绕着 try-catch-finally  throw  throws展开, java异常共分为运行时异常(Runtime Exception ) 和 非运行时异常(Checked Exception), 或者称之为    受检查异常。  Java中所有的异常, 都继承至 Throwable. 其中Error类也继承至Throwabl

2016-12-01 19:21:43 409

转载 python 通熟易懂的闭包

#!/usr/bin/python # -*- coding: cp936 -*- #python ver2.7 ''''' 闭包(closure)是函数式编程的重要的语法结构。函数式编程是一种编程范式 (而面向过程编程和面向对象编程也都是编程范式)。在面向过程编程中,我们见到过函数(function);在面向对象编程中,我们见过对象(o

2016-10-18 16:04:55 411

原创 用Springmvc 返回json数据,填充html 或 jsp页面。

maven pom.xml: net.sf.json-lib json-lib 2.4 jdk15不会Maven的可以百度 net.sf.json 包。  其中注意, 指定 为jdk15  实体类:         @Entity public class User_pojo{private String u

2016-09-23 13:40:44 4744

原创 JAVA内存模型 (JMM)和同步以及可见性

可见性:   一般来说,我们对可见性的定义是一个线程对共享变量值的修改,能够被其他线程及时的看到,那么这个时候我们一般称这个变量是线程间可见的。那么什么是共享变量?      一般来讲,如果一个变量在多个线程的工作内存中都存在有副本,那么这个    变量就是这几个线程的共享变量。 那么啥是工作内存呢? 这个时候就是我们的JMM登场了。Java内存模型(J

2016-08-01 23:42:24 680

原创 java线程池(ThreadPoolExecutor)实例讲解

在java中,如果我们要使用一个线程, 那么我们可以这样创建一个线程 Thread thread= new Thread() { @Override public void run() { l.add(random.nextInt()); } }; thread.start();然而这样做的坏处是, 每

2016-07-20 18:35:55 722

原创 SpringMvc实现文件上传

首先引入SpringMvc对文件上传的jar包。 commons-iocommons-fileupload这个可以自行下载.接着在你的Spirng配置文件中写入一个Bean: 其中bean ID 的意思是 DispatcherServlet这个前端控制器会查找multipart解

2016-07-02 20:20:13 982

原创 SpringMvc初入门(带完整入门项目)

最近闲暇之余,感觉很久没有写博客了, 以前都是写一些算法, 今天打算写一下SpringMvc.   总的来说Mvc也算是一种设计模式,  不仅仅是Java, 前端js, 数据库。 也可以采用这种模式来达到一个业务逻辑和页面显示通过控制器达到解耦的目的。 SpringMvc可以跟SpringIOC无缝对接, 比起struts2也有好的几点如下:    第一:struts2 性能较低, 基本上在我

2016-06-29 22:39:05 1128

原创 设计模式: 简单工厂, 工厂方法, 和抽象工厂总结

简单工厂(SimpleFactory)                       简单工厂是类的一种创建模式, 又叫做静态工厂方法模式, 他由一个工厂对象决定创建出哪一种产品的实例。(确切的说,我们像工厂类传入参数来决定                         创建哪一个产品类的实例) UML图如下:                    我们以一个登录验证来实现一下

2016-06-04 17:47:41 393

原创 2个队列实现一个栈

在算法导论有一道非常有趣的证明题, 利用2个队列实现一个栈,   队列和栈最大的区别就是队列满足FIFO(先进先出),他有2个操作的地方,一个是队头一个是队尾,而栈满足的是先进后出,他只有一个操作的地方就是栈顶。我们定义2个队列queue1 queue2  用于存放进"栈"  用queue2临时存放queue1的数据。那么实现他的方式就比较明显了,  首先我

2016-05-19 00:47:11 481

原创 深搜文件夹中的最大文件

上次看到一题目,给出一个文件夹 文件夹名为root, 要求找到文件夹里面最大的文件。第一个反应递归深搜一层层往下找, 下面给出java代码.public static void main(String[]args){ File file = new File("E://root");System.out.println(getMaxFile(file.lsitFiles,0L))

2016-05-07 23:41:40 321

转载 算法时间度分析

一 、时间复杂度           算法复杂度分为时间复杂度和空间复杂度。其作用: 时间复杂度是度量算法执行的时间长短;而空间复杂度是度量算法所需存储空间的大小。任何算法运行所需要的时间几乎总是取决于他所处理的数据量,在这里我们主要说时间复杂度。对于一个给定计算机的算法程序,我们能画出运行时间的函数图。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。     

2015-11-03 23:14:59 1290

原创 快速排序——java实现

快速排序是一种常用且比较复杂的排序算法,最坏的情况下运行时间为O(n2) ,  期望的运行时间为O(nlgn). 快速排序采用分治思想,分治过程分为三个步骤。(ps:以下思想参考导论)分解: 数组A[p...r] 被划分成2个子数组。  子数组A[p..q-1](ps:可以把它想象成数组中的前半部分 )和A[p...r](ps:可以把它想象成后半部分)。使得A[p....q-1]中的每个元素都

2015-11-03 21:43:20 345

原创 Java线程之后台线程(守护线程)

后台线程, 是指在程序运行的时候在后台提供一种通用服务的线程,这种线程并不属于不可缺失的部分, 但是为什么还要将一个线程设置为后台线程呢。 各位请听我个人讲解  ps:若有理解不对请各位提出.             我们都知道Java为线程提供了Runnable接口 和 Thread类。 若要将线程设置为后台线程可调用Thread的 setDaemon()方法。         

2015-10-28 20:20:31 451

原创 kmp算法

如有一串字符"a b  c  d " 我想知道里面是否包含字符 c d 用传统的暴力算法 我们可以这样解:java代码:public static int  char_next(char [] str, char str_s[]){ int i=0;  //主串下标 int j=0;   //子串下标 while(str[i] { if(str[i+j]==str_

2015-10-25 19:06:05 293

原创 Java nio

Java提供了NIO来提高在文件上的访问速度,主要由缓冲器buffer和与缓冲器打交道的FileChannel  之所以速度快于旧的IO是它的结构更接近于os执行IO的方式Buffer 的子类有:ByteBuffer、CharBuffer、DoubleBuffer、FloatBuffer、IntBuffer、LongBuffer 和 shortBuffer.缓冲器的4个细节

2015-10-25 16:36:38 280

空空如也

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

TA关注的人

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