自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (3)
  • 收藏
  • 关注

转载 web前后台数据交互

1.利用cookie对象 Cookie是服务器保存在客户端中的一小段数据信息。使用Cookie有一个前提,就是客户端浏览器允许使用Cookie并对此做出相应的设置。一般不赞成使用Cookie。(1)后台代码12Cookie cookie=newCookie("name","hello");  response.addC

2017-08-31 17:07:56 3429 1

转载 Java中的锁

在学习或者使用Java的过程中进程会遇到各种各样的锁的概念:公平锁、非公平锁、自旋锁、可重入锁、偏向锁、轻量级锁、重量级锁、读写锁、互斥锁等待。这里整理了Java中的各种锁,若有不足之处希望大家在下方留言探讨。公平锁和非公平锁公平锁是指多个线程在等待同一个锁时,必须按照申请锁的先后顺序来一次获得锁。公平锁的好处是等待锁的线程不会饿死,但是整体效率相对低一些;非公平锁的好处是整体效率相对

2017-08-31 17:02:27 324

转载 斐波那契数列-java编程:三种方法实现斐波那契数列

题目要求:编写程序在控制台输出斐波那契数列前20项,每输出5个数换行//Java编程:三种方法实现斐波那契数列//其一方法:[java] view plain copy public class Demo2 {      // 定义三个变量方法      public static void main(String[] args) {        

2017-08-31 16:21:21 1099

原创 lucene、solr区别

Lucene是一个开放源代码的全文检索引擎工具包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎.Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索

2017-08-29 21:33:27 764

转载 【Java集合源码剖析】Java集合框架

转载轻注明出处:http://blog.csdn.net/ns_code/article/details/35564663    Java集合工具包位于Java.util包下,包含了很多常用的数据结构,如数组、链表、栈、队列、集合、哈希表等。学习Java集合框架下大致可以分为如下五个部分:List列表、Set集合、Map映射、迭代器(Iterator、Enumeration)、工具

2017-08-22 22:27:33 243

转载 MySQL常见面试题

1. 主键 超键 候选键 外键主 键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。超 键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超键,即没有冗余元素的超键。外 键:

2017-08-18 22:26:57 2168

转载 伪代码的写法

伪代码(Pseudocode)是一种算法描述语言。使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java,etc)实现。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言。 介于自然语言与编程语言之间。  它以编程语言的书写形式指明算法的职能。相比于程序语言(例如Java, C++,C, Dephi 等等)它更类似自然语言。它是半角式化、不

2017-08-17 22:46:50 6042

转载 分布式开放消息系统(RocketMQ)的原理与实践

一年前为了一次内部分享而写的这篇文章,没想到会有这么多人阅读,抽空更新一版,对文中一些晦涩的语句做了修正,删除了一些口水话和附录内容,尽量给大家更好的阅读体验 (第二版更新于2017年春节)。分布式消息系统作为实现分布式系统可扩展、可伸缩性的关键组件,需要具有高吞吐量、高可用等特点。而谈到消息系统的设计,就回避不了两个问题:消息的顺序问题消息的重复问题RocketMQ作

2017-08-17 21:36:00 673

原创 Java多线程-实例解析

Java多线程实例 3种实现方法Java中的多线程有三种实现方式:1.继承Thread类,重写run方法。Thread本质上也是一个实现了Runnable的实例,他代表一个线程的实例,并且启动线程的唯一方法就是通过Thread类的start方法。2.实现Runnable接口,并实现该接口的run()方法.创建一个Thread对象,用实现的Runnable接口的对象作为参数实例化Thre

2017-08-17 20:28:58 292

原创 JavaScript、Ajax与jQuery的关系

简单总结:1、JS是一门前端语言。2、Ajax是一门技术,它提供了异步更新的机制,使用客户端与服务器间交换数据而非整个页面文档,实现页面的局部更新。3、jQuery是一个框架,它对JS进行了封装,使其更方便使用。----------------------------------------------------------------------------------------

2017-08-16 22:19:15 512

转载 深入解析MySQL分区(Partition)功能

