随笔分类 -  Java-Core

摘要:1.介绍 从本质上讲,程序是一系列指令。控制结构是可以改变我们如何执行这些指令的代码块。 在本教程中,我们将探讨Java中的控制结构。 有三种控制结构: 条件分支,用于在两条或多条路径之间进行选择。Java中有三种类型:if/else/elseif、三元运算符和switch。循环;用于迭代多个值/对 阅读全文
posted @ 2021-06-12 23:04 一锤子技术员 阅读(9) 评论(0) 推荐(0) 编辑
摘要:1.介绍 在本教程中,我们将快速了解java.lang.System类及其特性和核心功能。 2.IO 系统类是java.lang的一部分,它的一个主要特性是让我们能够访问标准的I/O流。 简单地说,它暴露了三个属性,每个流一个: outerrin 2.1 System.out System.out指 阅读全文
posted @ 2021-06-11 00:01 一锤子技术员 阅读(16) 评论(0) 推荐(0) 编辑
摘要:1.介绍 简单的讲,在多线程环境中,当一个或多个线程试图更新一个可变共享数据时会出现竞争情况,你无法确定共享数据将如何变化。Java通过同步线程获取共享资源方式可以做到避免此竞争。 使用 synchronized 关键字的代码变成一个 synchronized 块,同一时间只允许一个线程执行。 2. 阅读全文
posted @ 2021-06-06 23:09 一锤子技术员 阅读(8) 评论(0) 推荐(0) 编辑
摘要:1.介绍 从Java7诞生了try-with-resources,这家伙可以在资源使用完后实现自动关闭回收。想想我们之前打开一个文件或流对象用完咋整的,是不是finally语句块中手动close的。 当然这类可自动关闭的资源前提是必须实现了AutoCloseable接口。 2.如何使用? 拿Prin 阅读全文
posted @ 2021-06-03 20:29 一锤子技术员 阅读(10) 评论(0) 推荐(0) 编辑
摘要:1.使用场景介绍 controller层对传入的bean的属性进行非空、属性长度等合法性的校验。 传统的方式是我们要自己写if…else…去判断,比较麻烦。 2.实现效果 3.代码介绍 代码结构: pom.xml <dependency> <groupId>org.springframework.b 阅读全文
posted @ 2020-05-29 00:24 一锤子技术员 阅读(2) 评论(0) 推荐(0) 编辑
摘要:1.说明 最近项目中一部分大文件需要存储到hadoop的hdfs组件中,自己本地用3台centos7虚拟机搭建了一套集群。本地写点java代码测试一下。 代码部分改编自网络。 环境说明 一主二仆结构。配置了SSH免密访问。 hadoop-master hadoop-slave01 hadoop-sl 阅读全文
posted @ 2020-04-09 23:09 一锤子技术员 阅读(17) 评论(0) 推荐(0) 编辑
摘要:介绍 Java提供的java.util.zip包只支持zip和gzip。至于更多格式的压缩可以选择apache的Commons Compress。 参考:https://o7planning.org/en/10195/java-compression-and-decompression-tutori 阅读全文
posted @ 2019-08-05 15:21 一锤子技术员 阅读(4) 评论(0) 推荐(0) 编辑
摘要:需求说明: 实际项目中我打算把用户和组织信息放到缓存中,基于此提出以下几点需求: 1.数据存储在内存中; 2.允许以键值对的方式存储对象类数据并带有过期策略; 3.不限制内存使用,但cache也不能给我报出OutOfMemoryErrormemory异常; 4.cache要自动清理过期对象 5.线程 阅读全文
posted @ 2019-07-28 11:29 一锤子技术员 阅读(42) 评论(1) 推荐(1) 编辑
摘要:首先感谢08年MLDN出的这个培训视频,我把代码和文档整理了一下,发布出来给需要学习Swing的朋友。 源码地址: https://gitee.com/indexman/gobang 一、知识点准备: JFrame:窗体 JOptionPane:对话框 MouseListener:鼠标事件 Grap 阅读全文
posted @ 2019-03-24 15:47 一锤子技术员 阅读(42) 评论(0) 推荐(0) 编辑
摘要:题目来自leetcode: 方法:双指针法 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。 复杂度分析 时间复杂度:O(n)O(n), 假设数组的长度是 nn,那么 ii 和 jj 阅读全文
posted @ 2018-10-10 19:04 一锤子技术员 阅读(7) 评论(0) 推荐(0) 编辑
摘要:关于二维码 一. 二维码的分类 线性堆叠式二维码、矩阵式二维码、邮政码。 二. 二维码的优缺点 优点:1. 高密度编码,信息容量大; 2.编码范围广; 3.容错能力强; 4.译码可靠性高; 5.可引入加密措施; 6.成本低,易制作,持久耐用。 缺点:1.二维码技术成为手机病毒、钓鱼网站传播的新渠道; 阅读全文
posted @ 2018-08-19 18:35 一锤子技术员 阅读(28) 评论(0) 推荐(0) 编辑
摘要:今天使用java axis调用.net发布的webservice接口报了个错,排查半天,感觉代码逻辑没问题,最后发现是jar包冲突!!! 调用接口相关代码: String url="http://xxxx/WebService/ForDxService.asmx?wsdl"; Service ser 阅读全文
posted @ 2018-08-04 10:42 一锤子技术员 阅读(6) 评论(0) 推荐(0) 编辑
摘要:package test; /** * 去除字符串空格 * * @author xusucheng * @create 2018-07-04 **/ public class RemoveWhitespace { public static void main(String[] args) { St 阅读全文
posted @ 2018-07-04 00:22 一锤子技术员 阅读(3) 评论(0) 推荐(0) 编辑
摘要:前面我们介绍了2种同步机制: 1)使用synchronized关键字 2)使用Lock接口及其实现类: ReentrantLock,ReentrantReadWriteLock.ReadLock, and ReentrantReadWriteLock.WriteLock 本例中,我们将学习更高级的同 阅读全文
posted @ 2018-05-19 17:12 一锤子技术员 阅读(9) 评论(0) 推荐(0) 编辑
摘要:一个锁可能关联了一个或多个条件。这些条件可以在Condition接口中声名。 使用这些条件的目的是去控制一个锁并且可以检查一个条件是true或false,如果为false,则暂停直到 另一个线程来唤醒它。 Condition接口提供了这样一个机制 去暂定一个线程和唤醒一个暂停中的线程。 本例中继续拿 阅读全文
posted @ 2018-05-15 23:27 一锤子技术员 阅读(4) 评论(0) 推荐(0) 编辑
摘要:ReentrantLock和ReentrantReadWriteLock类的构造函数可接受一个布尔类型参数fair,表示你可以控制这2个类的行为。 其默认值为false,代表non-fair(不公平)模式。这种模式下,如果有多个线程等待获得锁并且只能有一个线程获得,上面2个锁类会无条件选择一个。(也 阅读全文
posted @ 2018-05-15 00:21 一锤子技术员 阅读(7) 评论(0) 推荐(0) 编辑
摘要:锁机制带来的最有意义的改进是提供了ReadWriteLock接口及其实现类ReentrantReadWriteLock。 这个类有2个锁,一个针对读操作另一个针对写操作。 可以有多个线程使用读操作,但是只有一个线程使用写操作。 当一个线程做写操作时,不能有任何线程做读操作。 本例中,我们将学习如何通 阅读全文
posted @ 2018-05-13 23:22 一锤子技术员 阅读(5) 评论(0) 推荐(0) 编辑
摘要:Java提供另一机制去同步代码块。它比synchronized关键字更强大且易用。 它是基于Lock接口和其实现类例如:ReentrantLock。 这一机制对比synchronized关键字的优势在于: 1.可以构建更加灵活的同步代码块; 2.Lock接口提供了一些额外功能,例如tryLock() 阅读全文
posted @ 2018-05-12 23:58 一锤子技术员 阅读(4) 评论(0) 推荐(0) 编辑
摘要:并发编程中有个经典问题: 生产消费者问题。 我们有一个数据缓冲区,一个或多个生产者往其中存入对象,另外一个或多个消费者从中取走。 因此,该数据缓冲区是一个共享数据结构,我们需要对其添加读取同步机制,但是我们还需要一些限制。 如果缓冲区满了,生产者不能继续向其中写入;反过来如果缓冲区空了,消费者也不能 阅读全文
posted @ 2018-05-11 22:31 一锤子技术员 阅读(7) 评论(0) 推荐(0) 编辑
摘要:当你使用synchronized关键字去保护一个代码块时,你必须传入一个对象的引用。 正常来讲,你讲使用this关键字去引用执行这个方法的对象,但是你可以使用其他对象的引用。 通常的,这些对象将会是专有的。例如,如果多个线程共享一个类中有2个独立的属性,你必须对每个变量做读取同步操作,但是如果一个线 阅读全文
posted @ 2018-05-11 00:22 一锤子技术员 阅读(3) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示