java
文章平均质量分 61
menghuanzhiming
这个作者很懒,什么都没留下…
展开
-
multipart/form-data和application/x-www-form-urlencoded的区别
FORM元素的enctype属性指定了表单数据向服务器提交时所采用的编码类型,默认的缺省值是“application/x-www-form-urlencoded”。然而,在向服务器发送大量的文本、包含非ASCII字符的文本或二进制数据时这种编码方式效率很低。 在文件上载时,所使用的编码类型应当是“multipart/form-data”,它既可以发送文本数据,也支持二进制数据上载。Br...原创 2020-04-16 09:38:18 · 1291 阅读 · 0 评论 -
Redis实战——Redis的pub/Sub(订阅与发布)在java中的实现(未完成)
参考博客:Redis实战——Redis的pub/Sub(订阅与发布)在java中的实现:https://blog.csdn.net/canot/article/details/51938955原创 2020-04-14 16:43:37 · 747 阅读 · 0 评论 -
Java多线程--创建线程的四种方式
参考博客:Java创建线程的四种方式:https://blog.csdn.net/weixin_41891854/article/details/81265772java创建线程的三种方式及其对比:https://www.cnblogs.com/songshu120/p/7966314.html1、继承Thread类创建线程类(1)定义Thread类的子类,并重写该类的run方法,该r...原创 2020-04-03 17:22:17 · 941 阅读 · 0 评论 -
java多线程并发原子类AtomicInteger深入理解(未完全理解)
参考博客:AtomicInteger深入理解:https://www.jianshu.com/p/4ed887664b13详解java并发原子类AtomicInteger(基于jdk1.8源码分析):https://baijiahao.baidu.com/s?id=1647621616629561468&wfr=spider&for=pc...原创 2020-03-31 08:11:39 · 1198 阅读 · 1 评论 -
Java多线程实现生产消费模型的5种方式
前言1.使用wait()和notify()实现生产者和消费者问题是线程模型中的经典问题:生产者和消费者在同一时间段内共用同一个存储空间,生产者往存储空间中添加产品,消费者从存储空间中取走产品,当存储空间为空时,消费者阻塞,当存储空间满时,生产者阻塞。以下这些解法,其实本质上都是实现了一个阻塞队列。为空,则消费者阻塞,满了,则生产者阻塞。1.使用wait()和notify()实现...原创 2020-03-30 22:18:23 · 1558 阅读 · 1 评论 -
java多线程的wait(), notify(), notifyAll()的用法
参考博客:java wait()方法用法详解:https://www.jianshu.com/p/def7f016dd5e你真的懂wait、notify和notifyAll吗:https://www.jianshu.com/p/25e243850bd2?appinstall=0诡异的java.lang.IllegalMonitorStateException:https://blog.cs...原创 2020-03-28 12:30:11 · 1503 阅读 · 0 评论 -
多线程高级篇-Lock锁实现生产者-消费者模型
参考博客:线程高级篇-Lock锁实现生产者-消费者模型:https://www.cnblogs.com/binghuaZhang/p/11119648.html原创 2020-03-26 21:24:24 · 1362 阅读 · 1 评论 -
Java多线程--Lock实现原理(底层实现)(未完全理解)
参考博客:Java锁–Lock实现原理(底层实现):https://blog.csdn.net/u011109589/article/details/80242931原创 2020-03-26 21:12:10 · 1140 阅读 · 0 评论 -
Java并发编程(多线程):Lock(未完全理解)
参考博客:Java并发编程:Lock:https://www.cnblogs.com/dolphin0520/p/3923167.html原创 2020-03-26 21:09:05 · 824 阅读 · 0 评论 -
hashCode和equals的区别及重写
参考博客:1.hashCode和equals的区别https://www.cnblogs.com/justdojava/p/11271438.html**有面试官会问:**你重写过 hashcode 和 equals 么,为什么重写equals时必须重写hashCode方法?equals和hashCode都是Object对象中的非final方法,它们设计的目的就是被用来覆盖(overr...原创 2020-03-13 12:12:41 · 1061 阅读 · 0 评论 -
servlet版本与tomcat版本对应关系,各版本web.xml头信息写法
Apache官方对各版本的解释:http://tomcat.apache.org/whichversion.htmlServlet SpecJSP SpecEL SpecWebSocket SpecJASPIC SpecApache Tomcat versionActual release revisionSupported Java Versions4.0TB...原创 2019-11-05 14:34:01 · 1742 阅读 · 0 评论 -
EL表达式详解
参考博客:1.EL表达式详解:https://blog.csdn.net/w_linux/article/details/798502232.el表达式小于等于不等于小于等于:https://blog.csdn.net/xujiangdong1992/article/details/78374468...转载 2019-11-05 11:29:18 · 518 阅读 · 0 评论 -
使用 sitemesh/decorator装饰器装饰jsp页面(原理及详细配置)
参考博客:1.使用 sitemesh/decorator装饰器装饰jsp页面(原理及详细配置):https://www.cnblogs.com/zishengY/p/7107306.html2.SiteMesh的使用:https://blog.csdn.net/u011019141/article/details/52444654...转载 2019-11-05 11:23:55 · 541 阅读 · 0 评论 -
java浮点数精度损失原理和解决(BigDecimal工具类)
参考博客:1.java浮点数精度损失原理和解决:https://blog.csdn.net/weixin_41888813/article/details/838287512.java中double和float精度丢失问题及解决方法:https://www.cnblogs.com/cblogs/p/double-precision.html3.BigDecimal加减乘除计算:http...原创 2019-11-04 17:36:36 · 583 阅读 · 0 评论 -
数组、链表、堆栈、队列和树
数组、链表、堆栈、队列和树 http://blog.csdn.net/wei78008023/article/details/50735415转载 2018-03-06 13:51:42 · 415 阅读 · 0 评论 -
JAVA常用数据结构及原理分析(面试总结)转载
JAVA常用数据结构及原理分析(面试总结) http://blog.csdn.net/qq_29631809/article/details/72599708转载 2018-03-06 13:40:01 · 1010 阅读 · 0 评论 -
面向对象三大基本特性,五大基本原则(转载)
面向对象三大基本特性,五大基本原则 透切理解面向对象三大基本特性是理解面向对象五大基本原则的基础.三大特性是:封装,继承,多态 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装是面向对象的特征之一,是对象和类概念的主要特性。 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体。在一个对象内部,某...转载 2018-03-06 11:58:59 · 431 阅读 · 0 评论 -
Java 判断操作系统类型(适用于各种操作系统)--转载
最近一段时间写一个授权的程序,需要获取很多信息来保证程序不能随意复制使用,必须经过授权才可以。为了限制用户使用的操作系统,必须有统一的方法来获取才可以。在JAVA中,通过System.getProperty("os.name")来获取,通过参考:http://lopica.sourceforge.net/os.html 来实现各操作系统的判断。针对windows系统,这里不具体判断是那转载 2018-01-09 16:03:41 · 8015 阅读 · 0 评论 -
获取JAVA[WEB]项目相关路径的几种方法(转载)
在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot, 在class文件中,根目录是WebRoot/WEB-INF/classes, 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径(没有测试过)。Jsp、Servlet、java获得路径的方法1.jsp中取得路径: 以工程名为TEST为例: (1转载 2017-10-09 13:50:30 · 375 阅读 · 0 评论 -
java与mysql时间类型对应(转载,未验证)
MySQL(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59:59 timestamp 4bytes xxxx-xx-xx xx:xx:xx 1970-01-01 00:00:01到2038 date 3bytes xxxx-xx-xx 1000-01-01转载 2017-10-17 15:41:57 · 441 阅读 · 0 评论 -
Java位运算原理及使用讲解(转载)
转载:http://blog.csdn.net/goskalrie/article/details/52796360转载 2017-11-02 17:47:55 · 406 阅读 · 0 评论 -
java设计模式之适配器模式
参考地址:http://www.cnblogs.com/java-my-life/archive/2012/04/13/2442795.html转载 2017-09-24 22:56:34 · 316 阅读 · 0 评论 -
读取Java文件到byte数组的三种方式(转载)
package zs;import java.io.BufferedInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOExceptio转载 2017-09-21 09:18:13 · 11338 阅读 · 0 评论 -
Java IO包装流如何关闭?(关闭顺序)
转载1:Java IO流关闭问题的深入研究 转载2:Java IO包装流如何关闭?(关闭顺序)两种分析过程不一样,但是结论相差不大: (个人认为转载1分析的比较透彻)一般情况下是:先打开的后关闭,后打开的先关闭;另一种情况:看依赖关系,如果流a依赖流b,应该先关闭流a,再关闭流b例如处理流a依赖节点流b,应该先关闭处理流a,再关闭节点流b当然完全可以只关闭处理流,不用关闭节点流。处理流关闭的时候转载 2017-09-12 15:35:15 · 8518 阅读 · 1 评论 -
Java创建对象的初始化顺序(转载)
初始化块初始化块通常写在类的构造方法之前,由花括号括起来,通常包含对成员属性进行初始化的语句;初始化块分为instance初始化块和static初始化块,初始化块在构造方法执行之前被执行;static初始化块不能访问非statci成员,也不能调用非static方法,并且只在类加载时执行一次;初始化块通常用于提取多个构造方法中的公共代码。初始化的执行顺序(1)在初次new一个Child类对象时,发现其转载 2017-08-30 16:32:37 · 772 阅读 · 0 评论 -
Java集合---ArrayList的实现原理(转载)
转载:http://www.cnblogs.com/ITtangtang/p/3948555.html#info Java集合—ArrayList的实现原理 目录: 一、 ArrayList概述 二、 ArrayList的实现 1) 私有属性 2) 构造方法 3) 元素存储 4) 元素读取转载 2017-08-30 16:20:01 · 356 阅读 · 0 评论 -
枚举理解
package com.ming.test;/* * 枚举理解: * enum都继承了Enum类,在创建Enum对象时都会调用Enum中默认的构造方法 * protected Enum(String name, int ordinal); * 创建枚举类的两种形式: * MON, TUE, WED, THU, FRI, SAT, SUN;// 默认的构造函数protected Enu原创 2017-06-15 09:29:26 · 333 阅读 · 0 评论 -
AOP的底层实现原理
实现原理: 就是代理机制: * JDK动态代理. * cglib动态代理Spring中实现AOP的底层原理: Spring的AOP的底层采用两种代理机制: * JDK的动态代理: * 只能对实现了接口的类生成代理.CGLIB的动态代理:可以对没有实现接口的类生成代理.(采用的是比较底层的字节码技术,对类生成一个子类对象.)代理的总结: Spring在运行期,生成动态代理对象,不需原创 2017-06-27 13:50:10 · 1579 阅读 · 0 评论 -
获取中文的首字母和全拼工具类
工具类:package com.ming.util;import net.sourceforge.pinyin4j.PinyinHelper;import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;impor转载 2017-06-12 16:31:36 · 769 阅读 · 0 评论 -
java的代理模式(静态和动态代理)
1.静态代理 (1)公共接口package com.ming.proxy;/* * 公共接口 */public interface Kill { String kill(); void say();}(2)委托类package com.ming.proxy;/* * 委托类:我想要杀一个人但是不想亲自动手,委托给别人来做,雇佣杀手,Killer类 */publi原创 2017-06-27 10:48:16 · 406 阅读 · 0 评论 -
深入详细讲解JVM原理(有问题)
package com.ming.memory;import org.junit.Test;/*包装类型的八种基本类型数据: * 整型:byte、int、short、long * 浮点型:float、double * 逻辑:boolean * 文本型:char * 枚举:enum * *//*八种基本类型和String的数据在创建时,无论是通过new还是=创建,都会在方法区内的常量原创 2017-06-09 13:46:38 · 429 阅读 · 0 评论 -
Math.ceil、Math.floor、Math.round用法
Math.ceil、Math.floor、Math.round用法??public static void main(String[] args) {// Math.ceil(double)向上取整 System.out.println(Math.ceil(11.4)); //向上取整12 System.out.println(Math.ceil(-1原创 2017-10-19 09:40:26 · 632 阅读 · 0 评论 -
Java并发编程:volatile关键字解析(转载)
转载:http://www.importnew.com/18126.html转载 2017-10-24 10:25:42 · 450 阅读 · 0 评论 -
java多线程的生命周期及五种基本状态(转载)
Java中线程的生命周期图: Java线程具有五中基本状态: 新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread();就绪状态(Runnable):当调用线程对象的start()方法(t.start();),线程即进入就绪状态。处于就绪状态的线程,只是说明此线程已经做好了准备,随时等待CPU调度执行,并不是说执行了t.start()此线程原创 2017-10-23 16:48:52 · 975 阅读 · 0 评论 -
java如何得到GET和POST请求URL和参数列表(转载)
一 获取URL: getRequestURL()二 获取参数列表:1.getQueryString()只适用于GET,比如客户端发送http://localhost/testServlet?a=b&c=d&e=f,通过request.getQueryString()得到的是a=b&c=d&e=f.2.getParameter() GET和POST都可以使用 但如果是POST请求要根据表单提交数转载 2017-10-12 13:58:05 · 550 阅读 · 0 评论 -
java多线程相关问题(待解决)
1.为什么多线程中标准输入没有等待输入,而是一直在进行循环?? Scanner sc = new Scanner(System.in); sc.hasNext(); sc.next(); 以上两个方法当执行时,有可能发生阻塞,使当前线程处于相当于睡眠状态,当输入数据时会唤醒当前线程2.当线程处于sleep状态时,能否调用join方法进行加塞? 能,j原创 2017-10-19 16:27:24 · 454 阅读 · 0 评论 -
TreeSet和HashSet的问题
1.TreeSet集合中自然排序和自定义比较规则,什么时候需要实现Comparable???? 1)当存储进集合中的对象实现Comparable则可以使用自然排序规则,重写compareTo()方法 public int compareTo() { return 0; } 例如 : public原创 2017-10-19 15:02:38 · 397 阅读 · 0 评论 -
Java抽象类与接口的区别(转载)
转载:http://www.importnew.com/12399.html转载 2017-10-19 14:00:43 · 330 阅读 · 0 评论 -
简单工厂、工厂方法、抽象工厂、策略模式、策略与工厂的区别(转载)
转载:http://lh-kevin.iteye.com/blog/1981574结合简单示例和UML图,讲解工厂模式简单原理。 一、引子 话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰)、Bmw(宝马)、Audi(奥迪)),还雇了司机为他开车。不过,爆发户坐车时总是这样:上Benz车后跟司机说“开奔驰车!”,坐上Bmw后他说“开宝马车!”,坐上 Audi后他说“开奥迪车!”。 你一转载 2017-10-19 10:28:23 · 409 阅读 · 0 评论 -
读取配置文件properties的方法
方法一:通过Class的getResourceAsStream方法和Properties的load方法读取*.properties文件的内容; @Test //读取配置文件 public void readProperties() throws IOException { //通过Class的getResourceAsStream方法获取根目录下hiberna原创 2017-06-22 17:36:27 · 515 阅读 · 0 评论