打印完整的异常站信息 ByteArrayOutputStream baos=new BateArrayOutputStream(); e.printStackTrace(new PrintStream(baos)); String exception=baos.toString(); logger.error(exception); Error: 一般为底层的不可恢复的类; Exception:
json解析包(GSON谷歌、fastJson阿里、jacksonSpring内置) 移动端(安卓、IOS)通讯方式采用http协议+JSON格式 走restful风格。 很多互联网项目都采用Http协议+JSON xml比较重WebService服务 什么是JSON JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,相比于xml这种数据交换格式来说,因为
什么是Java反射 正在运行,动态获取这个类的所有信息 反射机制的作用 1,反编译:.class-->.java 2.通过反射机制访问java对象的属性,方法,构造方法等; 反射机制的应用场景 Jdbc 加载驱动----- Spring ioc 框架 反射创建api 方法名称 作用 getDeclaredMethods [] 获取该类的所有方法 getReturnType() 获取该类的返回
什么是网络模型 网络编程的本质是两个设备之间的数据交换,当然,在计算机网络中,设备主要指计算机。数据传递本身没有多大的难度,不就是把一个设备中的数据发送给两外一个设备,然后接受另外一个设备反馈的数据。 现在的网络编程基本上都是基于请求/响应方式的,也就是一个设备发送请求数据给另外一个,然后接收另一个设备的反馈。 在网络编程中,发起连接程序,也就是发送第一次请求的程序,被称作客户端(Clie
线程池 什么是线程池 Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序 都可以使用线程池。在开发过程中,合理地使用线程池能够带来3个好处。 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。 第三:提高线程的可管理性。线程是稀缺资源,如果无限制地创建,不仅会消耗系统资
什么是多线程之间通讯? 多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的动作不同。 多线程之间通讯需求 需求:第一个线程写入(input)用户,另一个线程取读取(out)用户.实现读一个,写一个操作。 共享资源源实体类 class Res { public String userSex; public String userName; } 输入线程资源 class IntTh
什么是定时任务? 指定时间去执行任务 Java实现定时任务方式 Thread public class Demo01 { static long count = 0; public static void main(String[] args) { Runnable runnable = new Runnable() { @Override public void run()
TimeUnit 表示在给定的粒度单位的持续时间,并提供跨单位,转换,并在这些单位执行时间和延迟操作的实用程序方法。 常用API: import java.util.concurrent.TimeUnit; 枚举成员: DAYS 时间单位代表二十四小时 HOURS 时间单位代表六十分钟 MICROSECONDS 时间单位代表千分之一以毫秒为单位 MILLISECONDS 代表千分之一秒的时间单位
Lombok插件: Lombok项目是一个Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来消除Java类中的大量样板代码。仅五个字符(@Data)就可以替换数百行代码从而产生干净,简洁且易于维护的Java类。 常用注解 @Setter :注解在类或字段,注解在类时为所有字段生成setter方法,注解在字段上时只为该字段生成setter方法。 @Getter :使用
UrlEnCode与UrlDeCode URLDecoder.decode(xxxxx, "utf-8") //传输时编码 URLDecoder.decode(xxxxx,"utf-8");//获取进行解码 有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。编码的格式为:%加字符的ASCII码,即一个百分号%,
JDK版本: JDK5: 自动拆装箱 Foreach 静态导入 可变参数 Var args 枚举 格式化输出 泛型 ProcessBuilder 内省 线程并发库(JUC) 监控和管理虚拟机 元数据 JDK7: 二进制变量的表示,支持将整数类型用二进制来表示 Switch语句支持String类型。 Try-with-resource语句 Catch支持多个异常 数字类型的下划线表示 更友好的表
(目录) Unsafe: 改类被标识为final,是并发包中的底层,可直接绕过jvm实现对内存的操作,提高程序运行效率。 而改类只能通过反射进行获取,对外使用的getUnsafe()方法只能通过Boot classLoad加载,通过Application classLoad加载则直接报错。 Field field=Unsafe.class.getDeclaredField("theU
(目录) 泛型 泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。Generic有“类的,属性的”之意,在Java中代表泛型。泛型作为一种安全机制而产生。 为何需要泛型? 我们知道集合(Collection、Map之类的容器)是用来存储任意对象(Object)的一系列“容器类或者接口”,注意这里的“任意对象”,就是指我们可以在这
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号