一.基础概念 java的异常结构图 从图中可知 Throwable是所有异常的根,java.lang.Throwable Error是错误,java.lang.Error Exception是异常,java.lang.Exception. 1. Error:表示由JVM所侦测到的无法预期的错误,由于这是属于JVM层次的严重错误 ,导致JVM无法继续执行,因此,这是不可捕捉到的,无法采取任何恢复的操作,顶多只能显示错误信息. Error类体系描述了Java运行系统中的内部错误以及资源耗尽的情形.应…
http://www.techferry.com/articles/spring-annotations.html http://www.oschina.net/question/2367675_236396…
jvm: jdbc statement: JDBC statement中的PReparedStatement的占位符对应着即将与之对应当值,并且一个占位符只能对应一个值,如果能对应多个就会引起混淆.sql语句是确定的,那么一个占位符必定只能对应一个值. PreparedStatement是预编译的,使用PreparedStatement有几个好处 : 在执行可变参数的一条SQL时,PreparedStatement比Statement的效率高,因为DBMS预编译一条SQL当然会比多次编译一条SQ…
知识点1: 判断语句中遇到NaN即为 False 只需要注意遇到False即为False即可 使用join(),toString()皆可以将数组转化为字符串 二者的相同点在于都可以转化数组为字符串 二者的不同点在于join()可以使用不同的分隔符号 而toString()则只有默认的逗号作为分隔符 若是要判断一个值经过N次 ++ / --之后的取值,只需要数运算的次数并根据运算符号进行加减即可. parserInt(null)--> NaN number(null):0 定义函数的三种写法: f…
目录 1-script延迟脚本defer及异步脚本async,区别及应用场景 2-未声明的变量,未初始化变量 3-Number parseInt 字符串转数值 ,进制转换 4-undefined && null 区别 5-操作符 6-Label语句 7-with语句 8-垃圾回收机制简述 避免内存泄漏 9-函数内部属性 arguments 10-严格模式 1-script延迟脚本defer及异步脚本async,区别及应用场景 defer和async在读取下载时是一样的,相对于html解析来…
Java基础查漏补缺(2) apache和spring都提供了BeanUtils的深度拷贝工具包 +=具有隐形的强制转换 object类的equals()方法容易抛出空指针异常 String a=null; /*使用a.equals(b)抛出异常 优化方法1,若b为常量,即a.equals("test") 此时调用"test".equals(a)可避免空指针错误 优化方法2,使用Objects工具类:java.util.Objects 调用Objects.equal…
Java查漏补缺(3) 继承·抽象类·接口·静态·权限 相关 this与super关键字 this的作用: 调用成员变量(可以用来区分局部变量和成员变量) 调用本类其他成员方法 调用构造方法(需要在方法第一行) 举个栗子: public class Father { String name; public Father() { System.out.println("父类无参构造"); } } public class Son extends Father{ String name;…
前言:在前几篇查漏补缺中,其实我们已经涉及到bean生命周期了,本篇内容进行详细分析. 首先看bean实例化过程: 分析: bean实例化开始后 注入对象属性后(前面IOC初始化十几篇文章). 检查激活Aware接口. 执行BeanPostProcessor前置处理 实例化bean,这里会检查InitializingBean和init-method方法. 执行BeanPostProcessor后置处理 注册销毁bean的回调方法(并不是必须). 使用bean. 检查DisposableBean和…
Java基础查漏补缺 String str2 = "hello"; String str3 = "hello"; System.out.println(str3==str2);//true Java运行时会维护一个String Pool(String池).String池用来存放运行时中产生的各种字符串,并且池中的字符串的内容不重复.而一般对象不存在这个缓冲池,并且创建的对象仅仅存在于方法的堆栈区. break需要在switch和loop内: (虽然没有这么做过--)…
参考文章 spring事物配置,声明式事务管理和基于@Transactional注解的使用 尚硅谷 佟刚 Spring视频教程PPT Spring支持编程式事务管理和声明式事务管理两种方式 编程式事务管理是指在代码里通过Spring API手动控制事务的提交和回滚. 声明式事务管理是建立在AOP之上的.其本质是对方法前后进行拦截,然后在目标方法开始之前创建或加入一个事务,在执行完目标方法之后根据执行情况提交或回滚事务.声明式事务最大的优点就是不需要通过编程的方式管理事务,这样就不需要在业务逻辑代…