Java专栏
文章平均质量分 86
java8官方文档:https://docs.oracle.com/javase/8/docs/
夯实自己的开发基础
猿来如此dj
目前西安工作-航天宏图公司大数据开发工程师,欢迎大家交流。
展开
-
自己系统集成海康威视摄像机和录像机实现监控与回放(二开海康威视摄像机)
集成海康威视监控和录像机实现预览和回放,布放和告警等功能原创 2024-09-14 17:21:03 · 1107 阅读 · 0 评论 -
java常用优秀开发框架及工具类汇总
java发展了很多年,为了便于开发,出现刴优秀的开发框架和工具类。原创 2024-03-28 15:34:54 · 4188 阅读 · 0 评论 -
java基本面试题汇总
乐观锁:乐观锁认为竞争不总是会发生,因此它不需要持有锁,将比较-替换这两个动作作为一个原子操作尝试去修改内存中的变量,如果失败则表示发生冲突,那么就应该有相应的重试逻辑。悲观锁:悲观锁认为竞争总是会发生,因此每次对某资源进行操作时,都会持有一个独占的锁,就像synchronized,不管三七二十一,直接上了锁就操作资源了。原创 2021-11-23 20:55:05 · 468 阅读 · 0 评论 -
java实战1:程序常见Exception异常汇总
1:java序列化异常:Caused by: java.io.NotSerializableException: java.security.ProtectionDomain在运行时突然报序列化异常Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.Nati原创 2021-12-16 15:28:55 · 3355 阅读 · 0 评论 -
java实战2:利用Spring boot开发Restful 接口
利用Spring boot开发Restful 接口1:Spring boot1.1:SpringBoot框架SpringBoot框架一般分为View层、Controller层、Service层、Mapper层、pojo层。View层:视图层,根据接到的数据展示页面给用户Controller层:响应用户需求,决定用什么视图,需要准备什么数据来显示。Controller层负责前后端交互,接收前端请求,调用Service层,接收Service层返回的数据,最后返回具体的数据和页面到客户端Service原创 2022-05-11 17:58:13 · 15943 阅读 · 4 评论 -
java实战3:用java实现数据文件上传到ftp服务器
1:ftp简介文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而, 用户并不真正登录到自己想要存取的计算机上面而成为完原创 2021-12-25 16:46:10 · 6704 阅读 · 2 评论 -
java实战4:利用log4j实现不同类日志输出到不同的文件
1:apache log4j介绍Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。1、LoggersLoggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERRO原创 2021-11-16 08:47:52 · 5237 阅读 · 0 评论 -
java实战五:32个案例带你轻松玩转Java stream
9张图,32个案例带你轻松玩转Java stream本文转载自今日头条用户Java8 中增加了 Stream 处理,可以配合 Lambda 表达式来使用,让操作集合非常便利。虽然我们平时经常使用 Stream,但用到的方法其实非常少,这篇文章就来完整的介绍 Stream 的使用。Stream 提供的方法非常多,按照调用当前方法是否结束流处理,可以分为中间操作和结束操作。对于中间操作,又可以分为有状态的操作和无状态操作:无状态的操作是指当前元素的操作不受前面元素的影响。有状态的操作是指当前元素的原创 2022-02-12 16:02:02 · 651 阅读 · 0 评论 -
单元测试(一)JUnit
文章目录1:junit单元测试介绍2:junit环境搭建3:junit用法3.1:语法注意事项3.2:测试失败说明3.3:一些常用注解:3.4:实战4:junit测试类4.1:测试类4.2:测试套件5:异常测试6:junit的断言1:junit单元测试介绍JUnit 是一个 Java 编程语言的单元测试框架,增加了程序员的产量和程序的稳定性,可以减少程序员的压力和花费在排错上的时间。什么是单元测试用例:单元测试用例是一部分代码,可以确保另一端代码(方法)按预期工作。为了迅速达到预期的结果,就需要测试框原创 2021-11-04 11:27:40 · 518 阅读 · 0 评论 -
单元测试(二)mockito
学习mockito文章目录1:mockito介绍1.1:基本使用1.2:语法1:mock模拟2:when-thenReturn 预定期望动作3: when-thenThrow和 doThrow期望异常4:when_thenAnswer 期望返回结果5:.verify(检验交互)6: spy真实数据2:使用案例2.1:引入依赖1:mockito介绍Mockito就是一个优秀的用于单元测试的mock框架。在软件开发中提及”mock”,通常理解为模拟对象。所以Mockito就是为了模拟对象,然后进行解耦合测原创 2021-11-05 17:32:34 · 1069 阅读 · 0 评论 -
单元测试(三)AssertJ断言
assertj官方文档1:AssertJ介绍AssertJ是一个Java库,它提供了一组丰富的断言和真正有用的错误消息,提高了测试代码的可读性1.1:maven依赖 <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>3.21.0</version>原创 2021-11-10 10:45:51 · 714 阅读 · 0 评论 -
工具类1:java的properties类
java的properties类java的properties类多用于灵活配置文件,避免硬编码。一般配置文件放在conf目录下,创建conf目录进行source加载。创建file文件demo: public static Properties loadPro(String fileName){//只传文件名即可 Properties pro=new Propert...原创 2020-04-05 17:52:18 · 156 阅读 · 0 评论 -
工具类2:用java进行多文件压缩为一个ZIP包
用java进行多文件压缩为一个ZIP包1:demo接口使用:zipFileName为输出zip包的名字,infile为需要压缩的多个文件存放的目录, public void zip(String zipFileName,String inFile) throws FileNotFoundException { ZipOutputStream zipOutputStream ...原创 2020-04-05 18:10:53 · 333 阅读 · 0 评论 -
工具类3:java的流
java的流流在Java中是指计算中流动的缓冲区。从外部设备流向中央处理器的数据流成为“输入流”,反之成为“输出流”。1:流的分类 流------》接口-----》实现类------》缓冲流 **只要是处理纯文本数据,就要优先考虑使用字符流,除此之外都用字节流。** 1.1:字符流和字节流的主要区别字节流:读取的时候,读到一...原创 2020-04-05 19:30:03 · 225 阅读 · 1 评论 -
java基础教程
1:java中文教程2:java教程1:java基础1.1:java exception异常类 Exception 又分为运行时异常(RuntimeException )和非运行时异常(又叫编译异常)。1:常见的运行时异常2:编译异常1:异常处理Java 的异常处理通过 5 个关键字来实现:try、catch、throw、throws 和 finally。try catch 语句用于捕获并处理异常finally 语句用于在任何情况下(除特殊情况外)都必须执行的代码throw 语原创 2022-01-12 20:04:45 · 106 阅读 · 0 评论 -
Java编程思想学习
Java编程思想汇总1:对象导论1.1:类和对象类是具有相同特性和行为的对象集合,也就是相当于我们创建的一种抽象的数据类型。每个操作者都可以创建自己的对象操作该集合。内存中的运行方式:类和基本数据类型基本一致。**对象:**是某个类的实例,每个对象在内存中地址都是唯一的!1.2:访问权限Java中有四种访问权限,public > protected > default(包访问权限) > private。下面用表格表示四种权限1、public: 所修饰的类、变量、方法,在原创 2021-10-29 14:17:20 · 1033 阅读 · 0 评论 -
java原理1:java多线程
多线程1:基本概念串行:一个线程执行到底,相当于单线程。并发:多个线程交替执行,抢占cpu的时间片,但是速度很快,在宏观角度看来就像是多个线程同时执行。并行:多个线程在不同的cpu中同时执行。1.1:多线程的实现1、继承Thread类: 步骤:①、定义类继承Thread; ②、复写Thread类中的run方法; 目的:将自定义代码存储在run方法,.........原创 2020-07-15 17:56:52 · 781 阅读 · 0 评论 -
java原理2:浅谈设计模式和设计原则
1 设计模式各种设计模式就是为了让我们更好的组织代码,合理利用资源,增强代码的可读性,解耦性,扩展性1:策略模式策略模式的好处就是:体现了高内聚低耦合的特性,增强了扩展性接口就是最常见的策略模式接口:策略类1public interface IStrategy { //接口的方法1 public void operate(); }实现类1public class BackDoor implements IStrategy { public void operate() { S原创 2020-10-15 16:40:25 · 241 阅读 · 0 评论 -
java原理3:JVM的内存模型及类的加载执行
java类的加载执行顺序1:原理介绍类执行主要包括加载--------》解析-----------》初始化三大步骤加载:编译。class文件解析:类包含的方法,变量的地址确定初始化:类的变量,静态变量,方法,构造方法加载2:使用类中方法属性执行顺序静态属性-------静态代码块--------new实例-------构造方法-----------属性----------方法......原创 2020-03-22 11:07:55 · 331 阅读 · 0 评论 -
java原理4:java的io网络模型
当数据准备好后,将数据从内核空间拷贝到用户空间,完成IO函数的调用。当应用程序调用一个 IO 函数,其底层会委托操作系统的recvfrom()去完成,当数据还没有准备好时,revfrom会一直阻塞,等待数据准备好。内核开始复制数据,它会将数据从内核缓冲区复制到用户缓冲区(用户空间的内存),然后内核返回结果(例如返回复制到的用户缓冲区的字节数)。Redis网络模型是采用I/O多路复用器,对key的处理是单线程 避免了多线程之间的竞争,省去了线程切换带来的时间和空间上的性能开销,而且也不会导致死锁的问题。原创 2023-02-24 17:11:35 · 506 阅读 · 0 评论 -
java的单例模式
java的单例模式1:单例模式单例模式(Singleton),也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在,保证调用的同步,节省资源。用处:工具类,数据库等public class DoubleCheck { //1.声明私有静态同步变量 private static volatile DoubleCheck instanc...原创 2020-02-28 00:20:54 · 163 阅读 · 0 评论 -
java常见算法面试题
java常见算法面试题Java的冒泡排序,快速排序,归并排序,计数排序,二分查找法1.斐波那契数列1.斐波那契数列又叫黄金分割和兔子数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递推的方法定义(规律总结):F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)2.杨辉三角public class Tri...原创 2019-05-15 10:22:45 · 4940 阅读 · 0 评论 -
Java的冒泡排序,快速排序,归并排序,计数排序,二分查找法
归并排序快速排序二分法查找冒泡排序计数排序原创 2019-04-27 15:29:38 · 1113 阅读 · 1 评论