自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 想减肥

如果瘦个十斤,我应该是个大美女吧,加油,减下来。

2017-01-05 14:09:04 407

原创 2017/1/15,开启struts2之旅

这几天没有项目开发,不可以浪费时间,做一个勤奋的笨鸟吧。 struts2,以前用到过,用过几次现在一点印象都没有。 从事编程以来,工资也只够生活,单身的问题也没有解决,但是却具备了一种洪荒之力,对什么新的技术都可以很快上手,所以,不要浪费时间,此刻就开始进入struts2世界吧。 ...

2017-01-05 13:51:26 380

原创 jdk1.8的更换

最近用到IDEA开发工具,发现实列都是jdk1.8,特别是spring boot 妥妥的1.8,虽然在STS开发maven工程,jdk的使用没有影响,但是自从用了IDEA之后,就不想回头用sts了。下定决心换jdk版本。 安装都是简单的,恼火的是100多M的东西怎么下这么久,可能是外网流量的限制。所以开启fanqiang工具,在360浏览器中下载,总算很快下好。 安装好...

2017-01-04 09:18:22 509

原创 json字符串转数组

   后端传到前段的格式是这样的model.addAttribute("newsTagList", JSON.toJSON(list));   将一个list转换为了json字符串   前段我要把获取到的数据展示出来,这里有时候不转换为数组也可以用   在for循环这个list之前,建议把返回的json字符串先转换为数组,这里我用最简单的方法,网上还有几种方法的:   var t...

2016-09-20 18:04:58 461

原创 session深入理解

一 Session的概念:Session代表服务器与浏览器的一次会话过程,这个过程是连续的,也可以时断时续的。在Servlet中,session指的是HttpSession类的对象二 Session的创建时间:一个常见的误解是以为session在有客户端访问时就被创建,然而事实是直到某server端程序调用 HttpServletRequest.getSession(true)这样...

2016-09-07 10:50:42 206

原创 ftp上传 防火墙的设置

之前ftp上传文件完全没问题,后来突然变得不能上传了,删除了整个工程重新导入都不行,后来发现原来是防火墙的原因。关闭防火墙之后,上传就成功了。有点蛋疼。那么问题就来了,防火墙开着的时候怎么去设置才可以上传了。 一下是百度到的原因跟方法: 2003 server用于提供web和ftp服务,通过互联网用flashfxp实现远程上传网页。如果关闭防火墙,ftp上传下载正常...

2016-08-04 18:01:56 1321

原创 mysql的 replace into用法

replace into有三种形式: 1. replace into tbl_name(col_name, ...) values(...) 2. replace into tbl_name(col_name, ...) select ... 3. replace into tbl_name set col_name=value, ...前两种形式用的多些。其中 “i...

2016-07-07 10:31:01 167

原创 union与union all的差异

[color=green]UNION[/color]会自动删除重复项,筛选出部分字段的时候要注意了,如果刷选出来的两个字段的值完全相同就会剩下一个。[color=blue]UNION ALL[/color] 会将左右两个查询的结果的所有的资料都列出来,无论值有无重复。...

2016-07-04 12:00:09 172

原创 mysql更改密码指令

安装mysql的时候可以自定义密码,为了简单好记,我就设为了123456,但是从svn上down下来的代码运行中,设计到数据库数据操作的,控制台会报错,就是没有权限的问题了。因为我跟公司服务器的密码不一样,虽然我是链接本地的数据库。只好修改mysql密码了。SET PASSWORD FOR 'root'@'localhost' = PASSWORD('654321'); 里面就是填你自己想要改...

2016-07-04 11:56:15 185

原创 特殊符号的模糊查询

今天遇到了个问题,就是对标题中含有%的内容模糊查询,SELECT * FROM me_content WHERE title LIKE '%%%'这样写显然得不到想要的结果,这里的%比如转译。SELECT * FROM me_content WHERE title LIKE '%\%%' 这样写就对了。...

2016-07-04 10:28:21 287

Redis上踩过的一些坑-美团

上上周和同事(龙哥)参加了360组织的互联网技术训练营第三期,美团网的DBA负责人侯军伟给大家介绍了美团网在redis上踩得一些坑,讲的都是干货和坑。 分为5个部分: 一、周期性出现connect timeout 二、redis bgrewriteaof问题 三、redis内存占用飙升四、redis内存使用优化 五、redis cluster遇到的一些问题...

