![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 80
余生大大
靠近光、追随光、成为光、发散光
展开
-
Spring boot集成海康威视门禁设备
目录1. 配置设备1.1 开箱门禁设备1.2 配置门禁线路1.3 插线1.4 插电联网1.5配置门禁2. 搭建项目2.1 下载海康的SDK2.2搭建Spring boot项目2.3 集成SDK2.4 引入操作物联设备的代码文件2.5 调试3. 个性化业务调试在第一单元是写了如何配置门禁设备,如果已经配置好的或者无需配置的同学直接进入第二章即可1. 配置设备1.1 开箱门禁设备 1.2 配置门禁线路门禁设备的后面有...原创 2022-04-25 22:27:03 · 4635 阅读 · 13 评论 -
工作这么多年了,你知道JAVA中基本数据类型和引用数据类型的区别吗?
摘要:在比较中==与equals对基本数据类型与引用数据类型的引用是不一样的,==对基本数据类型比较的是值,对引用数据类型比较的是地址,而equals默认比较的是地址,对基本数据类型会在比较完引用地址后再比较值是否相等,但是像String、Integer等包装的引用数据类型重写了equals来让他们的equals变为值的比较基本数据类型在传递中是传递的值,引用数据类型在传递中是传递的变量副本地址一. 数据类型java中数据类型分为两种,基本数据类型和引用数据类型1. 基本数据类型No原创 2021-08-06 16:20:16 · 170 阅读 · 0 评论 -
别在逻辑处理字符串了,String类的常用方法都有
文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言在开发过程中像获取字符串长度、字符串截取、字符串转数组这样的方法我们常用会很熟悉,但是有很多实用方法我们并不了解。如: 判断以某字符结尾的字符串:endsWith 判断以指定字符开始的字符串:startsWith 判断字符串里是否存在指定字符:contains 忽略大小写的判断字符串是否相等:equalsIgnoreCase 了解Stri...原创 2021-07-01 16:13:35 · 155 阅读 · 0 评论 -
JAVA中类内容的先后加载顺序
目录1. 类内容的几个概念a. 静态代码块b. 构造代码块c.构造函数d. 普通代码块2. 类实例化的执行顺序a. 代码b. 执行结果1. 类内容的几个概念a. 静态代码块静态代码块在类被加载的时候执行,并且只执行一次,它的优先级是最高的,在构造代码块和构造函数和main方法之前。如果有多个静态代码块,按代码编写的顺序执行。 静态代码块只能在类里,不能在方法里,对于静态方法:在类加载的时候,静态方法也已经加载了,但是我们必须要通过类名或者对象名才能访问,..原创 2021-04-29 17:44:57 · 469 阅读 · 1 评论 -
ReentrantLock锁的底层原理
1、查看Lock类源码lock的源码里只定义了5个方法,具体的实现逻辑我们去Lock的子类里进行查看/* * @since 1.5 * @author Doug Lea */public interface Lock { void lock(); void lockInterruptibly() throws InterruptedException; boolean tryLock(); void unlock(); Condition原创 2021-04-06 17:22:44 · 253 阅读 · 3 评论 -
使用单例模式创建一个全局的jdbc链接
暴露的外部接口:getInstance() 唯一的初始化类的方法 getLink() 获取Statement对象 closeLink() 关闭数据库连接并将类置为null performQuerySql(String sql) 执行查询操作的sql performUpdateSql(String sql) 执行update操作的sql 创建JDBC链接的步骤:1. 引入mysql包<dependency> <groupId>原创 2020-08-14 15:57:50 · 3529 阅读 · 0 评论 -
Java实现的表达式求值算法(包括加减乘除以及括号运算)
一、表达式求值简单说明:1、求值表达式主要包括加减乘除四种基本运算,其实表达式可以看做由一个个二元运算构成,前一个二元运算的结果作为后一个二元运算的输入。举个例子: “1+2-4=”,“1+2”就是一个二元运算,1和2是操作数,+是运算符,它们的运算结果3作为下一个二元运算的输入,所以下一个二元运算是“3-4”,这样经过两次二元运算后得出结果-1,此时碰到表达式结束符号“=”,那么表达式运算结束,最终值为-1。当然有时候表达式不是以等号作为结束符号的,这种场景要特别注意下。2...转载 2020-06-10 18:55:48 · 4508 阅读 · 1 评论 -
java根据Stack栈实现公式解析和自定义函数(二)
今天在准备继续拓展时发现了个问题,加减乘除的参数如果前面的值大于两位数后面的值大于一位时结果不正确甚至可能会报错,排查后发现是我在定义循环完毕的 i 位数固定了数值不是动态加载造成的问题修改成根据结果长度的位数加减i:执行结果(多位数也没有问题了):--------------------------------------------------------------- 我是间隔线 -------------------------------------------------原创 2020-06-05 18:55:44 · 1034 阅读 · 0 评论 -
java根据Stack栈实现公式解析和自定义函数(一)
我是看到了大佬的博客还能这样解析,我们来解析一下思路并扩展一下,传送门:java实现公式解析1. Stack的介绍 栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据。栈是只能在某一端插入和删除的特殊线性表。用桶堆积物品,先堆进来的压在底下,随后一件一件往上堆。取走时,只能从上面一件一件取。读和取都在顶部进行,底部一般是不动的。栈就是一种...原创 2020-06-04 18:42:00 · 4003 阅读 · 0 评论 -
Fel实现自定义计算引擎,平均计算速度每秒10w
Fel的介绍和简单使用以及0.9版本的包在之前的博客写过了,有需要的朋友移步:fel的简单使用及介绍1. 基础的应用下面的代码是引用原生类进行执行的,支持通用数学函数即加减乘除package com.example.demo.util;import com.greenpineyu.fel.FelEngine;import com.greenpineyu.fel.FelEngineImpl;/** * @author Anzepeng * @title: FelDemo * @p原创 2020-06-03 15:39:49 · 5574 阅读 · 0 评论 -
多线程的简单实现和应用场景
main方法测试,定义for循环造假数据,定义time在方法结束后时间相减获取执行毫秒数,单线程跟多线程对比执行时间。上图我定义了2000000的数据量,可以看到单线程执行时间为6520毫秒,多线程(3个)执行时间为3000毫秒左右,执行速度快了一半,所以在大数据量的查询和插入时可以根据需求使用多线程。(注意线程同步和线程锁的使用:synchronized,否则可能会出现多线程对同...原创 2020-01-03 11:18:41 · 8125 阅读 · 0 评论 -
java中double的NAN和INFINITY
在开发中double的处理时会出现NAN(无穷小)和INFINITY(无穷大)的情况,所以我们需要在这种情况时加一下处理1.当double得到NAN时加上验证DOUBLE.isNan(值)double a = 0.0 * 0.0;if (Double.isNaN(a)) { a = 0.0;}2.当double得到INFINITY时加上验证DOUBL...原创 2020-01-02 10:25:41 · 10559 阅读 · 1 评论 -
poi导出excel动态表头并合并
实现图,全场总电位第一级,其他 例行政部为第二层,若没有第三层的第二级如V线总电和污水处理站则合并两列,第三级 例生活区,此上数据为动态数据,根据不同用户不同数据动态变化表头DEMO代码:package com.springboot.util;import java.io.OutputStream;import java.io.UnsupportedEncoding...原创 2019-12-27 11:31:35 · 10410 阅读 · 0 评论 -
java后台重定向到页面
最简单方便的效果就是使用 response.sendRedirect("http://127.0.0.1");最好判断ajax还是http请求,http则直接使用这种方式,ajax则需要填写code原创 2019-11-26 10:05:57 · 12962 阅读 · 0 评论 -
根据map的key唯一实现需求
最近在做一个以天为列的列表展示,但是通过接口拿过来的数据时间并不是连续规律的,而前端赋值是依据数组下标赋值,所以我后台根据map的key值重复覆盖的方式进行逻辑处理。已知列为31天,将它(01,02,03....)作为key值,并存储对应的value值,在进行嵌套循环时已知key就31个,循环时进行判断如果这次循环的值没有则补充到map此次循环key对应value一个" - ",在循环有值时如...原创 2019-11-23 15:48:41 · 9272 阅读 · 0 评论 -
public与private问题
问题日志:2019-11-21 16:10:53,200:ERROR http-nio-8089-exec-9 (DirectJDKLog.java:175) - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed...原创 2019-11-21 16:22:09 · 9687 阅读 · 0 评论 -
JAVA本地上传文件到OSS服务器
最近需要把文件上传到阿里云服务器,简单记录一下,看了很多文章都没有标出来使用的jar包,首先maven项目在pom文件里添加<dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <ver...原创 2019-11-26 18:07:57 · 10491 阅读 · 0 评论 -
eclipse打包spring boot项目成jar包的问题
当我们按照步骤在eclipse里打包时1.右击项目,选择Run As - Maven clean2.右击项目,选择Run As - Maveninstall在这步时报错:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compi...原创 2019-11-26 18:18:15 · 9511 阅读 · 0 评论 -
spring boot项目读取配置文件的参数
我们在接入用户系统时需要将接口地址,错误地址,调用地址写入到配置文件里,我们使用的是.yml文件,在application.yml中写入需要写入的地址.yml必须规定格式编写#根据token获取用户信息的接口地址token-url: "xxx"#错误返回的地址error-url: "xxx"#正确返回的地址success-url: "xxx"在代码中直接通过@Value("参...原创 2019-11-27 10:10:23 · 9474 阅读 · 0 评论 -
java使用poi导出word并且带图片
最近在开发中有按照模板导出word的需求,并且把echarts图例附到word里,我开始使用freework取ftl模板的,不过由于转换麻烦,需定义好格式xml再转为ftl文件所以改为使用poi取word模板直接赋值的方式,并且通过拼接标签实现图片的附带和定义宽度高度。1、controller代码package com.springboot.util;import java.io....原创 2019-12-04 15:27:28 · 15132 阅读 · 1 评论