自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Java反射机制详解及应用

Java反射机制是一个非常强大的功能,在很多大型项目比如Spring, Mybatis中都可以看见反射的身影。通过反射机制我们可以在运行期间获取对象的类型信息,利用这一特性我们可以实现工厂模式和代理模式等设计模式,同时也可以解决Java泛型擦除等令人苦恼的问题。本文我们就从实际应用的角度出发,来应用一下Java的反射机制。反射基础p.s: 本文需要读者对反射机制的API有一定程度的了解,如...

2019-04-03 23:55:29 185

转载 Java中关于泛型的详细分析

泛型是Java中一个非常重要的知识点,在Java集合类框架中泛型被广泛应用。本文我们将从零开始来看一下Java泛型的设计,将会涉及到通配符处理,以及让人苦恼的类型擦除。泛型基础泛型类我们首先定义一个简单的Box类:public class Box { private String object; public void set(String object) { ...

2019-04-03 23:40:52 170

原创 将博客搬至CSDN

将博客搬至CSDN hi 博客搬新家了【微笑】新家:https://blog.csdn.net/zjuwangleicn posted @ 2019-04-01 10:57 冰雪之源 阅读(...) 评论(...) 编辑 收藏 ...

2019-04-01 10:57:00 145

转载 如何在线程安全的情况下使用HashMap?

前一篇文章分析了HashMap是线程不安全的及其原因,那么如何在线程安全的情况下使用HashMap呢?原文出处:Giraffe了解了HashMap为什么线程不安全,那现在看看如何线程安全的使用HashMap。这个无非就是以下三种方式:Hashtable ConcurrentHashMap Synchronized Map例子://HashtableMap<Str...

2019-04-01 10:33:52 365

转载 为什么说HashMap线程是不安全的

原文出处:HoseeHashMap的原理以及如何实现,之前在JDK7与JDK8中HashMap的实现中已经说明了。那么,为什么说HashMap是线程不安全的呢?它在多线程环境下,会发生什么情况呢?1. resize死循环我们都知道HashMap初始容量大小为16,一般来说,当有数据要插入时,都会检查容量有没有超过设定的thredhold,如果超过,需要增大Hash表的尺寸,但是...

2019-03-31 23:49:39 1095

转载 深入学习理解Java集合

一、集合入门总结集合框架:Java中的集合框架大类可分为Collection和Map;两者的区别:1、Collection是单列集合;Map是双列集合2、Collection中只有Set系列要求元素唯一;Map中键需要唯一,值可以重复3、Collection的数据结构是针对元素的;Map的数据结构是针对键的。泛型:在说两大集合体系之前先说说泛型,因为在后面的集合中都会用...

2019-03-27 14:23:21 239

转载 计算机网络方面重要的基础问题

GET 和 POST 的区别 (GET)请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:/test/demo_form.asp?name1=value1&amp;name2=value2 GET 请求可被缓存 GET 请求保留在浏览器历史记录中 GET 请求可被收藏为书签 GET 请求不应在处理敏感数据时使用 GET 请...

2018-07-24 23:02:51 230

转载 PHP中使用websocket

在PHP中,开发者需要考虑的东西比较多,从socket的连接、建立、绑定、监听等都需要开发者自己去操作完成,对于初学者来说,难度方面也挺大的,所以本文的思路如下:1、socket协议的简介2、介绍client与server之间的连接原理3、PHP中建立socket的过程讲解4、用一个聊天室作为实例详细讲解在PHP中如何使用socket一、socket协议的简介  WebSo...

2018-07-24 22:45:31 7081

原创 使用C++编译排序算法小探究

排序算法小探究:/** * 排序编译 */#include &lt;iostream&gt;using namespace std;void print(int a[], int n) { cout &lt;&lt; n &lt;&lt; ":"; for (int j = 0; j &lt; n; j++) { cout &lt;&lt; a[j] ...

2018-03-20 14:55:46 231

原创 深入理解索引优化

深入索引优化分析:参考:http://liucw.cn/2018/01/07/mysql/%E7%B4%A2%E5%BC%95%E4%BC%98%E5%8C%96%E5%88%86%E6%9E%90/

2018-03-17 15:54:55 255

原创 单点登陆的实现方案

单点登录问题:单点登录技术实现的原理机制:当用户第一次访问子系统a的时候,由于是未登录状态,会被引导到认证系统中进行登陆,根据用户提供的登陆信息,认证系统会进行身份验证,如果验证通过会返回给用户一个标识(ticket);当用户再访问其他的子系统(子系统b,子系统c等等......)时就会带上这个认证凭据(ticket),其它的子系统接收到请求后就会将该ticket传送到身份认证系统中进行信息识别和...

2018-03-16 16:08:10 504

原创 PHP7升级过程遇到的一些问题

升级PHP7过程遇到的一些问题:

2018-03-15 15:54:36 284

转载 深入理解MySQL锁之源码探索

锁是计算机程序运行时协调并发访问同一数据资源的机制。对于数据库系统来说,数据是一种供许多用户共享的资源,那么如何保证数据并发访问的一致性、有效性是必须解决的一个问题。所以,锁对于数据库来说,是非常重要的一个功能。通过各种锁,实现了数据库事务中的隔离性。本篇文章将从源码层面介绍MySQL的元数据锁和InnoDB的实现。一、MySQL的架构与锁MySQL在架构上分为两层,服务和存储引擎层。服务层集中了...

2018-03-15 09:46:44 1517

转载 MySQL 数据库中使用 C 执行 SQL 语句

在 MySQL 数据库中使用 C 执行 SQL 语句Professional Linux Programming 的摘录 Neil Matthew 和 Richard StonesWrox Press Ltd2001 年 1 月与 PostgreSQL 相似,可使用许多不同的语言来访问 MySQL,包括 C、C++、Java 和 Perl。从 Professional Linux Programm...

2018-03-14 17:08:31 1047

转载 实现PHP网站整体防注入

突然想到是不是能够通过一个文件来处理整个网站中所有可能出现注入的地方进行防范呢?这样就能够不用在每个程序里对每个变量进行过滤,节省了时间和代码。我们主要是从两点出发,因为我们的获取的变量一般都是通过GET或者POST方式提交过来的,那么我们只要对GET和POST过来的变量进行过滤,那么就能够达到防止注入的效果。而且我们的PHP真是非常好,已经内置了$_GET和$_POST两个数组来存储所有变量,我...

2018-03-14 16:41:34 475

原创 实现一个易扩展的PHP购物车类

很久之前写过购物车之类的项目,当时没怎么整理归纳,有时间回顾一下,实现一个易于扩展的实用类,包含了购物车中的增删改查以及各种计算功能。参考资料:http://www.daimajiayuan.com/sitejs-16964-1.html...

2018-03-14 10:01:15 629

原创 使用git本地修改项目并同步修改到GitHub远程仓

git连接GitHub远程仓库并操作修改、删除文件目录(夹)或提交代码快速使用:先在本地安装git 然后使用git bash 打开并clone代码到本地:操作clone的本地项目,修改或其他操作完毕后提交修改并同步到自己当前项目的GitHub远程仓库项目具体操作如下:git clone +你的GitHub项目地址执行命令:git add .git statusgit commit -m "提交备注...

2018-03-13 13:47:07 1671

转载 PHP Extension组件开发完整实例(C/C++扩展PHP)

PHP是当前应用非常广泛的一门语言,从国外的Facebook、Twitter到国内的淘宝、腾讯、百度再到互联网上林林总总的各种大中小型网站都能见到它的身影。PHP的成功,应该说很大程度上依赖于其开放的扩展API机制和丰富的扩展组件(PHP Extension),正是这些扩展组件使得PHP从各种数据库操作到XML、JSON、加密、文件处理、图形处理、Socket等领域无所不能。有时候开发人员可能需要...

2018-03-12 15:59:06 5427

转载 MySQL调试和优化技巧

MySQL是一个功能强大的开源数据库。随着越来越多的数据库驱动的应用程序,人们一直在推动MySQL发展到它的极限。这里是101条调节和优化MySQL安装的技巧。一些技巧是针对特定的安装环境的,但这些思路是通用的。我已经把他们分成几类,来帮助你掌握更多MySQL的调节和优化技巧。MySQL 服务器硬件和操作系统调节:1. 拥有足够的物理内存来把整个InnoDB文件加载到内存中——在内存中访问文件时的...

2018-03-12 10:28:49 326

原创 PHP上传服务器并读取标识路径下内容

图片直接上传服务器并获取路径内容:function __construct($app){ $this-&gt;app = $app; $this-&gt;targetDir = 'files/upload_tmp'; $this-&gt;_targetDir = 'files/upload_tmp/yq'; $this-&gt;uploadDir = 'file...

2018-03-12 09:36:08 267

原创 PHP7及一些常用知识

想起来就简单整理一下~~PHP7部分特性:性能提升:PHP7比PHP5.6性能提升了两倍。 Improved performance: PHP 7 is up to twice as fast as PHP 5.6全面一致的64位支持。 Consistent 64-bit support以前的许多致命错误,现在改成抛出异常。Many fatal errors are now Exceptions移...

2018-03-09 11:34:20 152

转载 MySQL索引背后的数据结构及算法原理

本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。文章主要内容分为三个部分。第一部分主要从数据...

2018-03-08 17:19:02 132

原创 关于session实现原理和运行机制的一点理解

session实现与工作原理浏览器和服务器采用http无状态的通讯,为了保持客户端的状态,使用session来达到这个目的。然而服务端是怎么样标示不同的客户端或用户呢?这里我们可以使用生活中的一个例子,假如你参加一个晚会,认识了很多人,你会采取什么方式来区分不同的人呢!你可能根据脸型,也有可能根据用户的名字,或者人的身份证,即采用一个独一无二的标示。在session机制中,也采用了这样的一个唯一的...

2018-03-08 17:00:15 6748

转载 MySQL大表优化方案实践

当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化:单表优化除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度,一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的。而事实上很多时候MySQL单表的性能依然有不少优化空间,甚至能正常支撑千万级以上的数据量:字段尽量使用TINYINT、SMALLINT、...

2018-03-08 09:49:09 213

转载 PHP解决并发问题的几种实现方法

本文实例讲述了PHP开发中解决并发问题的几种实现方法。分享给大家供大家参考,具体如下:对于商品抢购等并发场景下,可能会出现超卖的现象,这时就需要解决并发所带来的这些问题了在PHP语言中并没有原生的提供并发的解决方案,因此就需要借助其他方式来实现并发控制。方案一:使用文件锁排它锁flock函数用于获取文件的锁,这个锁同时只能被一个线程获取到,其它没有获取到锁的线程要么阻塞,要么获取失败在获取到锁的时...

2018-03-07 10:11:50 1575

转载 session一致性架构设计实践

一、缘起什么是session?服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文。 Web开发中,web-server可以自动为同一个浏览器的访问用户自动创建session,提供数据存储功能。最常见的,会把用户的登录信息、用户信息存储在session中,以保持登录状态。 什么是session一致性问题?只要用户不重启浏览器,每次http短连接请求,理论上服务端都能...

2018-03-07 09:58:23 128

转载 PHP中的多种序列化与反序列化问题

1. serialize和unserialize函数serialize() 函数,把复杂的数据类型压缩到一个字符串中,把变量和它们的值编码成文本形式,这有利于存储或传递 PHP 的值,同时不丢失其类型和结构 unserialize() 函数对单一的已序列化的变量进行操作,将其转换回 PHP 的值 例:$stooges = array('Moe','Larry','Curly');$new = s...

2018-03-06 17:14:29 602

原创 深入理解MySQL索引和性能优化

选择索引字段的原则,比如外键字段、数据类型较小的字段、经常用于查询或排序的字段、表关联的字段等等索引应该建在选择性高的字段上(键值唯一的记录数/总记录条数),选择性越高索引的效果越好、价值越大,唯一索引的选择性最高;组合索引中字段的顺序,选择性越高的字段排在最前面;where条件中包含两个选择性高的字段时,可以考虑分别创建索引,引擎会同时使用两个索引(在OR条件下,应该说必须分开建索引);不要重复...

2018-03-06 09:10:35 273

转载 MySQL优化的几点总结

Mysql在大负载的时候,如何优化,更适合自己。看了车东的MySQL服务维护笔记,有点收获,简单总结如下。程序端:1. 尽量在程序总减少查询Mysql的次数,并且查询以后记得关闭链接,但是建议使用常连接,这样能够减少建立连接的开销。当然,如果能够生成静态页是最好了。2. 尽量不使用关联查询,最好一个操作只针对一个表,一次关联查询就是一次笛卡儿乘积,极度的耗费资源。如果需要查询多个表,尽量使用多个程...

2018-03-05 17:08:58 113

转载 常用的一些SQL技巧归纳总结

这几天在写索引,想到一些有意思的TIPS,希望大家有收获。 一、一些常见的SQL实践(1)负向条件查询不能使用索引select * from order where status!=0 and stauts!=1not in/not exists都不是好习惯可以优化为in查询:select * from order where status in(2,3) (2)前导模糊查询不能使用索引selec...

2018-03-01 00:49:14 168

转载 C++中虚函数学习

1.简介     虚函数是C++中用于实现多态(polymorphism)的机制。核心理念就是通过基类访问派生类定义的函数。假设我们有下面的类层次:class A{public:    virtual void foo() { cout &lt;&lt; "A::foo() is called" &lt;&lt; endl;}};class B: public A{public:    virtu...

2018-02-28 23:47:36 100

转载 全面深入理解Redis与Memcached(深度好文)

说到redis就会联想到memcached,反之亦然。了解过两者的同学有那么个大致的印象:redis与memcached相比,比仅支持简单的key-value数据类型,同时还提供list,set,zset,hash等数据结构的存储;redis支持数据的备份,即master-slave模式的数据备份;redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用等等,这似...

2018-02-28 09:42:38 301

转载 PHP中常用的设计模式(附实例用法)

PHP命名空间可以更好地组织代码,与Java中的包类似。Test1.php&lt;?phpnamespace Test1;//命名空间Test1function test(){ echo __FILE__;}Test2.php&lt;?phpnamespace Test2; //命名空间Test2function test(){ echo __FILE__;//打印...

2018-02-26 16:40:06 216

原创 PHP中Opcode缓存的分析理解

PHP中涉及到的缓存技术有很多,这里主要说明一下opcode缓存我们知道,php的执行流程可以用下图来展示:首先php代码被解析为Tokens,然后再编译为Opcode码,最后执行Opcode码,返回结果;所以,对于相同的php文件,第一次运行时 可以缓存其Opcode码,下次再执行这个页面时,直接会去找到缓存下的opcode码,直接执行最后一步,而不再需要中间的步骤了。比较知名的是XCache、...

2018-02-24 15:56:10 531

转载 谈谈区块链的常用架构

源于比特币社区的区块链技术,不仅为金融机构所重视,也逐渐为世界主要经济体及重要国际组织所关注。本文作者尝试对区块链常见架构进行分析,并根据其技术特点提出了一些在保险业可能的应用场景。区块链2.0的分类与特点区块链2.0的典型代表是以太坊(Ethereum)和超级账本(Hyperledger),分别代表了区块链的两个重要的发展方向:应用于公众的公有链和应用于企业的联盟链。公有链、联盟链和私有链公有链...

2018-02-24 09:40:52 3645

转载 一个PHP缓存类实现的实例

&lt;?php/** 缓存类 cache*/class cache {//缓存目录var $cacheRoot = "./cache/";//缓存更新时间秒数,0为不缓存var $cacheLimitTime = 0;//缓存文件名var $cacheFileName = "";//缓存扩展名var $cacheFileExt = "php";/*  * 构造函数  * int $cacheLi...

2018-02-23 10:41:04 447

转载 关于MySQL中NULL用法的分析

Null 貌似在哪里都是个头疼的问题,比如 Java 里让人头疼的 NullPointerException,为了避免猝不及防的空指针异常,程序猿们不得不在代码里小心翼翼的各种 if 判断,麻烦而又臃肿,为此 java8 引入了 Optional 来避免这一问题。下面咱们要聊的是 MySQL 里的 null,在大量的 MySQL 优化文章和书籍里都提到了字段尽可能用NOT NULL,而不是NULL...

2018-02-22 10:40:56 600 1

原创 PHP处理Linux中生成文件目录及读取内容遍历应用

前段时间,接触到了一个这样的需求:一个微信端的动态查询需要在移动端根据不同的条件搜索可以展示相应的数据及图片信息(包括名称,图片会有多张),对应后台的需求很多,其中有一个则是可以手动配置信息(包括但不仅限于批量处理数万张图片,然后动态匹配查询结果,最终实现在移动端展示......关于图片处理这部分有很多种解决思路,我这里只写一下我自己最终选择的一种处理方式(仅供参考),勿喷~~~1:确定后台图片处...

2018-02-11 11:28:04 1487

转载 PHP+Redis实现高并发应用商城秒杀功能

开发的电子商务平台也很多了,刚好有时间就整理一下巩固加深理解1、安装redis,根据自己的php版本安装对应的redis扩展(此步骤简单的描述一下)1.1.安装php_igbinary.dll,php_redis.dll扩展此处需要注意你的php版本如图:1.2.php.ini文件新增extension=php_igbinary.dll;extension=php_redis.dll两处扩展ok此...

2018-02-11 10:13:43 12384 1

转载 PHP实现第三方登录的原理和实现过程

最近快过年放假了,有但时间就整理一下~~第三方登录,就是使用大家比较熟悉的比如QQ、微信、微博等第三方软件登录自己的网站,这可以免去注册账号、快速留住用户的目的,免去了相对复杂的注册流程。下边就给大家讲一下怎么使用PHP开发QQ登录的功能。1、进入QQ互联官网进行登录(可以使用自己的QQ或者重新注册一个QQ号作为咱们项目的单独QQ进行管理),地址:https://connect.qq.com/2、...

2018-02-11 10:01:04 1753

空空如也

空空如也

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

TA关注的人

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