2016-01-17 01:08:00 339

Redis的性能幻想与残酷现实

2011 年,当初选择 Redis 作为主要的内存数据存储,主要吸引我的是它提供多样的基础数据结构可以很方便的实现业务需求。另一方面又比较担心它的性能是否足以支撑,毕竟当时 Redis 还属于比较新的开源产品。但 Redis 官网宣称其是提供多数据结构的高性能存储,我们对其还是抱有幻想的。幻想要了解 Redis 的性能,我们先看看官方的基准性能测试数据,心里有个底。 测...

2016-01-17 00:45:00 157

Zookeeper的Paxos分布式一致性算法-类比的方式去理解

Paxos是一个基于消息传递的一致性算法,近几年被广泛应用于分布式计算中,Google的Chubby,Apache的Zookeeper都是基于它的理论来实现的,Paxos还被认为是到目前为止唯一的分布式一致性算法,其它的算法都是Paxos的改进或简化。Paxos只有在一个可信的计算环境中才能成立,这个环境是不会被入侵所破坏的。由Leslie Lamport发明了Paxos算法,他目前供职于微软...

2016-01-17 00:41:00 250

java动态加载指定的类或者jar包反射调用其方法-涉及其他jar中的类就报ClassNotFound问题分析及解决思路...

在这篇博文中java动态加载指定的类或者jar包反射调用其方法,介绍动态加载指定的类,当时我是拿URLClassLoader介绍的,当然可以自定义一个ClassLoader重写对应的方法, 不过这个有现成的比自己重写更强大为何不用。 话不多说,很久不写博客了,时间太紧了,起因还是一个网友私信我,说他反射创建某个对象时涉及其他jar中的类就会报ClassNotFound异常。 其实...

2015-11-25 22:52:00 748 1

用javascript实现java中的集合list(后续不断完善优化)

今天业务上的需求,前台需要类似java集合list或者set那样的工具或者类型来处理一个比价复杂的业务,js中是没有这种集合工具的,用数组吧考虑了下还是长久下,写个类似的简单工具,做成公共js,然后后期不断完善和优化,以后用起来就很方便了,这里就记录和分享下我的代码,确切的说很不完善,和java中ArrayList功能还差一些,一些地方也待优化,不过可以临时救急用,网上搜到一两篇就,不过还有很多b...

2015-09-11 09:12:00 215

Java永久代去哪儿了

在Java虚拟机(以下简称JVM)中,类包含其对应的元数据,比如类的层级信息,方法数据和方法信息(如字节码,栈和变量大小),运行时常量池,已确定的符号引用和虚方法表。在过去(当自定义类加载器使用不普遍的时候),类几乎是“静态的”并且很少被卸载和回收,因此类也可以被看成“永久的”。另外由于类作为JVM实现的一部分,它们不由程序来创建,因为它们也被认为是“非堆”的内存。在JDK8之前的...

2015-09-08 08:54:00 218

如何在高并发分布式系统中生成全局唯一Id

又一个多月没冒泡了,其实最近学了些东西,但是没有安排时间整理成博文,后续再奉上。最近还写了一个发邮件的组件以及性能测试请看《NET开发邮件发送功能的全面教程(含邮件组件源码)》,还弄了个MSSQL参数化语法生成器,会在9月整理出来,有兴趣的园友可以关注下我的博客。分享原由,最近公司用到,并且在找最合适的方案,希望大家多参与讨论和提出新方案。我和我的小伙伴们也讨论了这个主题,我受益匪浅啊……...

2015-09-01 09:00:00 225

oracle索引原理(b-tree,bitmap,聚集,非聚集索引)

一个B树索引只有一个根节点,它实际就是位于树的最顶端的分支节点。可以用下图一来描述B树索引的结构。其中,B表示分支节点,而L表示叶子节点。 对于分支节点块(包括根节点块)来说,其所包含的索引条目都是按照顺序排列的(缺省是升序排列,也可以在创建索引时指定为降序排列)。每个索引条目(也可以叫做每条记录)都具有两个字段。第一个字段表示当前该分支节点块下面所链接的索引块中所包含的最小键值;...

2015-09-01 08:57:00 152

深入剖析tomcat之servlet容器

