Java
郝你个建强
小厂程序员,关注不迷路
展开
-
oracle无效数字无效字符
使用jdbc批量插入的时候遇到这个报错。update FLINKUSER.TBL_1 set C2='updatetext' where C1=2问题解决:1、 = 前后不能有空格2、语句后面不能加 ; 分号oracle这种无聊的问题真的是烦死人了原创 2022-05-18 20:02:23 · 595 阅读 · 0 评论 -
Java使用UniRest发送Http/Https请求
使用UniRest发送POST、GET、PUT、DELETE请求非常方便,还可以用各种格式的请求体发送请求,比如params格式、body的raw、form-data格式等等。使用方法如下首先引入maven包,作为依赖包。 <dependency> <groupId>com.konghq</groupId> <artifactId>unirest-java</artifactId> .原创 2021-12-23 16:20:52 · 5501 阅读 · 2 评论 -
java使用LinkedHashMap实现LUR算法
概述LRU是Least Recently Used的缩写,即最近最少使用算法。通俗来讲就是没被调用的往后靠,被调用的往前靠,位置不够的时候就淘汰最后一个。LinkedHashMap实现java实现可以通过重写LinkedHashMap的removeEldestEntry方法来实现淘汰机制。import java.util.LinkedHashMap;import java.util.Map;/** * @Author JQiang * @create 2021/4/6 17:原创 2021-04-06 20:16:35 · 5858 阅读 · 0 评论 -
vue前端+springboot后台实现人脸识别签到系统
项目背景:临近大四毕设,选了一个高校课时管理系统的项目,欠于没有什么可以拿得出手的亮点,老师建议我加入人脸识别的功能(都是唬人的,人脸识别早已有现成的接口,百度ai免费使用)。这里先展示一下成果吧。登录界面就是这样,用的vue,b站跟着黑马学了一半。主界面也是根据自己的接口改了一些。下面看一下人脸识别系统先上传自己的照片到百度ai的服务器里。我的项目需求是设计的人脸识别签到,so,识别成功,百度的ai还是很强的~前端后台代码我都开源了,放在github里了,需要的.原创 2018-10-27 19:07:59 · 36163 阅读 · 21 评论 -
Java并发中的锁
公平锁/非公平锁这个是在ReentrankLock中实现的,synchronized没有,是用一个队列实现的,在公平锁好理解,就是先进这个队列的,也先出队列获得资源,而非公平锁的话,则是还没有进队列之前可以与队列中的线程竞争尝试获得锁,如果获取失败,则进队列,此时也是要乖乖等前面出队才行可重入锁如果一个线程获得过该锁,可以再次获得,主要是用途就是在递归方面,还有就是防止死锁,比如在一个同步...转载 2020-03-20 14:57:29 · 185 阅读 · 0 评论 -
最大公约数公式不用加号实现加法
最大公约数int gcd(int a,int b){ return a%b == 0?b:gcd(b,a%b);}最小公倍数int lcm(int a,int b){ return a*b / gcd(a,b);}不用 + 号 实现加法减法int add(int a , int b){ return b == 0 ? a:add( a^b , ...原创 2019-12-04 19:18:39 · 224 阅读 · 0 评论 -
GeoHash 地图算法
之前接手了学长的一个地图项目,学长说可以把地图的经纬度用Geohash算法换成字符串,下来了解了一下Geohash算法是将二维的经纬度转换为了一维的字符串,这样相近的点字符串相似的前缀就越多,这样充分利用了数据库的B树索引,速度大大提高GeoHash的算法字符串位数越长代表精度越高,8位误差约为19M字符串的由来:1、根据经纬度计算出GeoHash的二进制编码将...原创 2019-10-28 21:23:49 · 1514 阅读 · 0 评论 -
Java爬取豆瓣电影Top250并使用Mybatis框架存储数据
结果部分截图如下我使用的是 IntelliJ IDEA ,首先先建立一个普通的maven项目先创建一个实体类来存储电影信息/** * 存储页面信息实体类 */public class Page { //id private int id; //评论数 private String commentcount; //电影名称 ...原创 2019-10-17 22:14:27 · 110714 阅读 · 1 评论 -
多线程——Semaphore
一、Semaphore的作用Semaphore是控制线程并发数量的,可以通过Semaphore来控制线程的执行顺序与逻辑简单介绍一下怎么使用//参数为 1 代表 s1 有 1块钱 ,就和超市使用购物车一样,要插入一元硬币才能使用//acquire()这句话就代表你把这一块钱租购物车,release()这句话是相反的,是把一块钱拿回来的Semaphore s1 = new Se...原创 2019-09-24 21:48:53 · 11162 阅读 · 1 评论 -
冒泡快排选择插入希尔排序
1.选择排序每次把未排序的数组中的最小值放到当前位置。循环一定次数就达到了排序效果 public static void main(String[] args) { int[] nums = {9, 5, 2, 7, 1}; for (int i = 0; i < nums.length - 1; i++) { for ...原创 2019-08-05 17:04:16 · 15527 阅读 · 0 评论 -
多线程中需要理解的名词
同步异步同步和异步通常用来形容一次方法的调用,同步方法一旦调用,调用者必须等到方法返回后才能继续向下执行,异步调用方法会立刻返回,继续执行接下来的操作,而异步方法通常是开另一个线程去执行这个方法。临界区临界区表示公共资源,可以被多个线程使用,但每次只能由一个线程使用,其他线程等待。阻塞和非阻塞阻塞:一个线程占用了临界资源,那么其他所有需要这个资源的线程就必须在这个临界区中等待,等待的线程...原创 2019-08-13 21:51:41 · 158 阅读 · 0 评论 -
HashMap源码解析
这是hashmap的基本数据结构看一下源码static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // 默认初始容量static final int MAXIMUM_CAPACITY = 1 << 30; //最大容量为2的30次方static final float DEFAULT_LOA...原创 2019-06-10 21:36:13 · 130 阅读 · 0 评论 -
Java实现简单的学生管理系统
在java控制台上实现学生信息的管理环境:ide + mysql数据库:学生的一张表老师的一张表:目录建成后是这样的:实现的功能有:教师登陆1、学生信息添加2、学生信息查看3、学生信息删除4、学生信息查询5、学生信息排名6、教师修改密码教师注册学生登陆1、信息查看2、信息修改退出denglu->studentdenglupac...原创 2019-04-15 20:07:11 · 16346 阅读 · 6 评论 -
java—类面向对象
java类的概念我们初学编程语言大多是c语言,而c语言是面向过程的,Java是面向对象的,这一点要明确什么是类呢?拿C语言来说,类就相当于一个集变量、函数于一体的大容器,当你想用某个功能的时候,就创建一个大容器,这里的类相当于一个模板,每个容器都按照这个模板来创建,这时候你可以把参数放入你创建的这个容器里,然后返回处理结果,这样就形成了对象的概念。一些常用的类1.Math类:三...原创 2018-06-09 11:40:21 · 780 阅读 · 0 评论