Java
newmeet
随着进入这个行业的时间越来越长,也慢慢开始对这个行业,包括一些技术有了自己的应用和理解,希望通过博客记录自己学到的知识,也希望能通过分享一些东西能帮到大家,互相学习。
展开
-
Swagger简介
Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。本文简单介绍了在项目中集成swagger的方法和一些常见问题。如果想深入分析项目源码,了解更多内容,见参考资料。Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务转载 2017-03-14 11:21:13 · 258 阅读 · 0 评论 -
Hashcode的作用。
Hash是散列的意思,就是把任意长度的输入,通过散列算法变换成固定长度的输出,该输出就是散列值。关于散列值,有以下几个关键结论:1、如果散列表中存在和散列原始输入K相等的记录,那么K必定在f(K)的存储位置上2、不同关键字经过散列算法变换后可能得到同一个散列地址,这种现象称为碰撞3、如果两个Hash值不同(前提是同一Hash算法),那么这两个Hash值对应的原始输入必定不同转载 2017-09-08 14:42:51 · 337 阅读 · 0 评论 -
Map、Set、List、Queue、Stack的特点与用法
1. Java集合类基本概念在编程中,常常需要集中存放多个数据。从传统意义上讲,数组是我们的一个很好的选择,前提是我们事先已经明确知道我们将要保存的对象的数量。一旦在数组初始化时指定了这个数组长度,这个数组长度就是不可变的,如果我们需要保存一个可以动态增长的数据(在编译时无法确定具体的数量),java的集合类就是一个很好的设计方案了。集合类主要负责保存、盛装其他数据,因此集合类也被转载 2017-09-11 11:10:35 · 780 阅读 · 0 评论 -
Java并发的基础问题
什么是原子操作?在Java Concurrency API中有哪些原子类(atomic classes)?原子操作是指一个不受其他操作影响的操作任务单元。原子操作是在多线程环境下避免数据不一致必须的手段。int++并不是一个原子操作,所以当一个线程读取它的值并加1时,另外一个线程有可能会读到之前的值,这就会引发错误。为了解决这个问题,必须保证增加操作是原子的,在JDK1转载 2017-09-28 11:18:08 · 230 阅读 · 0 评论 -
使用eclipse创建maven的web项目
1.首先确定你的eclipse上有maven插件(这里不多介绍,可以自己百度在eclipse安装maven的方法)2.然后创建一个maven的工程3.在创建完成后发现index.jsp报错,这是因为项目没有导入servlet包的原因,我们导入servlet包3.1首先进入maven中央仓库,搜索java servlet原创 2017-12-14 17:26:39 · 359 阅读 · 0 评论 -
JVM原理与解析
本文转字:http://blog.csdn.net/luomingkui1109/article/details/728202321.JVM简析: 作为一名Java使用者,掌握JVM的体系结构也是很有必要的。 说起Java,我们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成:Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(J...转载 2018-03-09 15:24:42 · 248 阅读 · 0 评论 -
GC算法
本文转自:http://blog.csdn.net/luomingkui1109/article/details/728210821.GC算法是什么: 频繁收集Young区;较少收集Old区;基本不动Perm区。2.GC三大算法总体概述: JVM在进行GC时,并非每次都对上面三个内存区域一起回收的,大部分时候回收的都是指新生代,因此GC按照回收的区域又分了两种类型,一种是普通G...转载 2018-03-09 16:11:19 · 920 阅读 · 0 评论 -
硬盘与内存的区别,以及程序运行
http://baijiahao.baidu.com/s?id=1602323715064258536&wfr=spider&for=pc关于内存与硬盘的区别,网上很多说法都是围绕着数据啊存储啊,这些来讲,对外行人来说,依然让人,甚至更加让人一头雾水。今天,笔者就非常通俗地解释一下,也许不严谨,但大体就这么个道理。注:本文中的内存指的就是电脑里的内存条,硬盘也是那个实物...转载 2019-03-25 11:25:15 · 922 阅读 · 1 评论 -
spring-session(一)揭秘
https://www.cnblogs.com/lxyit/p/9672097.html前言在开始spring-session揭秘之前,先做下热脑(活动活动脑子)运动。主要从以下三个方面进行热脑:为什么要spring-session 比较traditional-session方案和spring-session方案 JSR340规范与spring-session的透明继承一.为什么...转载 2019-03-29 19:54:34 · 285 阅读 · 0 评论 -
spring-session(一)揭秘续篇
https://www.cnblogs.com/lxyit/p/9719542.html上一篇文章中介绍了Spring-Session的核心原理,Filter,Session,Repository等等,传送门:spring-session(一)揭秘。这篇继上一篇的原理逐渐深入Spring-Session中的事件机制原理的探索。众所周知,Servlet规范中有对HttpSession的事件的...转载 2019-03-29 19:56:23 · 755 阅读 · 0 评论 -
hashMap原理
https://zhuanlan.zhihu.com/p/21673805HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。...转载 2019-04-08 18:37:48 · 240 阅读 · 0 评论 -
jvm虚拟机详细图解
https://blog.csdn.net/u010349169/column/info/jvm-principle0349169/column/info/jvm-principle转载 2019-04-26 09:47:29 · 193 阅读 · 0 评论 -
面试题
https://blog.csdn.net/csdnsevenn/article/details/89324542JVM内存管理机制和垃圾回收机制(基本每次面试都会问,一定要搞得透彻)JVM内存调优(了解是怎么回事,一般做项目过程中使用较多)设计模式(熟悉常见设计模式的应用场景,会画类图,实在不行背几个也是有用的)多线程(每次都会问,包括线程和进程、线程状态、线程并发的操作等,需要...转载 2019-04-18 17:25:48 · 126 阅读 · 0 评论 -
使用InteliJ IDEA 从SVN上下载项目踩过的坑
最近公司的很多同事开始使用IntelliJ Idea,便尝试了一下,虽然快捷键与eclipse有些不同,但是强大的搜索功能与“漂亮的界面”,还是值得我们去使用的(IDEA的主题网站,可以自己选择一些主题风格:http://www.riaway.com 1.从主菜单打开你的编辑器选择File->Import Setting.选择你下...原创 2019-05-05 16:16:34 · 13584 阅读 · 0 评论 -
IntelliJ IDEA 配置和启动maven 项目 步骤
转载自:https://blog.csdn.net/nandao158/article/details/80902193一 、从svn中检出web项目:1、如果是maven项目:首先配置仓库2、从svn中检出maven项目:3、检查项目是否是maven项目,如果不是转化成maven,然后点击,更新jar二、配置jdk(SDK)1、点击三、配置pro...转载 2019-05-14 20:57:12 · 30761 阅读 · 1 评论 -
JVM虚拟机的详细介绍
转载于:https://www.cnblogs.com/chanshuyi/p/jvm_serial_00_why_learn_jvm.htmlJVM基础系列文章目录JVM基础系列开篇:为什么要学虚拟机? JVM基础系列第1讲:Java 语言的前世今生 JVM基础系列第2讲:Java 虚拟机的历史 JVM基础系列第3讲:到底什么是虚拟机? JVM基础系列第4讲:从源代码到机器...转载 2019-05-28 15:07:20 · 139 阅读 · 0 评论 -
使用intellj idea 的SVN同步代码
查看资源库这里介绍一个小功能,如果我们有一些文件我们并不关心他是否改变,我们就可以再新建一个changelist,我这里叫new changelist可以把我们不关心的文件放入到这里,这样方便我们观察我们关心的文件,比如如果是个大的工程,很多class文件我们并不关心,就可以这样做我们开始提交我们修改过的代码,一般的顺序是我们先update,如果update的时候没有任何提示,...转载 2019-06-26 10:30:48 · 36832 阅读 · 2 评论 -
Java的四种引用,强弱软虚,用到的场景。
JDK1.2以前关于引用的解释,其存储的数值代表另外一块内存的起始地址(并根据类型决定数据占用了多少个字节),就称这块内存代表着一个引用。JDK1.2之后,对引用的概念进行了扩充:分为强引用strong reference,软引用soft,弱引用weak和虚引用phantom 四种引用。C++有析构函数这个东西,能够很好地在对象销毁前做一些释放外部资源的工作,但是Java没有。Ob转载 2017-09-07 16:37:16 · 251 阅读 · 0 评论 -
Java中Object有哪些公用方法?
1.clone方法保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。主要是JAVA里除了8种基本类型传参数是值传递,其他的类对象传参数都是引用传递,我们有时候不希望在方法里讲参数改变,这是就需要在类中复写clone方法。2.getClass方法final方法,获得运行时类型。转载 2017-09-07 15:54:16 · 1517 阅读 · 0 评论 -
对xml的深入解析
对XML中的一些方法进行了清楚的举例:http://blog.csdn.net/happy09li/article/details/7460521转载 2017-03-06 17:14:51 · 181 阅读 · 0 评论 -
Java Executor 框架详细讲解
Java Executor 框架详细讲解:http://blog.csdn.net/qq_35101189/article/details/54574682转载 2017-01-16 16:32:41 · 429 阅读 · 0 评论 -
SpringBoot运行原理的分析:
spring boot应用启动原理分析 :http://blog.csdn.net/hengyunabc/article/details/50120001转载 2017-01-12 10:58:28 · 515 阅读 · 0 评论 -
有关Java中线程池的介绍
JAVA线程池的分析和使用:http://www.infoq.com/cn/articles/java-threadPool/转载 2017-01-10 10:17:38 · 224 阅读 · 0 评论 -
Hibernate注解与JPA
JPA的一些注解以及与Hibernate的关系:http://blog.csdn.net/zxc123e/article/details/51499652转载 2016-12-02 16:03:03 · 204 阅读 · 0 评论 -
使用springBoot的拦截器功能介绍
spring-boot 加入拦截器Interceptor的介绍:http://lihao312.iteye.com/blog/2078139转载 2016-12-02 14:40:59 · 506 阅读 · 1 评论 -
Spring Security(有关获取用户认证和信息的简介)
这是一篇介绍Spring Security中对获取用户信息和验证的很好的文章:http://elim.iteye.com/blog/2155786转载 2016-12-02 11:17:12 · 840 阅读 · 0 评论 -
CentOS的相关下载
在这里提供一些CentOS7的32位的下载网站,有需要的朋友可以下载:http://mirror.centos.org/altarch/7/isos/i386/原创 2016-11-16 15:34:24 · 299 阅读 · 0 评论 -
解决tomcat启动时的45秒时间限制
一般tomcat在默认设置时会有启动时间限制,就是在超过45秒后项目没启动完就会报错,错误信息为:Server Tomcat v8.0 Server at localhost was unable to start within 45 seconds 如果我们的项目很大,或者电脑反应慢,这会是个很烦人的东西。下面来解决这个问题:1.找到你的eclipse的workspace文件。之后按wor原创 2017-06-08 14:16:55 · 35465 阅读 · 5 评论 -
Java中对构造函数的理解
1使用构造器需要注意的事项:(构造器的作用是:对对象进行初始化,它能够把定义对象时的参数传给对象的域。) 当类中没有定义构造函数时,系统会指定给该类加上一个空参数的构造函数。这个是类中默认的构造函数。当类中如果自定义了构造函数,这时默认的构造函数就没有了。(备注:可以通过javap命令验证)1:构造器必须与类同名,(如果一个源文件中有多个类,那么构造器必须与公共类同名)2:每个类原创 2017-07-03 10:57:22 · 791 阅读 · 0 评论 -
定时器(Quartz)快速入门
摘要: Quartz是一个任务日程管理系统,这个系统可以与任何其他软件系统集成或者一起使用。术语“日程进度管理器”可能对于不同的人有不同的理解。当你阅读这个指南之后, 你会对这个术语有固定的理解。简而言之,“任务进度管理器”就是一个在预先确定(被纳入日程)的时间到达时,负责执行(或者通知)其他软件组件的系统。Quartz概述Quartz中的触发器Quartz中提供了两种触发转载 2017-07-04 09:42:29 · 490 阅读 · 0 评论 -
HashMap和HashTable的区别。
HashMap和Hashtable的比较是Java面试中的常见问题,用来考验程序员是否能够正确使用集合类以及是否可以随机应变使用多种思路解决问题。HashMap的工作原理、ArrayList与Vector的比较以及这个问题是有关Java 集合框架的最经典的问题。Hashtable是个过时的集合类,存在于Java API中很久了。在Java 4中被重写了,实现了Map接口,所以自此以后也成了Java转载 2017-09-14 09:38:16 · 521 阅读 · 0 评论 -
try catch finally,try里有return,finally还执行么?
结论:1、不管有木有出现异常,finally块中代码都会执行;2、当try和catch中有return时,finally仍然会执行;3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,管finally中的代码怎么样,返回的值都不会改变,任然是之前保存的值),所以函数返回值是在finally执行前确定的;4、finally转载 2017-09-14 11:39:10 · 274 阅读 · 0 评论 -
java中九种基本数据类型的大小,以及他们的封装类。
java提供了一组基本数据类型,包括boolean, byte, char, short, int, long, float, double, void. 同时,java也提供了这些类型的封装类,分别为Boolean, Byte, Character, Short, Integer, Long, Float, Double, Void基本类型大原创 2017-09-07 14:36:42 · 437 阅读 · 0 评论 -
Switch能否用string做参数?
Switch能否用String做参数?参数可以是整数表达式,JDK1.5开始支持Enum类,JDK1.7开始支持String。当字符串不会频繁改变时可以用枚举来代替String:用Enum.parse。注意:1.JDK1.6 的版本中,switch后面的括号里面只能放int类型的值,注意是只能放int类型,但是放byte,short,char类型的也转载 2017-09-07 14:57:29 · 2431 阅读 · 0 评论 -
equals与==的区别。
在谈论equals和==的区别前,我们先简单介绍一下JVM中内存分配的问题。在JVM中 内存分为栈内存和堆内存。二者有什么区别呢?当我们创建一个对象(new Object)时,就会调用它的构造函数来开辟空间,将对象数据存储到堆内存中,与此同时在栈内存中生成对应的引用,当我们在后续代码中调用的时候用的都是栈内存中的引用,还需注意的一点,基本数据类型是存储在栈内存中。首转载 2017-09-07 15:37:02 · 208 阅读 · 0 评论 -
IntellJ IDEA的一些基本配置
在使用IntellijJ IDEA进行一些简单的配置,以提高开发效率.注册码参考网站:https://blog.csdn.net/zhangli0910/article/details/89574619常用代码自动补全快捷键:快捷键 说明 sout System.out.println(“”); psvm main方法 常用快捷键:快捷键 ...原创 2019-06-27 15:35:24 · 619 阅读 · 0 评论