其实我们开发中经常用tomcat应用服务器,tomcat就一个servlet容器,能够运行基于serlvlet的应用程序并响应相应的http请求,开发时间长了,还是想想具体知道它是怎么运行的,尤其是servlet容器的机理,所以有幸拜读了外国人的《深入剖析tomcat》,感觉挺不错的,可以在此点击免费下载电子书,建议大家有时间读读,在读的过程中边读边翻阅着tomcat的源码,更有助于你理解它的各...

2015-09-01 08:54:00 173

Oracle宣布更多的Java 9 新特性

随着Oracle确认了其余的4个Java9特性,下一代Java的计划开始变得更清晰了,Oracle已经公布了第二套Java9特性。自从Oracle在今年早些时候宣布了3个新的API和模块化源码后,这是Oracle首次推出Java9特性表。统一JVM日志(JEP158)Java9将会对所有的JVM组件采用相同的日志格式。这将会改变JVM子系统记录事件的方式,以及为日志添加了统一的命令选项。...

2015-08-20 08:54:00 131

Java8新特性浅析

欢迎阅读我编写的Java 8介绍。本教程将带领你一步一步地认识这门语言的新特性。通过简单明了的代码示例,你将会学习到如何使用默认接口方法,Lambda表达式,方法引用和重复注解。看完这篇教程后,你还将对最新推出的API有一定的了解,例如:流控制,函数式接口,map扩展和新的时间日期API等等。允许在接口中有默认方法实现Java 8 允许我们使用default关键字,为接口声明添加非抽象的方...

2015-08-20 08:52:00 92

Java7的那些新特性

本文介绍的java 7新特性更多的感觉像是语法糖。毕竟java本身已经比较完善了,不完善的很多比较难实现或者是依赖于某些底层(例如操作系统)的功能。不过java7也实现了类似aio的强大功能。但本文并未有此介绍。主要是 1.switch可以接受string类型而不像以前仅仅是int;2.异常catch可以一次处理完而不像以前一层层的surround;3.泛型类实例化也不用繁琐的将泛型声明再写一遍;...

2015-08-20 08:50:00 102

深入浅出 RPC

《深入篇》我们主要围绕 RPC 的功能目标和实现考量去展开,一个基本的 RPC 框架应该提供什么功能,满足什么要求以及如何去实现它?RPC 功能目标RPC 的主要功能目标是让构建分布式计算(应用)更容易,在提供强大的远程调用能力时不损失本地调用的语义简洁性。为实现该目标,RPC 框架需提供一种透明调用机制让使用者不必显式的区分本地调用和远程调用,在前文《浅出篇》中给出了一种实现结构,基于...

2015-08-13 09:06:00 88

一致性hash算法在memcached中的使用

一、概述 1、我们的memcache客户端(这里我看的spymemcache的源码),使用了一致性hash算法ketama进行数据存储节点的选择。与常规的hash算法思路不同,只是对我们要存储数据的key进行hash计算,分配到不同节点存储。一致性hash算法是对我们要存储数据的服务器进行hash计算,进而确认每个key的存储位置。2、常规hash算法的应用以及其弊端 最常规的方式...

2015-08-13 09:05:00 107

学习Javascript闭包(Closure)

以下转自阮一峰的网络日志闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。下面就是我的学习笔记,对于Javascript初学者应该是很有用的。一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直...

2015-08-13 08:54:00 88

实现跨域cookie共享

问题描述:在一个比较复杂的网站环境下。有多个产品向外提供服务。每个产品下都有自己的用户登录界面。现在需要设计一个统一的登录界面。 当用户在这个界面登录后就可以自由的使用各个产品和服务。同时意味着用户用一个帐号可以在不同服务里登录,另一方面就是在一个服务里面登录后可以无障碍的 漫游到其他服务里面去。实际应用:Sohu的Passport将focus.cn,17173.com,sogou.com,c...

2015-07-30 09:05:00 123

springMVC工作原理

SpringMVC框架介绍 1) Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是...

2015-07-30 09:03:00 81

springMVC工作原理

SpringMVC框架介绍 1) Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是...

2015-07-30 09:03:00 83

使用HttpClient登录知乎获取返回页面信息

引言 HttpClient是java语言下一个支持http协议的客户端编程工具包,它实现了HTTP协议的所有方法,但是不支持JS渲染。我们在做一些小玩意时,有可能需要登录某些网站获取信息,那么HttpClient就是你的好帮手,废话不多说,进入实战。一 登录的实际意义 在HTTP横行的今天,我们每天都要登录一些网站,那么登录的意义是什么呢?首先要对cookie要有一定了解。...

