
java
JAVA528416037
这个作者很懒,什么都没留下…
展开
-
谈谈String
String类创建一个对象后是不可变的,就是说每设置一个值就创建一个对象;但是String a ="hello";String b= "hello";a==b返回true 多次重复的常量,java 编译的程序只创建一个String c = new String("hello");String d = new String("hello");原创 2015-06-29 14:10:57 · 606 阅读 · 0 评论 -
将文件存储到数据库(以二进制流的形式)
Hibernate方法HibernateUtils.javapackage yang.fang.hibernate;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;/** * hibernate工具类 * * @原创 2015-08-27 10:23:34 · 6549 阅读 · 0 评论 -
java中堆和栈的区别
Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较转载 2015-09-14 13:03:34 · 459 阅读 · 0 评论 -
java中init()和clinit()方法的区别
:在jvm第一次加载class文件时调用,包括静态变量初始化语句和静态块的执行:在实例创建出来的时候调用,包括调用new操作符;调用Class或java.lang.reflect.Constructor对象的newInstance()方法;调用任何现有对象的clone()方法;通过java.io.ObjectInputStream类的getObject()方法反序列化。(1)(原创 2015-09-15 10:18:03 · 28607 阅读 · 2 评论 -
线程池
线程池的引入 之前我们使用多线程都是用的Thread类中的start()来创建启动一个线程,但是在实际应用中,每次请求都创建一个新线程,开销是相当大的。服务器在创建和销毁线程上所花费的时间和消耗在系统资源都相当大,甚至可能要比在处理实际应用请求的时间和资源要多的多,除了创建和销毁线程的开销,活动的线程也需要消耗系统资源。如果在一个虚拟机中创建太多的线程,可能会使系统由于过度消耗内原创 2017-02-23 10:14:36 · 365 阅读 · 0 评论 -
SSM系统整合过程----聊聊架构那些事儿(第一谈)
传统架构采用单机单应用集成,商品、订单等所有业务放在一起,模块耦合度很高,所有系统要柔和在一起,开发和维护难度都很大,最主要的是系统扩展性差。因此我们将不同的功能模块拆分成多个独立的工程,如果某个点压力过大,就可以单独为其增加配置。原创 2017-11-13 09:01:54 · 706 阅读 · 0 评论 -
ArrayList源码分析(fail-fast机制和扩容)
扩容机制,fail-fast机制,构造方法,Arrays.copyOf()和System.arraycopy()原创 2017-11-03 19:09:35 · 519 阅读 · 0 评论 -
SSM系统整个过程----聊聊架构那些事儿(第二谈)
CDN引入 构建项目的大小一般取决于我们思考的高度,类似淘宝京东这样的大型电商网站,不是双十一暴涨的流量,就平时人们访问,就需要加载很多图片,尤其是人们在移动端使用时,良好的体验是购物的前提。那么怎么样才能让位于海南岛的网名和位于黑龙江的网民都能快速的查看到自己所需要的商品呢? 我们知道,一般来说,图片比文本消耗更多的流量,尤其是现在,智能手机不断进步,人民原创 2017-11-17 09:08:07 · 479 阅读 · 0 评论 -
HttpClient的使用----聊聊架构那些事儿(第三谈)
框架之所以是框架,是因为封装了很多基础操作。而今天说的是服务端和客户端的通信,按照一般的想法都是使用webservice,如cfx。好处是减少了接口信息的解析,让我们更关注于实现功能的本身。而使用webservice的过程,我们知道,需要一系列的jar包和配置文件,可谓是相当繁琐,因此,今天我们专注于HttpClient的使用方式。原创 2017-11-27 08:41:53 · 501 阅读 · 0 评论 -
前台参数使用Ajax请求时将参数带在URL后面需要两次encodeURI
为什么网上会有人提出在客户端对字符串重复编码两次呢. 如果因为项目需要,不能指定容器使用何种编码规则来解码提交的参数, 比如:需要接收来自不同页面,不同地址编码的参数内容时。 (又或者是开发人员被这有点复杂的东东搞得晕头转向,不懂得如何正确的去做好这接收参数的工作) 这个时候,在客户端对参数进行二次编码,可以有效的避开“提交多字节字符”的这个棘手问题。 因为第一次编码,转载 2015-08-23 09:56:29 · 4663 阅读 · 0 评论 -
BigDecimal简单计算器
java.math.BigDecimal。BigDecimal一共有4个够造方法,让我先来看看其中的两种用法:第一种:BigDecimal(double val)Translates a double into a BigDecimal.第二种:BigDecimal(String val)Translates the String repre sentation of a转载 2015-07-21 15:27:34 · 886 阅读 · 0 评论 -
编译时异常和运行时异常的区别
最简单的说法:javac出来的异常就是编译时异常,就是说把源代码编译成字节码(class)文件时报的异常,一般如果用Eclispe,你敲完代码保存的时候就是编译的时候。java出来的异常就是运行时异常Java异常可分为3种: (1)编译时异常:Java.lang.Exception (2)运行期异常:Java.lang.RuntimeExceptio原创 2015-07-01 09:40:34 · 10667 阅读 · 0 评论 -
将json字符串转化为Map对象
public static Map json2Map(String json) { Map map = new HashMap(); JSONObject jsonMap = JSONObject.fromObject(json); Iterator it = jsonMap.keys(); while (it.hasNext()) { String key = String原创 2015-07-09 19:35:57 · 674 阅读 · 0 评论 -
渠道系统和 OA系统待办事项接口
OA待办、已办、以及通过ltpatoken查找用户拼音接口接口采用http get方式,将需要的参数传入 Content-Type:application/json;charset=UTF-8 (getMethod.addRequestHeader("Content-type","application/json; charset=utf-8");)1、待办、已办例子原创 2015-07-09 10:29:24 · 4365 阅读 · 0 评论 -
java 内存分配 常量池
在class文件中,“常量池”是最复杂也最值得关注的内容。 Java是一种动态连接的语言,常量池的作用非常重要,常量池中除了包含代码中所定义的各种基本类型(如int、long等等)和对象型(如String及数组)的常量值还,还包含一些以文本形式出现的符号引用,比如: 类和接口的全限定名; 字段的名称和描述符; 方法和名称和描述符。 在C语言转载 2015-07-05 19:22:18 · 671 阅读 · 0 评论 -
java中为什么要使用接口?
接口的作用最主要的作用我认为是解决java不能多继承的问题。1.接口可用来实现多重继承,java中多重继承,定义类时,只可有一个父类。但是每个类可以实现多个接口,以这种方式来实现多重继承。2.接口定义了一组方法,这些方法可以供给其它类来实现。而类在实现接口的方法时,却可以有不同的方式,每个类实现同一个接口中同一个方法的代码可以不相同。顺便这里说说abstract抽象类:原创 2015-07-05 18:54:08 · 2545 阅读 · 0 评论 -
hashCode()和equals()
1. 首先equals()和hashcode()这两个方法都是从object类中继承过来的。 equals()方法在object类中定义如下: public boolean equals(Object obj) { return (this == obj); } 很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们必需清楚,当String 、Math、转载 2015-07-05 19:09:11 · 418 阅读 · 0 评论 -
Java中的代码块系列1——静态代码块和构造代码块的调用机制
Java中有代码块分为4种:普通代码块、构造断码块、静态代码快、同步代码块。普通代码块指的就是一般方法中的花括号的代码段。构造代码块就是在类中,不属于任何方法的代码段(当然是在花括号内)。静态代码块就是在类中,不属于任何方法的代码段,并且“{”的前面有static。同步代码块用在线程间。package JLearner.codeblock; publ转载 2015-07-13 14:50:25 · 442 阅读 · 0 评论 -
HashMap与ConcurrentHashMap的区别
从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心。在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从此Map也有安全的了。ConcurrentHashMap具体是怎么实现线程安全的呢,肯定不可能是每个方法加synchronized,那样就变成了HashTable转载 2015-07-17 10:48:48 · 444 阅读 · 0 评论 -
Java知识点总结
1. Java基础(1) 常用集合的源码实现,重点Map; a. HashMap,HashTable,ConcurrentHashMap以及LinkedHashMap对比(实现LRU); b. Map的存储实现红黑树及对应JDK版本; c. ConcurrentModificationException(fast-fail机制);(2) 多线程,重点是线...原创 2018-10-15 08:29:47 · 289 阅读 · 0 评论