- 博客(113)
- 资源 (1)
- 收藏
- 关注
原创 Memcached简介
一、概念Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。二、适用场合1.分布式应用。由于memcached本身基于分布式的系统,所以尤其适合大型的分布式系统。2.数据库前段缓存。数据库常常是网站系统的瓶颈。数据库的大并发量访问,常常造成网站内存溢
2016-09-22 13:45:18 348
原创 Redis简介
Redis 简介Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,s
2016-09-21 17:17:53 430
原创 SQL 语句查询Exists原理
exists执行顺序exists做为where 条件时,是先对where 前的主查询询进行查询,然后用主查询的结果一个一个的代入exists的查询进行判断,如果为真则输出当前这一条主查询的结果,否则不输出。查询时,一般情况下,子查询会分成两种情况: 1.子查询与外表的字段有关系时select 字段1 , 字段2 from 表1 where exists (
2016-09-20 16:26:59 5063
原创 JMeter教程
Jmeter是一款优秀的开源测试工具, 是每个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提高工作效率。熟练使用Jmeter后, 能用Jmeter搞定的事情,你就不会使用LoadRunner了。Jmeter 介绍Jmeter 是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试). 而且用
2016-09-14 15:31:31 2365
原创 数据库字符串拼接
一、MySQLjava中我们通常用加号"+"来实现字符串的拼接,MySQL中的"+"就是一个操作符;MySQL中进行字符串的拼接函数:1. CONCAT支持一个或者多个参数,参数类型可以为字符串类型也可以是非字符串类型,对于非字符串类型的参数MySQL将尝试将其转化为字符串类型,CONCAT函数会将所有参数按照参数的顺序拼接成一个字符串做为返回值。SELECT CO
2016-09-13 14:01:27 13329
原创 javascript 思维导图
分别归类为: javascript变量 javascript运算符 javascript数组 javascript流程语句 javascript字符串函数 javascript函数基础 javascript基础DOM操作 文档对象模型DOM javascript正则表达式 能够认真看完就是一次对ja
2016-09-06 22:05:13 2668 1
原创 java代码优化细节
1、尽量指定类、方法的final修饰符 带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final,则该类所有的方法都是final的。Java编译器会寻找机会内联所有的fina
2016-09-06 21:42:36 2421
原创 Jetty 的工作原理以及与 Tomcat 的比较
Jetty 的基本架构Jetty 目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器,它有一个基本数据模型,这个数据模型就是 Handler,所有可以被扩展的组件都可以作为一个 Handler,添加到 Server 中,Jetty 就是帮你管理这些 Handler。Jetty 的基本架构下图是 Jetty 的基本架构图,
2016-09-06 14:59:39 2533
原创 java内存模型
内存模型概述1)JSR133:在Java语言规范里面指出了JMM是一个比较开拓性的尝试,这种尝试视图定义一个一致的、跨平台的内存模型,但是它有一些比较细微而且很重要的缺点。其实Java语言里面比较容易混淆的关键字主要是synchronized和volatile,也因为这样在开发过程中往往开发者会忽略掉这些规则,这也使得编写同步代码比较困难。JSR133本身的目的是为了修
2016-09-01 10:57:27 606
原创 JVM 内存空间分为几部分
内存空间分几部分:代码段、数据段,栈,堆 (收集整理)1.函数代码存放在代码段。声明的类如果从未使用,则在编译时,会优化掉,其成员函数不占代码段空间。全局变量或静态变量,放在数据段,局部变量放在栈中,用new产生的对象放在堆中,内存分为4段,栈区,堆区,代码区,全局变量区BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量
2016-09-01 10:33:56 5797 1
原创 java 类加载器
1.java.lang.ClassLoader类介绍java.lang.ClassLoader类的基本职责就是根据一个指定的类的名称,找到或者生成其对应的字节代码,然后从这些字节代码中定义出一个Java 类,即 java.lang.Class类的一个实例。ClassLoader提供了一系列的方法,比较重要的方法如: 2.JVM中类加载器的树状层次结构
2016-09-01 10:24:32 361
原创 JVM的GC策略
1 前言 GC(Garbage Collect)是jvm对于内存管理的核心功能,正是因为它才让java程序员从内存释放的苦海中脱离出来,所以作为一个程序员都有必要去了解一下他的原理。 说一句题外话,我曾经被问到GC的具体实现,那个时候我就知道一些基本的思想,结果被人鄙视了。对于这个问题我到现在仍保留个人观点,就算java用了很久,如果不涉及到java程序的性能调
2016-09-01 10:11:21 6100
原创 Win10系统开机弹出黑框提示usoclient.exe的解决方法
方案一: 这个文件通常属于产品scantooffice客户端。大多由公司松下解技术有限公司开发。应该是装过扫描仪类似的东西,你可以通过查找软件,找到类似的文件选择删除后就可以了。 方案二: 1、在win10系统中打开360安全卫士软件; 2、然后在“加速”中找到启动项管理; 3、禁用一个名为“系统更新后扫描任务”的启动项即可。
2016-09-01 09:47:12 17668
原创 Java NIO 详解
连接侦听线程、连接对象队列、发送线程池、接收线程池、分发线程、事件处理对象、监控处理对象。下面我将描述下整个连接处理过程:1、 连接侦听线程循环接收一个连接请求,如果有连接请求过来,则返回一个连接Socket对象,否则该线程就阻塞等待,直到有一个连接请求过来。2、 封装该返回的Socket对象(主要是封装获取完整包数据,发送方法,关闭方法等)成Connection对象,并把封装好的
2016-08-31 17:12:08 721
原创 TreeMap 红黑树算法实现
TreeMap 的实现就是红黑树数据结构,也就说是一棵自平衡的排序二叉树,这样就可以保证当需要快速检索指定节点。TreeSet 和 TreeMap 的关系为了让大家了解 TreeMap 和 TreeSet 之间的关系,下面先看 TreeSet 类的部分源代码:public class TreeSet extends AbstractSet implements N
2016-08-31 16:09:09 1694
原创 HashMap vs. TreeMap vs. Hashtable vs. LinkedHashMap
Map是最重要的数据结构。这篇文章中,我会带你们看看HashMap, TreeMap, HashTable和LinkedHashMap的区别。1. Map概览Java SE中有四种常见的Map实现——HashMap, TreeMap, Hashtable和LinkedHashMap。如果我们使用一句话来分别概括它们的特点,就是:HashMap就是一张hash表,键和值都没有排序
2016-08-31 14:34:46 322
原创 Echarts统计报表前端框架
前端数据展示Echartshttp://echarts.baidu.com/index.htmlhttp://ecomfe.github.io/echarts/doc/slide/whyEcharts.html#/admin后台样式http://www.zi-han.net/theme/se7en/
2016-08-30 15:42:39 10164
转载 文件实现省市三级联动
2,一个简单的方案 将数据拷贝到一个district.data.dic文本里面。 邮政编码一共6位,1-2位代表省,3-4位代表市,5-6位代表区/县。 所以,可以直接将这个数据存储成一个3级树形结构。3,代码实现首先判断 1-2位,找到1级省。 然后找到3-4位,判断市,最后5-6位是区/县import com.google.com
2016-08-30 15:35:00 918
原创 P2P、P2C 、O2O 、B2C、B2B、 C2C的概念解析
P2P到底是什么呢? P2P借贷是一种将非常小额度的资金聚集起来借贷给有资金需求人群的一种民间小额借贷模式。P2P是“Peer-to-Peer”的简写,个人对个人的意思,P2P借贷指个人通过第三方平台(P2P公司)在收取一定服务费用的前提下向其他个人提供小额借贷的金融模式。 P2P模式 第一种是纯线上模式,是纯粹的P2P,在这种平台模式上纯粹进行信息匹配,帮助资金借贷
2016-08-30 15:14:47 1314 2
转载 Java加密和解密
1、md5加密,该加密算法是单向加密,即加密的数据不能再通过解密还原。相关类包含在java.security.MessageDigest包中。 2、3-DES加密,该加密算法是可逆的,解密方可以通过与加密方约定的密钥匙进行解密。相关类包含在javax.crypto.*包中。 3、base64编码,是用于传输8bit字节代码最常用的编码方式。相关类在sun.misc.BASE64Decode
2016-08-16 21:47:16 1369
原创 使用 CAS 在 Tomcat 中实现单点登录
CAS 介绍CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。CAS 具有以下特点:开源的企业级单点登录解决方案。CAS Server 为需要独立部署的 Web 应用。CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web
2016-08-09 14:17:03 2132
转载 Apache Shiro
第一部分 什么是Apache Shiro1、什么是 apache shiro :Apache Shiro是一个功能强大且易于使用的Java安全框架,提供了认证,授权,加密,和会话管理如同 Spring security 一样都是是一个权限安全框架,但是与Spring Security相比,在于他使用了和比较简洁易懂的认证和授权方式。
2016-08-07 15:40:01 380
转载 Loadrunner教程
概要介绍 LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。通过使用LoadRunner,企业能最大限度地缩短测试时间, 优化性能和加速应用系统的发布周期。目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和
2016-08-05 14:18:33 1037
原创 本地预览下载图片插件
div> img id="ImgPr" width="120" height="120" />div> input type="file" id="up" />$("#up").uploadPreview({ Img: "ImgPr", Width: 120, Height: 120, ImgType: ["gif", "jpeg", "jpg", "bmp", "png"],
2016-08-01 13:52:23 730
原创 mysql千万级大数据SQL查询优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id fro
2016-07-29 13:27:31 86009 14
原创 Web性能优化-浏览器端
1、压缩源码和图片JavaScript文件源代码可以采用混淆压缩的方式,CSS文件源代码进行普通压缩,JPG图片可以根据具体质量来压缩为50%到70%,PNG可以使用一些开源压缩软件来压缩,比如24色变成8色、去掉一些PNG格式信息等。2、选择合适的图片格式如果图片颜色数较多就使用JPG格式,如果图片颜色数较少就使用PNG格式,如果能够通过服务器端判断浏览器支持WebP,那么就使用We
2016-07-29 10:49:04 442
原创 JPA注解介绍
JPA 注解的几个要点 1.设置Pojo为实体 @Entity //标识这个pojo是一个jpa实体 public class Users implements Serializable{ } 2.设置表名 @Entity @Table (name= users ) //指定表名为users public class Users implements Serializable{ } 3
2016-07-26 22:31:28 17711
转载 DateUtils
package cn.com.css.common.util;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;import org.a
2016-07-22 13:27:28 369
转载 Zip操作类
package com.ucap.web.cm.webapp.util;import java.io.BufferedOutputStream;import java.io.File;
2016-07-22 13:09:49 886
转载 Java内存溢出详解
一、常见的Java内存溢出有以下三种:1. java.lang.OutOfMemoryError: Java heap space----JVM Heap(堆)溢出JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。He
2016-07-21 15:41:15 292
原创 抽奖转盘
html lang="zh-cn"> head> meta charset="UTF-8"> script type="text/javascript" src="jquery-2.1.4.min.js">script> title>转盘抽奖title> meta name="viewport" content="width
2016-07-20 14:17:56 2393
原创 web乱码解决方案
各种乱码的情况1.项目的编码格式和页面文件的编码格式不一样是否有冲突?webProject项目的编码格式是“GBK” ,项目下的页面中的编码格式是“UTF-8”,实践发现,项目的编码格式和页面的编码格式不一样不会有任何问题,显示的中文没有乱码。 查看项目的编码格式可以在 项目-->右键-->Properties--> Text file encoding
2016-07-20 14:10:37 553
原创 Spring Security 自定义登录验证与自定义回调地址
1 配置文件 security-ns.xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:security="http://www.springframework.org
2016-07-13 14:27:13 15269
原创 Spring定时任务
一.分类从实现的技术上来分类,目前主要有三种技术(或者说有三种产品):Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行。一般用的较少,这篇文章将不做详细介绍。使用Quartz,这是一个功能比较强大的的调度器,可以让你的程序在指定时间执行,也可以按
2016-07-13 13:45:53 2117
原创 Oracle 存储过程实例集锦
一、如何创建存储过程procedure1、创建一个存储过程用于保存已上架商品的数量CREATE ORREPLACE PROCEDURE getGoodCount ISgoodCount int;BEGINSELECT COUNT(*
2016-07-13 13:23:17 5201
原创 UTF-8、GBK编码的区别
UTF- 8:是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码。GBK是国家标准GB2312基础上扩容后兼容GB2312的标准。GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1。GBK包含全部中文字符,是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBD大所
2016-07-13 09:50:01 622
原创 Spring Batch
为什么我们需要批处理?我们不会总是想要立即得到需要的信息,批处理允许我们在请求处理之前就一个既定的流程开始搜集信息;比如说一个银行对账单,我们可以按月生成,并在用户查询之前开启一个批处理流程进行处理;有时候它能让生意做得更好;比如说在线购物时,并不是说你买了一个产品零售商就立即发货,而是四五个小时后,统一发货;更好的利用资源;让应该利用的处理能力闲置起来是一个大的浪费,我们可以定制处理让一
2016-07-12 16:26:14 434
原创 软件开发模式对比(瀑布、迭代、螺旋、敏捷)
1、瀑布模型是由W.W.Royce在1970年最初提出的软件开发模型, 瀑布式开发是一种老旧的计算机软件开发方法。瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求分析、设计、编码、集成、测试、维护的步骤顺序进行。步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。 瀑布式的主要的问题是它的严格分级导致的自由度降低,项目早期即作出承诺导致对后期需求的变
2016-07-08 15:39:20 357
原创 Velocity与Jsp、Freemarker比较
Velocity 是一个基于java 的模板引擎(template engine). 它可以让视图的设计者在web 页面中引用java 代码中定义的数据对象和命令。从而使Web designers 和java 开发者依照MVC 思想(Model-View-Controller )开发系统,这意味着Web designers 只须将精力注用于良好表现力的视图外观设计,而Java程序员则只要关心着如何
2016-07-07 22:05:08 3618
guava-18.jar
2016-09-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人