Spring 对事务控制的支持统一在 TransactionDefinition 类中描述,该类有以下几个重要的接口方法:int getPropagationBehavior():事务的传播行为int getIsolationLevel():事务的隔离级别int getTimeout():事务的过期时间boolean isReadOnly():事务的读写特性。事务的7种传播特性所谓事务传播行为就是多个事务方法相互调用时,事务如何在这些方...
8年前 (2017-04-14)
阅读(3282)
赞一个 (3)
链接直达
@ResponseBody和 @RequestBody 作用 @RequestBody 将 HTTP 请求正文插入方法中,使用适合的 HttpMessageConverter 将请求体写入某个对象。 @ResponseBody 将内容或对象作为 HTTP 响应正文返回,使用 @ResponseBody 将会跳过视图处理部分,而是调用适合 HttpMessageConverter ,将返回值写入输出流。HttpMessageConvert...
8年前 (2017-04-14)
阅读(3481)
赞一个 (0)
链接直达
很多时候,一张图比你说 1000 个字能更有效的说清楚一个问题。我们列举了 8 个关于 Java 语言的图表,或许可以让你对 Java 有着更深入的认识。1、字符串不变性(String Immutability)下面的图表显示执行如下两行代码所发生的事:String s = "abcd";
s = s.concat("ef");2、e...
8年前 (2017-04-14)
阅读(2795)
赞一个 (1)
链接直达
如果Java源代码中有一个很长的数值字面量,开发人员在阅读这段代码时需要很费力地去分辨数字的位数,以知道其所代表的数值大小。在现实生活中,当遇到很长的数字的时候,我们采取的是分段分隔的方式。比如数字500000,我们通常会写成500,000,即每三位数字用逗号分隔。利用这种方式就可以很快知道数值的大小。这种做法的理念被加入到了Java 7中,不过用的不是逗号,而是下划线“_”。在Java 7中,数值字面量,不管是整数还是浮点数,都允许在...
8年前 (2017-04-14)
阅读(3668)
赞一个 (1)
链接直达
Java中的equals方法和hashCode方法是Object中的,所以每个对象都是有这两个方法的,有时候我们需要实现特定需求,可能要重写这两个方法,今天就来介绍一些这两个方法的作用。equals()和hashCode()方法是用来在同一类中做比较用的,尤其是在容器里如set存放同一类对象时用来判断放入的对象是否重复。这里我们首先要明白一个问题: equals()相等的两个对象,hashcode()一定相等,equals()...
8年前 (2017-04-14)
阅读(1906)
赞一个 (1)
链接直达
两个对象值相同(x.equals(y) == true),则一定有相同的hash code;java语言的定义:Hash,一般翻译做“散列”,也有直接音译为"哈希"的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。1)...
8年前 (2017-04-14)
阅读(2086)
赞一个 (1)
链接直达
Java String.intern()方法Java String.intern()方法用法实例教程,返回一个字符串对象的规范表示。一个字符串池初始为null,维持私人的String类.描述java.lang.String.intern() 方法返回一个字符串对象的规范表示。一个字符串池初始为null,维持私人的String类.对于任何两个字符串s和t,s.intern()== t.intern()为true,当且仅如果s.equals...
8年前 (2017-04-14)
阅读(2136)
赞一个 (2)
链接直达
1、OutOfMemory的四种情况1) 永久区溢出 Exception in thread "main" java.lang.OutOfMemoryError: PermGen space 这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域(包括常量池: 静态变量),它和存放Instance的Heap区域不...
8年前 (2017-04-14)
阅读(3034)
赞一个 (0)
链接直达
又遇到一个问题,引以为戒在项目开发中,我在后台java代码中把一个json字符串传递给request对象request.setAttribute("request_params",json字符串); 在form表单中的input文本框进行接收 <input name="request_params" value=" ${request_params}&quo...
8年前 (2017-03-31)
阅读(3843)
赞一个 (2)
链接直达
内部类
内部类是指在一个外部类的内部再定义一个类,是一个编译时的概念,一旦编译成功,内部类与其外部类就会成为完全不同的两类,只是内部类的前面会冠以外部类的类名和$符号,如一个outer类内部定义了一个inner的内部类,那么编译完成后会生成outer.class和outer$inner.class两个类,因此内部类的成员变量与方法可以与外部类相同。
从内部类的定义上来看...
8年前 (2017-03-17)
阅读(2145)
赞一个 (0)
链接直达
为什么需要并发并发其实是一种解耦合的策略,它帮助我们把做什么(目标)和什么时候做(时机)分开。这样做可以明显改进应用程序的吞吐量(获得更多的CPU调度时间)和结构(程序有多个部分在协同工作)。对于并发的误解和正解最常见的对并发编程的误解有以下这些:并发总能改进性能(并发在CPU有很多空闲时间时能明显改进程序的性能,但当线程数量较多的时候,线程间频繁的调度切换反而会让系统的性能下降)编写并发程序无需修改原有的设计(目的与时机的解耦往往会对...
8年前 (2017-03-17)
阅读(2217)
赞一个 (0)
链接直达
什么是重构所谓重构是这样一个过程:在不改变代码外在行为的前提下,对代码作出修改,以改进程序的内部结构。本质上说,重构就是在代码写好之后改进它的设计。重构(名词):对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。重构(动词):使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构。重构的目的是使软件更容易被理解和修改。重构不会改变软件可观察的行为——重构之后软件功能一如既往。而重构技...
8年前 (2017-03-17)
阅读(2341)
赞一个 (0)
链接直达