2015-07-29 08:54:00 116

使用Jsoup解析和操作HTML

jsoup 简介jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。jsoup的主要功能如下: 1. 从一个URL,文件或字符串中解析HTML; 2. 使用DOM或CSS选择器来查找、取出数据; 3. 可操作HTML元素、属性、文本;jsoup是基于MIT协...

2015-07-29 08:52:00 133

深入分析Java ClassLoader原理

一、什么是ClassLoader?大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以经常要从这个class文件中要调用另外一个class文件中的方法,如果另外一个文件不存在的,则会引...

2015-07-29 08:49:00 92

深入分析Java ClassLoader原理

一、什么是ClassLoader?大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以经常要从这个class文件中要调用另外一个class文件中的方法,如果另外一个文件不存在的,则会引...

2015-07-29 08:49:00 97

JVM中类的卸载机制

类的生命周期  当Sample类被加载、连接和初始化后,它的生命周期就开始了。  当代表Sample类的Class对象不再被引用,即不可触及时,Class对象就会结束生命周期,Sample类在方法区内的数据也会被卸载,从而结束Sample类的生命周期。  由此可见,一个类何时结束生命周期,取决于代表它的Class对象何时结束生命周期。引用关系  加载器和Class对象:...

2015-07-28 08:51:00 119

Java虚拟机的类加载机制

Java虚拟机类加载过程是把Class类文件加载到内存,并对Class文件中的数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型的过程。在加载阶段,java虚拟机需要完成以下3件事:a.通过一个类的全限定名来获取定义此类的二进制字节流。b.将定义类的二进制字节流所代表的静态存储结构转换为方法区的运行时数据结构。c.在java堆中生成一个代表该类的java.l...

2015-07-28 08:49:00 102

JVM中java类的加载时机

Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的加载机制。类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括了:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用...

2015-07-28 08:47:00 227

Linux Out-Of-Memory(OOM) Killer分析

LinuxOut-of-Memory(OOM)KillerLinux有一个特性:OOM Killer,一个保护机制,用于避免在内存不足的时候不至于出现严重问题,把一些无关的进程优先杀掉,即在内存严重不足时,系统为了继续运转,内核会挑选一个进程,将其杀掉,以释放内存,缓解内存不足情况,不过这种保护是有限的,不能完全的保护进程的运行。在很多情况下,经常会看到还有剩余内存时,oom-kil...

2015-07-27 08:53:00 143

The return type is incompatible with JspSourceDependent.getDependants():JasperException问题分析与解决方法...

Linux下基于JSP的报表集成到项目中后,显示不出来,查看tomcat的日志,有如下报错信息:The return type is incompatible with JspSourceDependent.getDependants()Stacktrace:] with root causeorg.apache.jasper.JasperException: Unable to co...

2015-07-27 08:52:00 433

[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket错误解决方法总结

今天做一个特殊的业务处理,用JDBC连接SQLServer数据库加载驱动的时候,报如下错误:java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket. at com.microsoft.jdbc.base.BaseExceptions.createException(...

2015-07-27 08:50:00 366

为什么不能用memcached存储Session?

Memcached创建者Dormando很早就写过两篇文章[1][2],告诫开发人员不要用memcached存储Session。他在第一篇文章中给出的理由大致是说,如果用memcached存储Session,那么当memcached集群发生故障(比如内存溢出)或者维护(比如升级、增加或减少服务器)时,用户会无法登录,或者被踢掉线。而在第二篇文章中,他则指出,memcached的回收机制可能会导致用...

2015-07-27 08:49:00 100

深入理解Memcached原理

1.为什么要使用memcache由于网站的高并发读写需求,传统的关系型数据库开始出现瓶颈,例如:1)对数据库的高并发读写:关系型数据库本身就是个庞然大物,处理过程非常耗时(如解析SQL语句,事务处理等)。如果对关系型数据库进行高并发读写(每秒上万次的访问),那么它是无法承受的。2)对海量数据的处理:对于大型的SNS网站,每天有上千万次的数据产生(如twitter, 新浪微博)。...

2015-07-24 08:59:00 108

空空如也

空空如也

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

TA关注的人

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