Java
java
Tony-devj
Java方向的开发
展开
-
Linux下部署Java项目下载resources下面的文件问题
Linux下部署Java项目下载resources下面的文件问题maven打包的问题linux通过classPathResource 找不到文件将Linux作为部署服务器是大部分IT人的选择,但是在部署java项目的时候,需要下载相应的模板文件,我现在将模板文件放在resources项目目录下的问题总结。maven打包的问题在最开始的时候,是使用maven进行项目相关包的管理。但是在maven项目中,默认是不会将resources下的文件打包进去,可以通过如下解决:<resources>原创 2020-12-28 11:00:44 · 2192 阅读 · 0 评论 -
Linux 搭建git和配置ssh密钥
Linux 搭建git和配置ssh密钥What?什么是git?Why?为什么要使用git?Linux环境下搭建安装git和配置SSH安装git配置SSH公钥和私钥What?什么是git?Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。Why原创 2020-11-08 10:24:53 · 1678 阅读 · 4 评论 -
Java基础之Collections框架Map接口实现类HashMap及其源码分析(2)
Java基础之Collections框架Map接口实现类HashMap及其源码分析(2)treeifyBin方法源码分析moveRootToFront源码分析类比较方法解析tieBreakOrder源码分析Java基础之Collections框架Map接口实现类HashMap及其源码分析(1)讲解了putVal的一部分逻辑,和putTreeVal的一部分逻辑,现在我们继续:在进行putVal的时候,会判断put的key是否在map中是否存在,如果存在就会判断是否保留原来的值进行值的替换,还会判断node原创 2020-07-16 15:43:48 · 112 阅读 · 0 评论 -
Java基础之Collections框架Map接口实现类HashMap及其源码分析(1)
Java基础之Collections框架Map接口实现类HashMap及其源码分析HashMap是基于哈希表的Map接口的实现。 此实现提供所有可选的映射操作,并允许空值和空键。 (HashMap类与HashTable大致等效,不同之处在于它是不同步的,并且允许为null)。此类不保证映射的顺序。它不能保证顺序会随着时间的推移保持恒定。假设哈希函数将元素正确分散在存储桶中,则此实现为基本操作(获取get和放置put)提供恒定时间的性能。 集合视图上的迭代所需的时间与HashMap实例的“容量”(存储桶数原创 2020-07-15 15:06:15 · 164 阅读 · 0 评论 -
Java基础之Collections框架Map接口及其源码分析
Java基础之Collections框架Map接口及其源码分析Map简单使用迭代的使用Java8 使用Map接口源码分析将键映射到值的对象。 映射不能包含重复的键; 每个键最多可以映射到一个值.该接口代替了Dictionary类,后者是一个完全抽象的类,而不是一个接口。Map接口包括用于基本操作(例如put,get,remove,containsKey,containsValue,size和empty),批量操作(例如putAll和clear)和集合视图(例如keySet,entrySet和value原创 2020-07-11 15:08:35 · 128 阅读 · 0 评论 -
Java基础之Collections框架List接口实现类LinkedList及其源码分析
Java基础之Collections框架List接口实现类LinkedList及其源码分析LinkedList简单使用LinkedList源码分析构造函数添加元素添加指定集合中的元素到linkedList中进行addAll操作移除元素操作移除所有的元素移除元素(第一个)移除元素(最后一个)查询设置值降序迭代器List和Deque接口的双链接列表实现。 实现所有可选的列表操作,并允许所有元素(包括null)。所有操作都执行双链表所期望的操作。 索引到列表中的操作将从开头或结尾遍历列表,以更接近指定索引的位原创 2020-07-03 14:02:24 · 139 阅读 · 0 评论 -
Java基础之Collections框架List接口实现类ArrayList及其源码分析
Java基础之Collections框架List接口实现类ArrayList及其源码分析ArrayList的简单使用ArrayList源码分析List接口的可调整大小的数组实现。 实现所有可选的列表操作,并允许所有元素,包括null。 除了实现List接口之外,此类还提供一些方法来操纵内部用于存储列表的数组的大小。size,isEmpty,get,set,iterator和listIterator操作在恒定时间内运行。 加法运算以固定的固定时间运行,即,添加n个元素需要O(n)时间。 所有其他操作均以线原创 2020-07-02 17:17:08 · 153 阅读 · 0 评论 -
Java基础之Collections框架List接口及其源码分析
Java基础之Collections框架List接口及其源码分析List接口的特点索引访问搜索迭代范围视图List简单实例List源码分析有序集合(也称为序列)。 用户可以精确控制列表中每个元素的插入位置。 用户可以通过其整数索引(列表中的位置)访问元素,并在列表中搜索元素。与集合不同,列表通常允许重复的元素。 更正式地说,列表通常允许成对的元素e1和e2,使得e1.equals(e2),并且如果它们完全允许空元素,则它们通常允许多个空元素。List接口在Iterator的协定,add,remove,原创 2020-07-01 16:18:59 · 117 阅读 · 0 评论 -
Java基础之Collections框架Set实现类LinkedHashSet及其源码分析
Java基础之Collections框架Set实现类LinkedHashSet及其源码分析LinkedHashSet的简单使用LinkedHashSet源码分析Set接口的哈希表和链表实现,具有可预测的迭代顺序。 此实现与HashSet的不同之处在于,它维护在其所有条目中运行的双向链接列表。 此链表定义了迭代顺序,即将元素插入集合中的顺序(插入顺序)。请注意,如果将元素重新插入到集合中,则插入顺序不会受到影响。 (如果在调用之前s.contains(e)将返回true的情况下调用s.add(e),则将元素原创 2020-07-01 14:38:59 · 249 阅读 · 0 评论 -
Java基础之Collections框架Set实现类TreeSet及其源码分析
Java基础之Collections框架Set实现类TreeSet及其源码分析TreeSet的简单使用TreeSet源码分析基于TreeMap的NavigableSet实现。 元素使用其自然顺序进行排序,或通过在设置创建时提供的Comparator进行排序,具体取决于所使用的构造函数.TreeMap实现为基本操作(添加,删除和包含)提供了保证的log(n)时间成本.请注意,如果要正确实现Set接口,则由集合(无论是否提供显式比较器)维护的顺序必须与equals一致。 (有关与equals一致的精确定义原创 2020-07-01 10:50:38 · 132 阅读 · 2 评论 -
Java基础之Collections框架Set实现类HashSet及其源码分析
Java基础之Collections框架Set实现类HashSet及其源码分析HashSet简单使用HashSet源码分析这个类实现了Set接口,由一个哈希表(实际上是一个HashMap实例,HashMap研究到了再说,哈哈)支持。它不能保证集合的迭代顺序;特别是,它不能保证顺序随时间保持不变。这个类允许空元素。这个类为基本操作(添加、删除、包含和大小)提供恒定的时间性能,假设哈希函数将元素正确地分散在bucket中。遍历这个集合所需的时间与HashSet实例的大小(元素的数量)与支持HashMap实例原创 2020-06-28 14:34:19 · 2610 阅读 · 0 评论 -
Java基础之Collections框架Set接口及其使用和源码分析
Java基础之Collections框架Set接口及其使用和源码分析Set接口Set使用Set接口集合是不能包含重复元素的集合。Set接口只包含从集合继承的方法,并添加了禁止重复元素的限制。Set还为equals和hashCode操作的行为添加了一个更强的契约,允许对Set实例进行有意义的比较,即使它们的实现类型不同。如果两个Set实例包含相同的元素,则它们是相等的。Java平台包含三个通用的Set实现:HashSet、TreeSet和LinkedHashSet。将元素存储在哈希表中的HashSet是原创 2020-06-28 11:01:00 · 159 阅读 · 0 评论 -
Java基础之Collections框架继承Iterable接口解析
Java基础之Collections框架继承Iterable接口解析Iterable作用源码在Collections框架学习中,Collections接口继承了Iterable接口,这个接口能提供什么功能呢?Iterable作用实现这个接口允许对象成为“for-each loop”语句的目标。源码public interface Iterable<T> { /** 返回指定泛型类型的迭代器 */ Iterator<T> iterator(原创 2020-06-23 15:53:12 · 643 阅读 · 0 评论 -
Java基础之Collections框架及其源码分析Collections接口
Java基础之Collections框架及其源码分析Collections接口层级申明Collections源码集合有时候称为容器,是将多个元素组合成一个单元的简单对象。集合用于存储、检索、操作和通信聚合数据。Collections接口层级Collections集合接口封装了不同类型的集合,这些接口允许对集合的操作独立于它们表示的细节。Collections集合接口是Java集合框架的基础。如上图所示有很多子接口:Set: 使用过set集合的应该大概了解了set的使用。set是不能包含重复元素的原创 2020-06-23 14:37:01 · 187 阅读 · 0 评论 -
Java相关的特性及Java白皮书的关键术语(7Gosling)
JAVA是一种编程语言和环境,旨在解决现代编程实践中的许多问题。 它最初是为消费电子产品开发先进软件的一个重要项目的一部分。 这些是可靠的便携式分布式实时嵌入式系统。1.简单性2.面向对象 不幸的是,这是业内最被滥用的流行语之一。 面向对象的设计仍然非常强大,因为它有助于界面的清晰定义,并且可以提供可重用的“软件IC”。面向对象设计的简单定义是它是一种将设计集中在数据(=...原创 2018-12-15 18:59:29 · 341 阅读 · 0 评论 -
Java 第一个简单程序,Hello World!
1.首先我们创建一个java类,类名为HelloWorldpublic class HelloWorld{ public static void main(String [] args){ System.out.println("hello world java8"); }}上面这段代码可以说是最简单的java程序,打印一段字符...原创 2018-12-22 18:56:33 · 6573 阅读 · 0 评论 -
Java中数值类型之间转换的规则
在我们进行数值相关操作的时候,很多时候都会进行不同类型的相关操作:避免不了存在数值类型之间的转换。那java中数值类型转换的规则是什么呢?有些会不丢失精度转换,而有些会丢失精度。1.如果两个操作数中有一个是double类型,另一个操作数就会转换为double类型2.否则,如果其中一个操作数是float类型,另一个操作数就会转换为float类型3. 否则,如果其中一个操作数为long...原创 2018-12-31 12:35:34 · 359 阅读 · 0 评论 -
Java中==和equals的区别
我们在写程序的过程中,判断会将两个对象进行对比。比如拿字符串来说吧!String hello = "Hello";String greeting = "Hello";String str = new String("Hello");System.out.println("hello.equals(greeting):" + hello.equals(greeting)); //tru...原创 2018-12-31 15:09:47 · 90 阅读 · 0 评论 -
Java环境搭建 Maven + Git + Jetty
1、开发所用的工具项目使用的是Java语言开发的后台,用Angular JS开发的前端。 这样做的好处是前端和后端相分离,前端只做前端,后端只做后端,最后进行联调,测试,完善。 使用敏捷开发进行迭代。用Java开发后台,需要用到JDK 1.6+,最新版本是1.8。下载网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk...原创 2019-01-07 13:05:19 · 220 阅读 · 0 评论 -
Java并发编程总结(一)
什么是线程?线程是进程的实体,线程本身是不会独立存在的。进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。线程则是进行的这一个执行路径,一个进程中至少有一个线程。进程中的多个线程共享进程的资源。创建线程java中创建线程有三种方式:1、实现Runnable接口的run方法 (无返回值)2、继承Thread类并重写run方法(无返回值)3、使用FutureTa...原创 2019-10-08 17:59:40 · 121 阅读 · 0 评论 -
Java 8 环境搭建
Java 简介Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。Java分为三个体系:JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版) JavaEE(J2EE)(Java 2 Plat...原创 2018-12-15 16:02:22 · 5927 阅读 · 0 评论