- 博客(17)
- 收藏
- 关注
原创 一、IO系列——五种IO模型
一、五种IO模型(操作系统级别,非某一门语言):阻塞IO(blocking IO):应用调用系统函数recvfrom直到获得数据;非阻塞IO(non-blocking IO):应用循环调用系统函数recvfrom,未获取数据直接返回,直到获取数据,间隙时间可以处理其他业务;IO多路复用(IO multiplexing):应用使用单线程先调用系统函数select阻塞监控(实际为系统级别的轮询访问是否准备就绪)多个网络请求,任何请求有数据则再调用系统函数recvfrom去获取数据
2021-11-30 20:56:12
919
原创 Idea导入Spring源码 基本调试 全文指南
环境说明:系统: 64位 windows7专业版idea 版本: ultinate 2018.3jdk 版本:jdk8_202一. 资源下载1. spring 源码下载链接 :https://github.com/spring-projects/spring-framework下载完成, 解压到工程源码存放目录2. 因 spring 源码采用 gradle 编译,...
2019-10-23 11:54:42
3420
原创 Java工具之FtpUtils
package utils;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.net.MalformedURLException;import java.util.HashMap;import java.util.Map;import org.ap...
2019-07-18 14:22:54
1105
原创 RabbitMQ与Spring的整合及常见三种消息模式使用
一. 概念定义: RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。消息生产与消费机制如下:常见MQ横向比较: RabbitMQ:它比kafka成熟,支持AMQP事务处理,在可靠性上,RabbitMq超过kafka,在性能方面超过ActiveMQ; 同时rabbitmq支...
2019-02-26 19:17:47
3939
2
原创 算法系列:(一).联机算法之>>求字符串数组中只出现过一次的字符串及索引
前言: 最近阅读 <数据结构与算法分析(java语言描述)> 一书, 其在 "算法分析" 一章中, 用一个求 "数值字符串最大子串和" 的例子演示了算法的奇妙.: 相同的目的, 四种算法时间复杂度从O()演变为O()再到O(N logN), 最后直接到O(N), 从而也顺便介绍了一种叫做联机算法的 "几乎完美" 的算法; 那什么叫联机算法呢?正文...
2019-01-26 01:10:36
352
原创 JAVA虚拟机系列: (一) . JDK1.6/ 1.7/ 1.8运行时内存分配简要图解
注意: 1. 本文讨论均为JDK官方版本, 默认采用的HotSpot虚拟机; 2. 图片为本人绘制, 转载请标明出处; 3.本博均为个人理解, 如有分歧, 欢迎指正和讨论 从JDK1.6到1.8, 运行时内存分配简图分别如下: 在JDK1.7中的HotSpot中,已经把原本放在方法区的字符串常量池移出。 从JDK7开始永久代的移除工作,...
2019-01-18 00:14:18
2296
2
原创 一种Freemarker+CAS单点登录的可行方案
最近项目中遇到一个有意思的问题: 描述如下: 1. 产品详情页使用了Freemarker页面静态化技术, 所以为了提高静态页面的并发访问性能, 将其部署在了nginx服务器中; 2. 同时要使用CAS做单点登录功能, 但是CAS是Server+Client的模式, 直接部署静态页面就不存在Client, 无法直接使用CAS做单点登陆登出;...
2019-01-02 11:48:59
408
原创 开发环境下CAS单点登出bug解决/ 及版本更新bug解决
博主最近使用CAS做单点登录 , 测试demo中, 碰到如下问题, 解决过程曲折, 现分享如下:问题一:CAS单点登出功能 bug 描述: 问题描述: 开发环境下, idea中tomcat插件运行CASClient_1和Client_2两个项目, 将CAS Server部署在Linux系统上的tomcat中: 1. 当访问Client_...
2018-12-26 17:18:13
2668
原创 SSM框架系列: (一) Mybatis之延迟加载
延迟加载定义:百度释义:延迟加载(lazy load)是(也称为懒加载),延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。理解: Mybatis中, 延迟加载是 对象实体成员属性详情 加载的延迟.〇. 前提:为说明延迟加载, 先给出如下实体模型, 订单实体 (Order) 中包含基本属性 (id, n...
2018-11-26 12:25:56
824
原创 MyBatis多表联查 引出 RDB表关系映射问题
一. 关系型数据库表关系回顾:1. 一对一:丈夫表和妻子表是典型的一对一关系; RDB中的实现方式: 分别创建丈夫表和妻子表, 将对方表主键设为外键, 因为主键的唯一性, 保证了一对一关系;2. 一对多: 公司和员工一般是一对多关系; (注意: 其实一对多表反过来看是一对一关系, 即一个员工只属于一个公司) RDB中的实现方式: 分别创建公司.表和员工表, 将公司表主...
2018-11-05 01:01:33
485
原创 javaWeb前后端中 JSON&JSON字符串&java实体对象 之间转换
JSON是前端js语言中, 用来与其他语言交互的一种轻量级的数据交换格式, 交换时以字符串形式传递, 各语言再进行解析即可使用; 相比于XML语言, JSON用来传输数据, 层次结构清晰简单, 目前已基本取代XML, 广泛被用来跨语言传输数据;一. JSON的数据定义格式:类型 语法 解释 对象类型 {name:value,name:value...}...
2018-10-23 00:15:05
2574
原创 【JavaWeb基础】JavaWeb分页查询思路剖析
案例分析: 前端-->后台: 1. 当前端需要对某项数据进行条件查询时, 需要给出查询条件, 故得出第一个参数: "查询条件"; 2. 当查询结果过多,无法全部显示, 或全部显示页面不够清晰友好时, 需要对查询结果进行分页显示, 故得出第二个参数: "目标页页数": 目标页页数: 初始页数为1, 用户选择响应按钮时...
2018-10-13 14:58:33
2248
原创 Java三层架构实现用户注册逻辑[示例]
软件实际开发中,都是采用分层思想,解耦,且方便维护/扩展,并提高代码重用性,实例层序分层结构与包名对应如下: 本示例程序环境: 1. 基本信息:Spring框架的JDBCTeamplate模板 / 阿里的DruiDruid连接池 / mysql数据库及其驱动jar包 / JDK版本1.8 2. 工具类: Druid连接池工具类以下是源代...
2018-09-15 15:59:52
3027
原创 MySQL主机上修改超级管理员密码(报错ERROR 1045 (28000)时使用)
当使用mysqladmin等方式修改超级管路员密码后,再次登录可能报错如下:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)解决办法: 强制修改密码,该方法一定会成功,步骤如下: **修改完毕别忘了使用:net start mysql启动服务!...
2018-09-12 11:38:54
728
原创 算法系列:(二).java:N叉树堆排序基本原理与实例
堆排序(Heapsort)概念:是指利用堆这种数据结构所设计的一种排序算法;堆(英语:heap) 概念:计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组(集合)对象。原理图(图示为三叉树):扩展说明: 堆排序的每次新建堆排序其实是"冒泡排序"和"父节点和子节点间排序"的综合结果! 若父节点和子节点间采取的"排序方式2",则: ...
2018-08-25 13:03:37
1189
2
原创 算法系列:(三).归并算法之>>两个升序数组的二元归并,时间复杂度O(m+n)
方法1:(利用数组作为容器): 特点: 1/结果为数组,合并后依然可以通过下标快速访问; 2/需要考虑重复元素导致的合并后结果数组实际长度变短问题;//两个升序数组进行升序归并(二元归并) 时间复杂度O(m+n)public class Test_AfterClass1 { public static void main(Stri...
2018-08-22 14:20:20
1567
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人