版本java jar jdk
开发了一个Java库的Google Bard API,可以自动化与AI对话了
开发了一个Java库的Google Bard API,可以自动化与AI对话了 Google Bard是Google提供的还在实验阶段的人工智能对话服务。这明显是对标ChatGPT来的,它可以提供更实时的答案,会基于Google强大的网页数据。 为了更方便的使用并实现自动化,我写了一个Java类库,G ......
Java 线程池
相信在实际工作中,大家对于线程池的使用并不陌生,例如以下几个应用场景: 支付成功之后,异步发送短信通知用户; 公司的OA系统中,提交某些申请之后,异步发送给各个部门负责人进行审批; 请求某个接口时,需要做些日志上报之类的记录。 线程池的使用 下边是一个非常简单的线程池使用案例: public cla ......
java中的CompletableFuture的实现异步操作的基本介绍
在CompletableFuture类中,存在四种异步操作方法: 第一种: public static CompletableFuture<Void> runAsync(Runnable runnable) { return asyncRunStage(ASYNC_POOL, runnable); ......
Java/Kotlin 使用Redis模拟发送验证码
原文地址: Java/Kotlin 使用Redis模拟发送邮件验证码 - Stars-One的杂货小窝 Java中常用语连接Redis的库有lettuce和jredis,一般是推荐lettuce,其具有异步性,下面两种都简单来使用如何实现功能 jredis 1.引入依赖 <dependency> < ......
java时间戳转换
1、时间戳(毫秒) System.currentTimeMillis() 2、时间戳(转秒) System.currentTimeMillis() / 1000 3、时间戳(转分钟) System.currentTimeMillis() / 1000 / 60 4、时间戳(转小时) System.c ......
java——Zookeeper学习——zk概览转载
一、ZooKeeper简介 ZooKeeper是一个分布式协调服务,提供了诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知和分布式锁等分布式基础服务。 1.1、数据结构 ZooKeeper采用znode的树状层级结构来存储信息,znode节点可能包含数据也可能没有数据,znode存储数据格式 ......
java学习日记20230325-模版设计模式
模版设计模式 利用多态的动态绑定,将通用的方法设计为模版抽象类,通过子类继承重写抽象方法实现模版调用。 父类抽象类 abstract public class Template { public void calculateTime(){ long start = System.currentTim ......
Java获取IP和MAC值
import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.net.UnknownHostException; public class Mac ......
【Java学习笔记】 apache-maven安装
maven与jdk版本对应关系 https://maven.apache.org/download.cgi maven在windows下的安装与环境配置 以3.9.1版本为例 1. 官网下载 2. 解压(记住路径) 3. 设置环境变量 我的电脑-属性-高级系统设置-环境变量 ① 新建两个系统变量 变 ......
Java环境变量了解及配置
1.JDK 这个是首先要了解的知识 JDK:Java开发工具包,是学习java必须安装的的软件 JDK包括 Java开发工具和JRE(Java运行环境) JRE又包括基础类库和JVM虚拟机 正是有各种操作系统的JVM,Java程序才可以一次编译,到处运行 2.下载与安装JDK 去官网找最需要的:ht ......
CentOS 7.8配置Java环境
一、安装CentOS 7.8 关闭防火墙 systemctl stop firewalld systemctl disable firewalld 关闭SELINUX setenforce 0 vi /etc/selinux/config 将SELINUX=enforcing改为SELINUX=di ......
Java 原子类
Java 内部提供了两种方式来解决线程安全问题,一种是加入synchronized 关键字,另一种则是使用 Lock 锁。虽然说这两种方式都能解决掉线程安全的问题,但是在某些场景下会稍微有些麻烦,例如下边这个场景,每次请求接口都会对 reqCount 做一次加一操作: @RestController ......
Jmeter压测报错java.net.BindException: Address already in use: connect
压力测试并发较高时候,可能会出现 Address already in use 异常java.net.BindException: Address already in use: connect at java.base/java.net.PlainSocketImpl.connect0(Nativ ......
读Java性能权威指南(第2版)笔记27_线程和同步性能上
1. 线程和硬件 1.1. 给CPU增加超线程并不能使应用程序性能翻倍 2. 线程池 2.1. 任务被提交到一个队列(可能有不止一个队列),然后一定数量的线程会从队列中取出任务并执行它们 2.2. 线程池的大小对获取最佳性能至关重要 2.2.1. 在某些情况下,过大的线程池会对性能造成损害 2.3. ......
java拓展
import java.math.BigDecimal; public class Demo03 { public static void main(String[] args) { //二进制0b 八进制0 十进制 十六进制0x int i=10; int i1=010;//八进制0 int i2 ......
🍍踩坑:SpringBoot打jar包运行出现错误(没有主清单属性)
我是使用Spring Initializr创建的SpringBoot项目,下面看下给我自动生成的pom文件: <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> ......
MySQL 8.0.0 开发里程碑版本(DMR)发布!
MySQL 为何从 5.x 一下跳跃到了 8.0。事实上,MySQL 5.x 系列已经延续了很多年,从被 Oracle 收购之前就是 5.1,而收购之后一直维持在 5.x,比如 5.5,5.6,5.7 等等。 MySQL 开发团队于 12 日宣布 MySQL 8.0.0 开发里程碑版本(DMR)发布 ......
闭关学java第三天
包机制 包机制语法格式为: package pkg1[.pak2[.pak3...]] 一般利用公司域名倒置作为包名; 为了能够使用某个包的成员,我们需要再java程序中明确导入该包,使用“import”语句可以完成此功能 JavaDoc javadoc命名是用来生成自己的API文档的 参数信息 @ ......
Java书城项目Sevelet基本逻辑介绍(增删改查)
书城项目 登录 dao 接口:UserDao Users login(String username,String password); 实现:UserDaoImpl QueryRunner queryrunner = new QueryRunner(); Connection connection ......
Java第二次作业
1 输入年份月份,输出该月的天数(闰年2月29天,条件参考上机练习1) package wen; import java.util.Scanner; public class Test { public static void main(String[] args) { // TODO Auto-g ......
Java第二次作业
1.输入年份月份,输出该月的天数(闰年2月29天,条件参考上机练习1) package fjr; import java.util.Scanner; public class Work { public static void main(String[] args) { // TODO Auto-g ......
Java的诞生
JAVA的初步认识 JAVA帝国的诞生 1972年C诞生 贴近硬件:运行极快,效率极高 操作系统:编泽器,数据库,网络系统等。 指针和内存管理 1982年C++诞生 面向对象 兼容C 图像领域,游戏等 我们要建立一个新的语言 语法有点像C 没有指针 没有内存管理 真正的可移植性,编写一次,到处运行 ......
Java学习笔记(九)网络编程
网络编程 概述 计算机网络: 计算机网络是将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。 网络编程的目的: 无线电台···传播交流信息,数据交换,通信 想要达到这个效果需要什么 ......
Java面试-基础篇(一)6
#synchronized与ReentrantLock的区别 说到synchronized与ReentrantLock,我们都知道,他们是java并发编程很重要的技术。他们可以帮助我们保证编程过程中数据的正确性,也就是我们常说的线程安全。 线程安全通常是多个线程在执行一段代码时采用锁机制实现的。 介 ......
java学习日记20230325-抽象类
抽象类: 当父类的某些方法需要声明,但是又不确定如何实现时,可以将其声明为抽象方法,那么这个类就是抽象类! 所谓抽象方法,就是没有实现的方法; 当一个类中存在抽象方法时,需要将该类声明为Abstract类; 一般来说,抽象类会被继承,由其子类进行重写; 用abstract来修饰一个类时,这个类就是抽 ......
java学习日记20230324-final关键字
final可以修饰类,方法,属性和局部变量 当不希望类被继承时,用final修饰类 当不希望父类某个方法被子类重写时,使用final 当不希望某个属性值被修改时 当不希望某个局部变量被修改时 final使用注意事项和细节: final的属性又叫常量,一般XX_XX命名; final的属性在定义时,必 ......
jar包替换路径
解决jar冲突解决方法之一 java -jar jarjar-1.4.jar process rule.txt 需替换的.jar 替换后.jar rule com.jacob.** com.yjy.jacob.@1 rule 原包 新包 文件下载 https://wwo.lanzouy.com/iF ......
Java第二次作业
1.输入年份月份,输出该月的天数(闰年2月29天) import java.util.Scanner; public class Text { public static void main(String[] args) { // TODO Auto-generated method stub Sc ......
jdk的动态代理
jdk动态代理:(jdk动态代理,必须有接口) 1-Calculator接口内容: public interface Calculator { int add(int i, int j); int sub(int i, int j); int mul(int i, int j); int div(i ......