
Java
文章平均质量分 76
appleyk
这个作者很懒,什么都没留下…
展开
-
SSO单点登录前后端分离完整版·(开源)
用7这个数字,是因为我儿子是七夕生的。开源的sso框架有很多,公司的、个人的,优秀的很多。那为什么我又要写个呢?因为对单点登录的流程太过于熟悉了,以至于太想把自己的想法通过代码的方式给呈现出来,而且还是开源出来供大家参考学习。...............原创 2022-07-18 00:00:15 · 58269 阅读 · 15 评论 -
手写一个RPC框架来检验你的Spring和Netty基本功
在我早期的一篇博文Java反射机制的原理和用途中,文末我写到过:"如果你不做框架的话,基本上是用不到反射机制的,我们大多时候是使用框架的一方,而反射机制都已经在底层实现过了,因此,我们不必担心,我们会写那么复杂的代码。但是,我们必须要理解这种机制的存在!" 这篇文章作于2017年9月份,距离现在已经过了快4年了。原创 2021-05-29 22:22:29 · 62271 阅读 · 7 评论 -
(JAVA)全球格网图幅编号计算&基于图幅进行GIS数据切瓦片的思路
本篇就是随便写的,想到哪写到哪,不谈什么算法和源码,就是看效果,先来张效果图吧: 首先我们要想要对江浙沪皖(江苏,浙江、安徽和上海四个行政区划)的矢量或影像进行瓦片切图操作,QGIS中的图层是矢量数据,影像同理;我们有两种切法,第一种就是按shp图层的外接矩形来算瓦片的xyz,因为通过地图缩放层级zoom和范围很容易的能算出有多少张瓦片是需要计算并存储的,比如,我代码中对shp数据的读取解析可以知道其范围如下:知道范围后,我们就可以算出在16地图缩放层级下...原创 2021-04-24 13:22:17 · 68745 阅读 · 2 评论 -
分布式锁与Spring事务共用产生“冲突”的解决方案 ☞ (篇幅较长,看完绝对有收获)
先占个位,很快就补上!原创 2021-02-04 16:21:08 · 78193 阅读 · 3 评论 -
Java基于LRU算法机制写一个缓存容器(哈希Map结合双链表的快乐编程)
1、前序 废话就不多了,博主默认大家都已经知道什么是LRU算法了,且都知道了JDK中是有一个LinkedHashMap容器,可以稍加继承改造下就很容易实现一个LRU机制的缓存容器的; 本篇的重点其实不在jdk自带的LinkedHashMap容器上进行扩展,而是重点讲它实现LRU算法的思路(这个功能很隐蔽,一般不看源码不跟代码,根本就不知道它除了节点的插入和访问有序外,还可以实现满容后,再put元素,移除头节点的功能,注意是移除头节点,不是网上大多数人想当然的写的是移除尾...原创 2020-10-14 14:47:27 · 91372 阅读 · 3 评论 -
MacOS配置双JDK环境JDK8和JDK14相互切换☞了解JDK14新特性
一、Oracle官网下载JDK14下载链接:https://www.oracle.com/java/technologies/javase-jdk14-downloads.html双击JDK 14.0.2.pkg安装,安装完后,查看安装目录/Library/Java/JavaVirtualMachines/二、双JDK环境配置(1)编辑配置文件appledeMacBook-Pro:~ apple$ vim ~/.ba...原创 2020-09-02 15:26:54 · 95279 阅读 · 0 评论 -
JVM虚拟机,也就那么回事!(总结+绘图+流程+代码)
利用闲余时间,看视频,搜资料,参考+总结绘制出了下面的数据流图,流图内容包括:(1)如何针对亿级流量的电商网站做JVM性能调优?(2)什么是MinorGC,什么是FullGC,什么又是STW?(3)新生代包括哪些空间,且如何写程序,借助jvisualvm工具查看程序的gc情况?(4)什么样的对象会进入老年代?(5)对象在内存中的结构是什么,Mark Word存储了哪些信息?(6)如何描述JVM运行时数据区各部分空间与Java线程之间的关系和联系?(7)Java程序是如何通过JVM原创 2020-06-23 00:33:10 · 97856 阅读 · 0 评论 -
Mac IDEA升级到2020(PJie)& Spring-Framework 5.0.x源码编译
一、IDEA 官网地址https://www.jetbrains.com/idea/说明:为什么要升级IDEA呢,因为在Spring源码中run(编译)的时候,提示kotlin编译不通过,程序无非运行,解决办法就是把IDEA 2018版本提升到2019.x.x.x,既然升级,索性一步到位,直接来2020.1.1二、Mac版下载地址https://codeload.github.com/kobeyk/spring-framework/zip/5.0...原创 2020-05-22 18:56:48 · 98498 阅读 · 0 评论 -
Java开发手册【1.5.0】分享
一、封面 二、版本历史说明三、目录 四、精华摘要...原创 2019-06-24 13:08:13 · 1529 阅读 · 1 评论 -
Java ☞ 对象的克隆
我喜欢用自己的想法去阐述一个在项目中用到的技术,虽然网上到处都可以搜到,但我还是决定自己写下来,就像记笔记一样,记录在自己的博客中,这就是我的每一篇博文诞生的初衷。 不是为了抄袭,也不是为了比别人写的更好,仅仅是为了记录,正因为有了记录,我有了自己的想法,这样很棒! ...原创 2018-09-27 16:46:42 · 103914 阅读 · 0 评论 -
Java、Scala、Python ☞ 本地WordCount词频统计对比
需求:模拟MapReduce,对磁盘文件(N个)里面的单词进行词频统计(统计每个单词在文件中出现的次数)区别:计算采用本地模式(单线程),只是模拟Map和Reduce的联合过程,并不单独分离出两个任务(方法)目的:通过不同语言实现词频统计功能,并对比各自的风格 一、数据样例(Samples) 百度网盘:wordcount.rar 主...原创 2018-09-06 15:07:08 · 106161 阅读 · 2 评论 -
Json反序列化对象通用工具类
一、json需要依赖的包 jackson.version可以参考地址:http://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core <!-- jackson --><dependency> <groupId>com.fasterxml.j...原创 2018-07-19 11:12:32 · 7566 阅读 · 0 评论 -
Java -- 对List集合进行分页
通过使用hdfs api将文件系统根目录下的文件列表给列出来了,demo 如下输出json如下:[ { "path": "/20150129101639203.jpg", "replication": 2, "len": 31513, "owner": "root", "group": "supergroup", &quo原创 2018-06-29 16:23:38 · 16575 阅读 · 8 评论 -
Java--泛型浅谈
泛型泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 Java语言引入泛型的好处是安全简单。我们看下以下五个关于泛型的定义 哪几个可行:泛型一定要注意两边的E保持一致,如果不用两边,保持一边一致。由于泛型原创 2017-09-12 08:50:53 · 11410 阅读 · 0 评论 -
单例模式和工厂模式Demo简单演示
一、单例模式Singleton.Java:public class Singleton { public static Singleton instance = null; private Singleton(){} public static Singleton getInstance(){ if(instance==null){ return new Si原创 2017-10-14 12:57:53 · 10823 阅读 · 0 评论 -
JDBC连接Oracle代码案列操作之--Oracle存储过程数据集返回(游标)
接着上一篇 JDBC连接Oracle代码案列操作之--Oracle简单数据准备继续讲本篇涉及到的是关于Oracle的数据集返回的问题,比如,在MS SQL和MySql中,存储过程中直接可以select*from 表,外部直接调用存储过程就能看到相应的数据集,但是在Oracle中,这样却是不被允许的,为什么不行呢,因为人家是Oracle,规则是他们定的在Oracle中原创 2017-10-17 10:10:35 · 9902 阅读 · 0 评论 -
JDBC连接Oracle代码案列操作之--Oracle简单数据准备
一、登录 sqlplus /nolog 快捷键:Win+R二、以系统sysdba身份进行oracle session连接登录 conn / as sysdba;三、创建用户:appleyk,指定密码:sa123,暂未给其指定表空间,默认所属表空间DEFAULT_TABLESPACE:USERScreate user app原创 2017-10-16 12:44:48 · 1660 阅读 · 0 评论 -
Java8新特新--Stream语法应用在ArrayList的元素移除和排序
A sequence of elements supporting sequential and parallel aggregate operations:支持顺序和并行聚合操作的元素序列。原创 2017-12-22 14:56:11 · 26110 阅读 · 1 评论 -
InputStreamReader和OutputStreamWriter 的区别和用法
一、InputStreamReader用于将一个字节流中的字节解码成字符 , 用法如下 @Test public void Test19() throws Exception { InputStream in = new FileInputStream("C:/hello.txt");// 读取文件的数据,注意文件编码为UTF-8,防止读取乱码 // 将输入的字节流 ------转换成...原创 2018-03-21 14:29:14 · 27489 阅读 · 7 评论 -
Java + 原生MongoDB驱动 API 使用案例详说(两种方式)
前不久,博主利用spring-boot结合spring-data-mongodb包,搞了一把mongodb的集成 -- 增删改查这种方式,比较固执,使用起来虽然方便,但是太依赖spring,我想创建自己的dbname,都无从下手(可能我还没探究到),只能使用配置文件里面一开始就默认的url很烦,我不知道我要创建数据库A、B、C.....什么的,要怎么做? 而且查询也非常繁琐,so,本篇打算用原生...原创 2018-04-09 16:30:49 · 11846 阅读 · 0 评论 -
MapDB简单用法
MapDB提供了Java映射、集、列表、队列和其他由非堆或磁盘存储支持的集合。它是java集合框架和嵌入式数据库引擎之间的混合。它是Apache许可下的免费和开放源码。如果处理GB级数据,请考虑使用非缓存存储容器,比如本篇提到的MapDB,而不要把庞大的对象直接放入内存或redis缓存数据库中,当然,最快的就是内存操作,如果对象的容量没有超过内存的四分之三,可以考虑使用内存!用法 --- Sp...原创 2018-04-10 14:33:23 · 10543 阅读 · 0 评论 -
MongoDB + GridFS实现大文件的存储 +工具类
ImagesUtils.javapackage com.appleyk.utils;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import ...原创 2018-04-04 13:01:32 · 11046 阅读 · 0 评论 -
String[] 转 HashSet 和 List + ObjectMapper类的使用实现json的正反序列化
在做Java Web项目对外提供API的时候,比如Spring项目中,我们通常借助Controller来实现方法级别的Restful风格的接口的包装,当然有方法,就得有参数,参数有两类,一是请求的参数,一是返回的参数请求的参数我们可以显示的声明出来,比如我们需要前端在查询的时候,传过来一个符合Mine对象格式的JSON串,我们可以定义方法如下演示查询效果如下:请求的参数我们也可以不声明出来,比如我...原创 2018-03-29 14:34:05 · 10301 阅读 · 0 评论 -
MongoDB原生态API使用 + 查询文档并显示指定字段
一、pom依赖<properties> <mongodb.version>3.6.3</mongodb.version></properties><dependencies> <dependency> <groupId>org.mongodb</groupId> &原创 2018-04-19 16:01:29 · 11345 阅读 · 0 评论 -
Java--平面图形M打印(通用版)
这是一道面试题,题目就是 打印图形 ,图形类似于:M用数字填充后,效果如下:注意,对称关系也要求的话,还要判断数字的长度,比如,数字超过9的话,后面的数字打印空格的时候,就要打印两遍(两位数),如果数字超过99的话,逢空格就要打印三遍(三位数),依次类推。遇见这种数字图形打印题的时候,一般不要慌,又不是3D的图形,只要是平面的图,我们原创 2017-09-14 11:16:29 · 12688 阅读 · 0 评论