自5.1开始对分区(Partition)有支持= 水平分区(根据列属性按行分)=举个简单例子:一个包含十年发票记录的表可以被分区为十个不同的分区,每个分区包含的是其中一年的记录。=== 水平分区的几种模式:===* Range(范围) – 这种模式允许DBA将数据划分不同范围。例如DBA可以将一个表通过年份划分成三个分区,80年代(1980's)的数据,90年代(1990'

2017-08-16 22:01:13 564

原创 数据库为什么要分库分表

1 基本思想之什么是分库分表?从字面上简单理解,就是把原本存储于一个库的数据分块存储到多个库上,把原本存储于一个表的数据分块存储到多个表上。2 基本思想之为什么要分库分表?数据库中的数据量不一定是可控的,在未进行分库分表的情况下,随着时间和业务的发展,库中的表会越来越多,表中的数据量也会越来越大,相应地,数据操作,增删改查的开销也会越来越大;另外,由于无法进行分布式式部署,而一台服务器的资

2017-08-16 16:40:27 15523 4

转载 关于redis的冷热数据分离

一、概述当前KV数据库从存储介质可以分为两种模式,一种是以内存为主持久化为辅,如memcache(无持久化)、Redis等;一种是以持久化为主内存为辅,如ssdb(基于leveldb/rocksdb存储引擎)。这两种模式代表了两种不同的选择策略和哲学,适应不同的业务场景。简单地说,以内存为主的模式侧重高性能,信奉“内存是新的硬盘”的哲学;以持久化为主的模式则侧重大容量,兼顾性能。 对于

2017-08-16 16:39:36 6481

转载 云上如何做冷热数据分离

前言随着业务的发展和持续运行,系统会产生大量的数据,数据的增长伴随而来的是对数据库的考验,在达到一定的数据量之后数据库的访问性能就会持续下降,为了系统的稳定运行,得要么提高数据库访问性能,要么把数据限定在一定的量上。前者会导致IT系统的不断投入,投入产出比不高,且早晚会达到系统的瓶颈,后者需要抛弃旧的数据,从历史数据的完整性上来说也是我们不愿意看到的。如果暂时没有上分析性数据仓库的需求,那

2017-08-16 16:38:28 3765

转载 分布式系统事务一致性解决方案

开篇在OLTP系统领域,我们在很多业务场景下都会面临事务一致性方面的需求,例如最经典的Bob给Smith转账的案例。传统的企业开发,系统往往是以单体应用形式存在的,也没有横跨多个数据库。我们通常只需借助开发平台中特有数据访问技术和框架(例如Spring、JDBC、ADO.NET),结合关系型数据库自带的事务管理机制来实现事务性的需求。关系型数据库通常具有ACID特性:原子性(Atomicity

2017-08-16 15:55:12 247

转载 数据库三范式详解+例子

转载 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。 范式说明 1.1 第一范式(1NF)无重复的列     所谓第一范式

2017-08-16 14:54:55 1129

转载 《高性能MySQL》读书笔记之 MySQL锁、事务、多版本并发控制的基础知识

1.2 并发控制  1.2.1 读写锁    在处理并发读或写时,通过实现一个由两种类型的锁组成的锁系统来解决问题。这两种类型的锁通常被称为 共享锁(shared lock) 和 排它锁(exclusive lock),也叫读锁(read lock)和写锁(write lock)。    读锁是共享的,或者说是不互相阻塞的。多个客户端可以在同一时刻读取同一个资源,而互不干扰。写锁则是排

2017-08-15 17:27:18 395

转载 B树、B-树、B+树与红黑树

二叉查找树(BST):二叉排序树或者是一棵空树,或者是具有下列性质的二叉树:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;(3)左、右子树也分别为二叉排序树;(4)没有键值相等的节点(因此,插入的时候一定是叶子节点)。插入有序节点,退化成单支树 1.查找效率最好O(logn),最坏O(n)

2017-08-15 15:00:15 449

原创 Shiro系统权限管理、及原理剖析

1.简介               常用的JavaEE安全框架有shiro、spring security。shiro被应用非常广泛,可以集成cas,搭建单点登录系统。spring security则被认为比较重,应用没有shiro广泛。shiro提供用户名、密码验证,及密码的加密存储,会话Session的管理,与web集成,支持HTTPS的拦截。2.Shir

2017-08-14 14:44:23 1632

转载 浅谈Shiro框架中的加密算法,以及校验

在涉及到密码存储问题上,应该加密/生成密码摘要存储,而不是存储明文密码。为什么要加密:网络安全问题是一个很大的隐患,用户数据泄露事件层出不穷,比如12306账号泄露。Shiro提供了base64和16进制字符串编码/解码的API支持,方便一些编码解码操作,想了解自己百度API操作用法。看一张图,了解Shiro提供的加密算法:本文重点讲shiro提供的

2017-08-14 14:17:25 535

转载 Google 的开源技术protobuf 简介与例子

今天来介绍一下“ProtocolBuffers”(以下简称protobuf)这个玩意儿。本来俺在构思“生产者/消费者模式 ”系列的下一个帖子:关于生产者和消费者之间的数据传输格式。由于里面扯到了protobuf,想想干脆单独开一个帖子算了。  ★protobuf是啥玩意儿?  为了照顾从没听说过的同学,照例先来扫盲一把。  首先,protobuf是一个开源项目(官方站点在“这里”)

2017-08-13 22:28:17 817

转载 WebService远程调用技术

1、---------------------------------介绍--------------------------------------------------(1)远程调用:一个系统远程调用另一个系统的服务,已获取远程系统的业务数据。(2)为什么使用:基于安全性的考虑,一般企业不会开放自己的数据库,只能使用远程调用技术。2----------------------

2017-08-13 21:08:05 1816

原创 数据库设计的基本步骤

数据库设计的基本步骤按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下6个阶段1.需求分析2.概念结构设计3.逻辑结构设计4.物理结构设计5.数据库实施6.数据库的运行和维护 在数据库设计过程中,需求分析和概念设计可以独立于任何数据库管理系统进行,逻辑设计和物理设计与选用的DAMS密切相关。 1.需求分析阶段(常用自顶向下)

2017-08-13 20:52:16 236089 18

原创 Apache Shiro 快速入门教程,shiro 基础教程

第一部分 什么是Apache Shiro1、什么是 apache shiro :Apache Shiro是一个功能强大且易于使用的Java安全框架,提供了认证,授权,加密,和会话管理如同 spring security 一样都是是一个权限安全框架,但是与Spring Security相比,在于他使用了和比较简洁易懂的认证和授权方式。2

2017-08-12 21:36:04 15531

转载 mysql数据库相关

MySQL存储引擎--MyISAM与InnoDB区别MyISAM 和InnoDB 讲解  InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事

2017-08-12 16:35:24 599

转载 JAVA CAS原理深度分析

看了一堆文章,终于把JavaCAS的原理深入分析清楚了。感谢GOOGLE强大的搜索,借此挖苦下百度,依靠百度什么都学习不到! 参考文档:http://www.blogjava.NET/xylz/archive/2010/07/04/325206.htmlhttp://blog.hesey.net/2011/09/resolve-aba-by-atomicstampedref

2017-08-11 21:15:30 289

转载 Java就业企业面试问题-ssm框架

SpringMvc简单介绍下你对springMVC的理解?Spring MVC Framework有这样一些特点:它是基于组件技术的.全部的应用对象,无论控制器和视图,还是业务对象之类的都是java组件.并且和Spring提供的其他基础结构紧密集成.不依赖于Servlet API(目标虽是如此,但是在实现的时候确实是依赖于Servlet的)可以任意使用各种视

2017-08-09 10:35:24 11335 1

转载 云计算仿真工具CloudSim介绍和使用

CloudSim介绍和使用本文主要介绍一下我在使用CloudSim时翻译、整理和理解的一些信息,以及我的使用经验,希望能对有需要的朋友们有所帮助~1、我翻译和理解的一些信息:    2009年4月8日,澳大利亚墨尔本大学的网格实验室和Gridbus项目宣布推出云计算仿真软件,称为CloudSim。它是在离散事件模拟包SimJava上开发的函数库,可在Windows和Linux系统上跨平

2017-08-06 15:51:00 2028

转载 面试云计算岗位时最常遇到的40个问题

面试云计算岗位时最常遇到的40个问题 1)使用云计算有哪些优点?使用云计算有下列优点:a)备份数据和存储数据b)强大的服务器功能c)SaaS(软件即服务)d)信息技术沙盒功能e)提高生产力f)具有成本效益,并节省时间2)可否列举

