自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Java内部类的使用小结(转)

内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。*内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部顶级类即类名和文件名相同的只能使用public和default)。 注意:内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。对于一个名为outer的外部类和其内部定义的名为inn

2017-04-25 14:03:12 321

原创 Class<T>和Class<?>

Class在实例化的时候,T要替换成具体类Class它是个通配泛型,?可以代表任何类型再比如说,用Class[]时,数组里面的元素可以是任一的。Class[] clazzs = {PreferenceActivityTest.class, ExpandableListActivityTest.class};

2017-03-20 17:10:43 562

转载 数据库事务

本文系转载,原文地址:http://singo107.iteye.com/blog/1175084数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。√: 可能出现    ×: 不会出现

2017-03-17 10:14:17 195

转载 Servlet 3.0 新特性概述

Servlet 3.0 新特性概述Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布。该版本在前一版本(Servlet 2.5)的基础上提供了若干新特性用于简化 Web 应用的开发和部署。其中有几项特性的引入让开发者感到非常兴奋,同时也获得了 Java 社区的一片赞誉之声:异步处理支持:有了该特性,Servlet 线程不再需

2017-03-09 12:06:24 196

转载 3)抽象工厂模式

本文继续介绍23种设计模式系列之抽象工厂模式。前面已经介绍过简单工厂模式和工厂方法模式,这里继续介绍第三种工厂模式-抽象工厂模式,还是以汽车的制造为例。例子背景:随着客户的要求越来越高,宝马车需要不同配置的空调和发动机等配件。于是这个工厂开始生产空调和发动机,用来组装汽车。这时候工厂有两个系列的产品:空调和发动机。宝马320系列配置A型号空调和A型号发动机,宝马230系列配置B

2017-03-08 17:19:52 186

转载 1)简单工厂模式(Simple Factory) 2)工厂方法模式(Factory Method)

在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的。但是在一些情况下, new操作符直接生成对象会带来一些问题。举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的对象之前必须先生成一些辅助功能的对象。 在这些情况,新对象的建立就是一个 “过程”,不仅是一个操作,像一部

2017-03-08 17:18:39 190

转载 包装模式

《设计模式》一书对Decorator是这样描述的: 动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式比生成子类更为灵活。也就是说:动态地给对象添加一些额外的功能。它的工作原理是:创建一个始于Decorator对象(负责新功能的对象)终止于原对象的一个对象的“链”。例如,我们要为超市的收银台设计一个打印票据的程序,有的需要打印票据的头信息,有的需要打印票据的页脚信息

2017-03-08 17:06:19 213

转载 volatile

volatile简介java语言提供了一种稍弱的内存同步机制,即volatile变量。用来确保将变量的更新操作通知到其它线程,保证了新值能立即同步到主内存,以及每次使用前立即从内存刷新。当变量声明为volatile类型后,编译器与运行时都会注意到这个变量是共享的。volatile变量对所有线程可见,对volatile变量所有的写操作都能立即反应到其它的线程中,但是volatile并

2017-03-08 16:45:37 502

转载 log4j与commons-logging,slf4j的关系

log4j与commons-logging,slf4j的关系前面有一篇日志中简单的介绍了 log4j,同时也介绍了它与commons-logging的关系,但是突然冒出来一个slf4j,并且slf4j有取代commons-logging的趋势,所以,我们可以推知slf4j与commons-logging的作用应该相差不大的。 好,下面开始先讲讲slf4j。1.slf4j 他只提

2017-03-08 11:59:04 192

转载 slf4j原理

OK,现在我们来研究slf4j的源码。前面我转载了一篇上善若水的博客,其实里面已经写的很详细了。没看过slf4j的源码之前我只是大致的了解了slf的执行,看过源码以后不得不惊叹大师的设计,所以这里自己也认真的来整理一遍。slf4j源码目录结构首先,我们从githud上下载slf4j的源码到本地,这个源码用maven管理的,是一个多项目的框架,原来的目录结构如下: ok,

2017-03-08 11:52:29 295

转载 SLF4J

每一个Java程序员都知道日志对于任何一个Java应用程序,尤其是服务端程序是至关重要的,而很多程序员也已经熟悉各种不同的日志库如java.util.logging、Apache log4j、logback。但如果你还不知道SLF4J(Simple logging facade for Java)的话,那么是时候去在你项目中学习使用SLF4J了。在这篇文章中,我们将学习为什么使用SLF4J比l

2017-03-08 10:13:16 171

转载 ClassLoader

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

2017-01-10 16:20:25 155

转载 containsKey()方法

Map可以出现在k与v的映射中,v为null的情况Map集合允许值对象为null,并且没有个数限制,所以当get()方法的返回值为null时,可能有两种情况,一种是在集合中没有该键对象,另一种是该键对象没有映射任何值对象,即值对象为null。因此,在Map集合中不应该利用get()方法来判断是否存在某个键,而应该利用containsKey()方法来判断[java] 

2016-12-16 09:36:54 279

转载 Java中的泛型方法

泛型是什么意思在这就不多说了,而Java中泛型类的定义也比较简单,例如:public class Test{}。这样就定义了一个泛型类Test,在实例化该类时,必须指明泛型T的具体类型,例如:Test t = new Test();,指明泛型T的类型为Object。       但是Java中的泛型方法就比较复杂了。       泛型类,是在实例化类的时候指明泛型的具体类型;泛型方

2016-12-14 17:21:47 169

转载 insertable = false, updatable = false

