自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Flyer的后花园

微信公众号 java架构狮 java交流QQ群 606700249

  • 博客(69)
  • 收藏
  • 关注

转载 23种设计模式全解析-- 设计模式看这一篇就够了

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

2016-08-22 11:34:39 8673 6

转载 Java读写txt文件中文乱码问题

问题:在用Java程序进行读写含中文的txt文件时,经常会出现读出或写入的内容会出现乱码。原因其实很简单,就是系统的编码和程序的编码采用了不同的编码格式。通常,假如自己不修改的话,windows自身采用的编码格式是gbk(而gbk和gb2312基本上是一样的编码方式),而IDE中Encode不修改的话,默认是utf-8的编码,这就是为什么会出现乱码的原因。当在OS下手工创建并写入的txt文件(gb...

2016-08-31 16:08:22 7982

转载 单表60亿记录等大数据场景的MySQL优化和运维之道

本文作者:杨尚刚,美图公司数据库高级DBA,负责美图后端数据存储平台建设和架构设计。前新浪高级数据库工程师,负责新浪微博核心数据库架构改造优化,以及数据库相关的服务器存储选型设计。前言MySQL数据库大家应该都很熟悉,而且随着前几年的阿里的去IOE,MySQL逐渐引起更多人的重视。MySQL历史1979年,Monty Widenius写了最初

2016-08-30 18:09:31 955

原创 jquery怎么在header中设置请求信息

jquery是js的类库,js本身不能操作header,因为js是在浏览器加载页面过程中才开始执行的header需要服务器端执行操作如果是ajax,是可以设置header$.ajax({ url: "", data: {}, type: "GET", beforeSend: function(xhr){xhr.setRequestHeader('X-Tes...

2016-08-26 18:38:35 34458

转载 对SQL Server中read committed隔离级别的全新认识 S X锁

关于锁,有很多可以学习的,比如,锁的粒度,锁的模式,锁的兼容性,以及隔离级别等等。但是,具体到运行一个语句时,是怎么去获取到相应的锁的呢,比如,一个select语句,那么需要加S锁,可能是对记录,也可能是对页,也可能是对表,可能通过索引去找到记录,找到记录后,是一次获取所有的锁,还是一部分一部分的获取呢?比如下面实验中,正好是一条记录占用1个数据页,一共查询32768条数据,那么到

2016-08-26 18:27:37 3802

转载 read repeatable&read committed 区别

read repeatable:开启一个事务,读一个数据,而后再次读,这2次读的数据是一致的(行级锁且是锁间隙);read committed:开启一个事务,读一个数据,而后再次读,这2次可能不一样的,因为在这2次读之间可能有其他事务更改这个数据,这也就是读提交,每次读到的数据都是已经提交的(行级锁,不锁间隙)

2016-08-26 18:25:32 1952 2

转载 分布式学习之一:事务

事务处理让我们用最经典的 Use Case:“A帐号向B帐号汇钱”来说明一下,熟悉RDBMS事务的都知道从帐号A到帐号B需要6个操作:从A帐号中把余额读出来;对A帐号做减法操作;把结果写回A帐号中;从B帐号中把余额读出来;对B帐号做加法操作;把结果写回B帐号中;为了数据的一致性,这6件事,要么都成功做完,要么都不成功,而且这个操作的过程中,对A、B帐号的其它访问必需锁死,所

2016-08-26 17:19:08 643

原创 SSH脚手架写法的一个思路及实例

本实例利用 String.format 的方法 实现 变量替换  String str=null;    str=String.format("Hi, %s", "林计钦"); // 格式化字符串    System.out.println(str); // 输出字符串变量str的内容包含读取样例接口(或其实现类),替换里面 %s 修改为需要的内容 然后写入相应目录对应的文

2016-08-26 16:05:58 891

转载 JAVA字符串格式化-String.format()的使用

String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Locale locale,

2016-08-26 15:09:39 600

转载 java读取TXT文件的方法

java读取txt文件内容。可以作如下理解:首先获得一个文件句柄。File file = new File(); file即为文件句柄。两人之间连通电话网络了。接下来可以开始打电话了。通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了。接下来需要解读成乙方可以理解的东西既然你使用了FileInputStrea

2016-08-26 14:55:21 786

转载 java获得当前路径

第一种: File f = new File(this.getClass().getResource("/").getPath()); System.out.println(f); 结果: C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin 获取当前类的所在工程路径; 如果不加“/” 

2016-08-26 13:44:42 537

转载 this web application instance has been stopped already解决办法

重启tomcat的时候出错Illegal access: this web application instance has been stopped already.  Could not load oracle.net.mesg.Message.  The eventual following stack trace is caused by an error thrown for deb...

2016-08-26 11:28:36 14045 1

转载 NoSQL的三大基石(CAP、BASE和最终一致性)

CAP,BASE和最终一致性是NoSQL数据库存在的三大基石。而五分钟法则是内存数据存储了理论依据。这个是一切的源头。 CAP C: Consistency 一致性 A: Availability 可用性(指的是快速获取数据) P: Tolerance of network Partition 分区容忍性(分布式) 10年前,Eric Brewer教授指出了著名的C

2016-08-26 10:41:28 1177

原创 nginx管理上传的文件

如果用户上传的文件 不是很多把上传文件夹路径 加入nginx的静态资源管理可以提高应用程序性能

2016-08-26 10:40:11 499

原创 反射 method的调用 无参和多参数

package test.ClassLoader;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;public class TestClassLoader { public static void main(String a[]) { //测试一个参数的写法...

2016-08-25 17:17:16 15309

转载 Servlet Filter与Spring interceptor的区别和应用

Servlet Filter与Spring interceptor 而且在功能上差不多,都可以针对URL规则来进去处理多个Servlet Filter的执行顺序  顺序就是filter Mapping的配置的先后顺序,filter的执行顺序就考filter mapping在web.xml中的顺序。多个spring interceptor的执行顺序  spri

2016-08-25 15:45:35 572

转载 泛型中? super T和? extends T的区别

经常发现有List、Set的声明,是什么意思呢?表示包括T在内的任何T的父类,表示包括T在内的任何T的子类,下面我们详细分析一下两种通配符具体的区别。extendsList foo3的通配符声明,意味着以下的赋值是合法的:1234567891011//

2016-08-25 14:25:54 409

转载 在服务器端判断request来自Ajax请求(异步)还是传统请求(同步)

在一次做非常复杂的ajax应用时,如果一个会话已经超时,但是此时再通过ajax请求,那么ajax返回的则是一个登陆页面的html,那这下就惨了,页面上而已就乱了,那么,能否在java端,如拦截器里判断客户的的请求是否是ajax请求呢,经过查询,能.    普通请求与ajax请求的报文头不一样,通过如下 Java代码  String requestType

2016-08-25 13:53:21 680

原创 java 载入类的三种方法

载入类的几种方法所有资源都通过ClassLoader载入到JVM里,那么在载入资源时当然可以使用ClassLoader,只是对于不同的资源还可以使用一些别的方式载入,例如对于类可以直接new,对于文件可以直接做IO等。载入类的几种方法假设有类A和类B,A在方法amethod里需要实例化B,可能的方法有3种。对于载入类的情况,用户需要知道B类的完整名字(包括包名,例如"com.rai

2016-08-25 12:01:59 1977

原创 RequestDispatcher 重定向

RequestDispatcher是一个Web资源的包装器,可以用来把当前request传递到该资源,或者把新的资源包括到当前响应中。RequestDispatcher接口中定义了两个方法:include/forwardrequest 转发只做了一次请求 一次响应 ;重定向 redirect 两次请求两次响应一个例子 public class AliUrlFilter imple...

2016-08-25 11:00:49 5688

转载 HttpServletRequestWrapper模拟实现分布式Session

HttpSession的内容都放在一个单独的Map中,模拟远程分布式Session。1.使用HttpServletRequestWrapper创建自定义Request2.使用动态代理包装自定义Request返回的HttpSession对象3.创建过滤器,使用自定义Request替换原有的Request对象。4.在Servlet中得到的HttpSession对象,写入和读取内容都

2016-08-25 09:37:45 488

转载 深入理解Java Proxy机制

动态代理其实就是java.lang.reflect.Proxy类动态的根据您指定的所有接口生成一个class byte,该class会继承Proxy类,并实现所有你指定的接口(您在参数中传入的接口数组);然后再利用您指定的classloader将 class byte加载进系统,最后生成这样一个类的对象,并初始化该对象的一些值,如invocationHandler,以即所有的接口对应的Method

2016-08-25 09:34:16 798

转载 Session的原理

如何区分不同用户——Cookie/Session机制详解会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什

2016-08-24 19:29:38 2890

转载 SpringMVC Controller接口控制器详解 BindException

4.16.2、数据验证1、数据绑定失败:比如需要数字却输入了字母;2、数据不合法:可以认为是业务错误,通过自定义验证器验证,如用户名长度必须在5-20之间,我们却输入了100个字符等;3、错误对象:当我们数据绑定失败或验证失败后,错误信息存放的对象,我们叫错误对象,在Spring Web MVC中Errors是具体的代表者;线程不安全对象;4、错误消息:是硬编码,还

2016-08-24 19:03:33 6761

转载 从 MVC 到前后端分离

本文首先描述 MVC 模式是什么,然后针对 MVC 的不足发表了作者的个人观点,随后引出了基于 REST 架构实现前后端分离的方案,最后使用了 Java 的 Spring 框架搭建了一个简单的 REST 框架。全文从原理到实战,希望对于想了解如何实现前后端分离架构的朋友有所帮助。由于篇幅有限,且个人水平不足,难免会出现一些遗漏或不足之处,恳请大家提出宝贵意见或建议,谢谢!MVC 前后端分离 R

2016-08-24 18:54:04 683

转载 如何设置XShell最大的显示行数

XShell默认的显示行数有点小。如果我们使用pstack查看进程堆栈信息时,由于内容会很多,这样显示的时候就会被截掉一部分内容,显然这给我们在分析堆栈信息时带来不方便。本文介绍如何设置XShell最大的显示行数工具/原料XShellWindows 7方法/步骤选择会

2016-08-24 14:52:41 6041

转载 springMVC中多个拦截器Interceptor的执行顺序

  1.springMVC中拦截器实现这个接口implements HandlerInterceptor第一个拦截器:public class MyInterceptor1 implements HandlerInterceptor{     public void afterCompletion(HttpServletRequest arg0,     HttpServletResp...

2016-08-24 11:02:35 10845

原创 spring xml classpath 路径设置

xml 中classpath:  ehcache.xml 路径在 eg   <bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"> <property name="configLocation" value...

2016-08-23 17:37:15 2909

转载 ehcache整合spring注解方式 (亲测OK)

一、简介  在hibernate中就是用到了ehcache 充当缓存。spring对ehcache也提供了支持,使用也比较简单,只需在spring的配置文件中将ehcache的ehcache.xml文件配置进去即可。在spring中使用ehcache有两种方式,一种是使用spring提供的封装,使用注解的方式配置在某个方法上面,第一次调用该方法的时候,将该方法执行返回的数据缓存,当再次执行

2016-08-23 15:03:04 608

转载 创建模式、结构模式、行为模式的区别

创建模式创建型模式,就是创建对象的模式,抽象了实例化的过程。 它帮助一个系统独立于如何创建、组合和表示它的那些对象。 关注的是对象的创建,创建型模式将创建对象的过程进行了抽象,也可以理解为将创建对象的过程进行了封装,作为客户程序仅仅需要去使用对象,而不再关心创建对象过程中的逻辑结构模式结构型模式是为解决怎样组装现有的类,设计他们的交互方式,从而达到实现一

2016-08-22 16:37:55 5634

转载 适配器模式,装饰模式,代理模式异同

装饰者与适配者模式的区别 1.关于新职责:适配器也可以在转换时增加新的职责,但主要目的不在此。装饰者模式主要是给被装饰者增加新职责的。 2.关于原接口:适配器模式是用新接口来调用原接口,原接口对新系统是不可见或者说不可用的。装饰者模式原封不动的使用原接口,系统对装饰的对象也通过原接口来完成使用。(增加新接口的装饰者模式可以认为是其变种--“半透明”装饰者) 3.关于其包裹的对象:适配器

2016-08-22 14:45:45 3856

转载 装饰者模式

ps :这个模式和直接子类chilidClass 重写父类parentClass的方法 methodA 很像,只不过利用一个装饰类 来修改 childClass 里面methoadA方法 以下转载:实例1 动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。 适用性 1.在不影响其他对象的情况

2016-08-22 12:01:06 338

原创 适配器模式 简单实例

概述  将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。定义一个接口public interface ShuiWa { void tuhuo();//不是强项 }接口的实现类public class ShuiWaImp implements ShuiWa { @Ov

2016-08-20 14:41:38 757

转载 浅谈SOA面向服务化编程架构(dubbo)

dubbo 是阿里系的技术。并非淘宝系的技术啦,淘宝系的分布式服务治理框架式HSF啦,只闻其声,不能见其物。而dubbo是阿里开源的一个SOA服务治理解决方案,dubbo本身集成了监控中心,注册中心,负载集群...等等。代码和整体的框架还是很优雅滴呀! github地址 https://github.com/alibaba/dubbo 文档地址:http://alibaba.githu

2016-08-20 13:20:42 906

原创 建造者模式和抽象工厂的区别

1 建造者模式是把对象的创建分散开来,比如几个函数 比如  interface builderDemo { void bulidHead(); void bulidBody(); void bulidFoot(); } 然后 由具体类实现,实现创建对象的分解  2  抽象工厂 ...

2016-08-20 11:13:18 4270 1

原创 hibernate注解UUID主键生成策略

首先,你要定义你所使用的Generator,如@GenericGenerator(name = "idGenerator", strategy = "uuid")然后才可以使用引用的方式来引用你定义好的Generator,如@GeneratedValue(generator = "idGenerator")  实例如下  @Id @GenericGenerator(...

2016-08-19 18:16:57 6549

转载 mysql重启 日志存放

MySQL安装完成后不象SQL Server默认安装在一个目录,它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要,尤其对于Linux的初学者,因为 Linux本身的目录结构就比较复杂,如果搞不清楚MySQL的安装目录那就无从谈起深入学习。  下面就介绍一下这几个目录。  1、数据库目录  /var/lib/mysql/  2、配置文件 /usr/shar

2016-08-19 18:05:17 3528

转载 MYSQL外键(Foreign Key)的使用

在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束。外键的使用条件:1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前不支持);2.外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显示建立; 3.外键关系的两个表的列必须是数据类型相似,也就是可以相互转换

2016-08-19 11:02:51 573

转载 MySQL外键约束OnDelete和OnUpdate的使用

On Delete和On Update都有Restrict,No Action, Cascade,Set Null属性。现在分别对他们的属性含义做个解释。ON DELETErestrict(约束):当在父表(即外键的来源表)中删除对应记录时,首先检查该记录是否有对应外键,如果有则不允许删除。no action:意思同restrict.即如果存在从数据,不允许删除主数据。

2016-08-19 10:38:50 673

原创 查看linux的端口使用情况

-bash-3.00# netstat -tln netstat -tln 命令是用来查看linux的端口使用情况

2016-08-18 18:14:29 481

空空如也

空空如也

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

TA关注的人

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