2017-08-06 15:38:34 14519

转载 MapReduce 模式、算法和用例

MapReduce 模式、算法和用例  在这篇文章中,我整合了一些MapReduce的模式和算法,以便于读者系统化地认识那些在互联网及科学文献中能够找到的不同技术。同时,我也提供了几个实用的案例学习。所有的描述及代码片段使用了标准Hadoop平台的MapReduce模型,包括:Mappers,Reduce,Combiners,Partitions和Sorting。下图描绘了这个框架。   

2017-08-06 14:59:16 629

转载 23种设计模式汇总整理

设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两类:并发型模式和线程池模式

2017-08-05 10:38:56 243

转载 spring mvc 和struts2的区别

SpringMVC与Struts2区别与比较总结一、框架机制1、Struts2采用Filter(StrutsPrepareAndExecuteFilter)实现,SpringMVC(DispatcherServlet)则采用Servlet实现。2、Filter在容器启动之后即初始化;服务停止以后坠毁,晚于Servlet。Servlet在是在调用时初始化,先于Filter调用,服

2017-08-04 23:08:45 765 1

原创 Servlet接口五种方法介绍

Servlet接口定义了5种方法:init()service()destroy()getServletConfig()getServletInfo()init()在Servlet实例化后,Servlet容器会调用init()方法来初始化该对象,主要是为了让Servlet对象在处理客户请求前可以完成一些初始化工作,例如:建立数据库的连接,获取配置信息等。对于每一个Servlet实