当使用JPA配置实体时,如果有两个属性(一个是一般属性,一个是多对一的属性)映射到数据库的同一列,就会报错。这时,在多对一的@JoinColumn注解中添加insertable = false, updatable = false就能解决。例如:[java] view plain copy/**  * 用户类  */  @En

2016-12-08 14:26:08 1329

转载 Java 十六进制字符串 HexString

Java 十六进制字符串 HexStringhttp://my.oschina.net/xinxingegeya/blog/287476byte[]和十六进制字符串相互转换Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示。所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的16进制字符H和

2016-12-02 11:39:37 1687

转载 JAVA方法中的参数用final来修饰的原因

JAVA方法中的参数用final来修饰的原因 很多人都说在JAVA中用final来修饰方法参数的原因是防止方法参数在调用时被篡改,其实也就是这个原因,但理解起来可能会有歧义,有的人认为是调用语句的地方的变量的实际值不会被修改,另一种理解就是仅在调用方法内部不能被修改。实际上第一种理解是有错误的,对于基本类型来说在调用的地方,用不用final来修饰都是一样的效果,如下面的代码

2016-12-02 11:36:31 189

转载 json 多了个pre

问题:  当后台获取到前台传来的文件时(例如上传功能, 导入功能), 返回类型为application/json, 这个时候响应到前端的JSON格式的数据格式可能是:{"JsonKey":"JsonValue"}这个是不同浏览器对返回数据处理的问题。解决方法:    1. 在前端解决[javascript] view plain copy 在CODE上查

2016-12-02 11:34:56 330

转载 URL#

一个显著变化,就是URL加入了"#!"符号。比如,改版前的用户主页网址为  http://twitter.com/username改版后,就变成了  http://twitter.com/#!/username在我印象中,这是主流网站第一次将"#"大规模用于直接与用户交互的关键URL中。这表明井号(Hash)的作用正在被重新认识。本文根据HttpWa

2016-11-11 10:27:11 262

转载 集合根据条件过滤元素

在一个项目里面有这么一个技术需求: 1.集合中元素个数,10M 2.根据上限和下限从一个Set中过滤出满足要求的元素集合. 实际这个是个很典型的技术要求, 之前的项目也遇见过,但是因为当时的类库不多, 都是直接手写实现的. 方式基本等同于第一个方式. 在这个过程中, 我写了四个方式, 基本记录到下面. 第一个方式:对Set进行迭代器遍历, 判断每个元素是否都在上限和下限

2016-11-09 09:43:18 875

转载 400错误 和FormData ajax 上传

您的Web服务器认为客户端发送的数据流 (例如您的浏览器或我们的 CheckUpDown 机器人 ) 是 '畸形的',即没有完全遵守 HTTP 协议。 因此您的 Web 服务器无法理解和处理该请求。该错误几乎总是意味着客户端系统以及 / 或者您的Web服务器编程失败。重点查看客服端的 请求是否合理,(fromdata写法不正确可能导致400)

2016-10-11 10:38:28 3550

转载 freemarker怎么处理EntityNotFoundException

解决办法:  1. 检查为什么子表中没有主表中ID对应的记录  2. 如果子表中没有主表ID对应的记录也可以正常加载数据,那么需要在主表字段上加一个@NotFound Annotation。示例如下:  @OneToOne(optional=false) @JoinColumn(name="business_id") @NotFound(action=NotFoundActi

2016-09-27 11:22:30 599

转载 java异常

java运行时异常是可能在java虚拟机正常工作时抛出的异常。java提供了两种异常机制。一种是运行时异常(RuntimeExepction),一种是检查式异常(checked execption)。检查式异常:我们经常遇到的IO异常及sql异常就属于检查式异常。对于这种异常,java编译器要求我们必须对出现的这些异常进行catch 所以 面对这种异常不管我们是否愿意,只能自己去写

2016-09-22 10:10:33 244

原创 实践mysql 的隔离级别

只测试了两个 Serializable(可串行化)和 Repeatable Read(可重读)1.Serializable当事务运行到sql 语句。sql的相关的表会自动加上表级锁,这时不能向表插入,删除,更新数据,但可以查询!2.Repeatable Read  当事务运行到更新删除添加sql 语句 除select 语句外。数据库才会为 sql 相关的

2016-09-20 17:58:36 173

原创 实践mysql 的排他锁和共享锁

当beginselect * from xx_order where id =1 for UPDATE 没COMMIT能向xx_order 表插入数据,不能更改id 为1 的数据,其他可以,说明是行级锁当beginselect * from xx_order for UPDATE 没COMMIT不能向xx_order 表插入数据,以及更改

2016-09-20 16:12:27 206

转载 事务级别

1. 脏读 :脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。2. 不可重复读 :是指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两次读数据之间,由于第二个事务的修改,那么第一个事务两次读到的的数据可能是不一样的。这样就发生了在一个事务内两次

2016-09-20 15:17:36 249

转载 共享锁【S锁】 排他锁【X锁】

共享锁【S锁】又称读锁,若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。这保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。排他锁【X锁】又称写锁。若事务T对数据对象A加上X锁,事务T可以读A也可以修改A,其他事务不能再对A加任何锁,直到T释放A上的锁。这保证了其他事务在T释放A上的锁之前不

2016-09-20 14:26:59 405

转载 BeanUtils.getProperty (EXCEL)

BeanUtils.getProperty1、取得实体的复合实体的属性如Ticket实体有属性lotteryType,但是lotteryType是LotteryType实体类型,LotteryType有属性name、value通过BeanUtils.getProperty(ticket,"lotteryType.name");可以取得对应valu

2016-09-01 10:49:54 593

空空如也

空空如也

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

TA关注的人

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