2017-08-04 22:44:08 13478

转载 序列化和反序列化的简单理解

一、序列化和反序列化的概念  把对象转换为字节序列的过程称为对象的序列化。  把字节序列恢复为对象的过程称为对象的反序列化。  对象的序列化主要有两种用途:  1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;  2) 在网络上传送对象的字节序列。  在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存。比如最常见的是

2017-08-04 15:21:40 317

转载 PYTHON 一些基础面试题目总结

1.       Python是如何进行内存管理的?答:从三个方面来说,一对象的引用计数机制,二垃圾回收机制,三内存池机制一、对象的引用计数机制Python内部使用引用计数,来保持追踪内存中的对象,所有对象都有引用计数。引用计数增加的情况:1,一个对象分配一个新名称2,将其放入一个容器中(如列表、元组或字典)引用计数减少的情况:1,使

2017-08-04 10:29:53 6280

原创 java面试Linux常用命令使用方法大全

1.# 表示权限用户(如:root),$ 表示普通用户  开机提示:Login:输入用户名  password:输入口令   用户是系统注册用户成功登陆后,可以进入相应的用户环境.  退出当前shell,输入:exit2.useradd netseek 添加一个netseek用户  passwd netseek  给netseek这个用户设置密码.  (/etc/pas

2017-08-04 10:20:26 11902

原创 Java开发人员最常用19个Linux命令

1.查找文件find / -name filename.txt根据名称查找/目录下的filename.txt文件。2.查看一个程序是否运行ps –ef|grep tomcat查看所有有关tomcat的进程3.终止线程kill -9 19979终止线程号位19979的线程4.查看文件,包含隐藏文件ls -al5.当前工作目录pwd6.复制文件包括其

2017-08-04 10:11:41 505

原创 线程的生命周期

1.线程的生命周期线程是一个动态执行的过程,它也有一个从产生到死亡的过程。(1)生命周期的五种状态   新建(new Thread)当创建Thread类的一个实例(对象)时,此线程进入新建状态(未被启动)。例如:Thread  t1=new Thread();就绪(runnable)线程已经被启动,正在等待被分配给CPU时间片,也就是说此时线程正在就绪队列中排队等候得到

2017-08-03 20:10:37 378

转载 JAVA多线程和并发基础面试问答

JAVA多线程和并发基础面试问答原文链接  译文连接 作者:Pankaj  译者:郑旭东  校对:方腾飞多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一。在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对应日后碰到的问题。(校对注:非常赞同这个观点)Java多线程面试问题1. 进程和线程之间有什么不同?一个进程是一个

2017-08-03 19:45:11 560

转载 教你初步了解红黑树

教你初步了解红黑树 作者:July、saturnman   2010年12月29日本文参考:Google、算法导论、STL源码剖析、计算机程序设计艺术。推荐阅读:Left-Leaning Red-Black Trees,Dagstuhl Workshop on Data Structures, Wadern, Germany, February, 200

2017-08-03 19:35:14 304

考研自动化专业排名

2017-02-20

考研英语复试口语

考研英语口语

2017-02-20

git的基本用法

git的基本用法

2017-02-20

空空如也

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

TA关注的人

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