java
我只是代码搬运工
这个作者很懒,什么都没留下…
展开
-
使用micronaut创建基于maven的web工程集成jpa实现crud
使用micronaut创建基于maven的web工程,集成jpa连接mysql数据库,实现简单crud原创 2022-09-15 18:00:59 · 543 阅读 · 0 评论 -
spring boot整合quartz实现分布式任务调度
说明日常开发中常常会用到定时任务,在springBoot中我们通常使用@EnableScheduling和@Scheduled(cron = “0/10 * * * * ?”),就能完成定时任务的使用。但是在集群环境中就出现一个任务同时执行多次,造成数据异常等严重问题。下面是一种分布式任务的解决方式使用 quartz、curator和zk来解决问题先来看看效果启动zookeeper,再启动服务1,服务2quartz1先启动,优先抢占到leader,执行任务现在停掉quartz1,quar原创 2022-05-11 14:51:14 · 1621 阅读 · 1 评论 -
spring boot minio
minio安装版本说明Spring Boot 版本:2.6.1添加依赖<dependency> <groupId>io.minio</groupId> <artifactId>minio</artifactId> <version>8.0.3</version></dependency><dependency> <groupId>org.ap原创 2022-04-28 16:21:14 · 488 阅读 · 0 评论 -
windows安装MinIO
MinIO下载下载地址版本查看进入minio.exe所在的目录,使用minio.exe -version命令查看启动进入minio.exe所在的目录,使用 minio.exe server D:\ 命令启动minio服务,将D:\替换为希望 MinIO 存储数据的驱动器或目录的路径web访问在浏览器输入:http://localhost:9000/ ,进入minIO登录界面。用户名:minioadmin密码:minioadmin官方文档分布式MinIO快速入门...原创 2022-04-28 10:06:39 · 2339 阅读 · 0 评论 -
jdbc连接数据库实现增、删、改、查
引入驱动<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.27</version></dependency>创建连接public class JDBCStatement { private static final Logger原创 2022-04-27 15:58:25 · 155 阅读 · 0 评论 -
设计模式之模板方法模式-解析binlog
binlog中记录数据的增、删、改操作;用模板方法模式和静态工厂模式来处理binlog解析依赖<dependency> <groupId>com.zendesk</groupId> <artifactId>mysql-binlog-connector-java</artifactId> <version>0.25.5</version></dependency>获取binlog文原创 2022-04-26 14:41:59 · 332 阅读 · 0 评论 -
设计模式之责任链模式
责任链模式将处理对象像一条长链一样链接起来,形成一条对象链。以创建用户为例,需要检查输入内容,验证用户是否存在及权限登,还要保存用户及其它处理。可以通过责任链模式将代码解耦接口public interface UserService { boolean addUser(String name, String pwd);}检查输入信息/** * 检查输入信息 */public class CheckUserService implements UserService {原创 2022-04-25 16:31:48 · 73 阅读 · 0 评论 -
设计模式之观察者模式
观察者模式定义了对象间的一种一对多的依赖关系,当对象的状态发生改变时,所有依赖于它的对象都将得到通知被观察者public class ObservedTest extends Observable { private ObservedTest() {} public void notify(String data) { this.setChanged(); this.notifyObservers(data); } public st原创 2022-04-25 16:22:46 · 313 阅读 · 0 评论 -
设计模式之单例模式
单例模式是指在任何情况下一个类只有一个实例,并提供一个全局访问点饿汉式单例public class SingletonTest { private static final SingletonTest singleton = new SingletonTest(); private SingletonTest() { } public static SingletonTest getInstance() { return singleton;原创 2022-04-25 14:49:12 · 56 阅读 · 0 评论 -
spring boot 集成jwt
版本说明Spring Boot 版本:2.6.1redis 版本:6.2.6jwt 版本:0.6.0redisson 版本:3.13.6创建拦截器配置除了/token开头的地址都拦截@Configurationpublic class InterceptorConfiguration extends WebMvcConfigurationSupport { @Autowired private TokenHandlerInterceptor tokenHandlerIn原创 2022-04-25 11:48:36 · 1320 阅读 · 0 评论 -
spring boot 集成定时任务
版本说明Spring Boot 版本:2.6.1添加web依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>在启动类上添加注解开启任务支持@SpringBootApplication@EnableSchedulin原创 2022-04-25 10:57:10 · 500 阅读 · 0 评论 -
spring boot 集成redisson与redisson lua脚本
版本说明Spring Boot 版本:2.6.1redis 版本:6.2.6依赖<dependency> <groupId>org.redisson</groupId> <artifactId>redisson-spring-boot-starter</artifactId> <version>3.13.6</version></dependency>连接地址配置red原创 2022-04-22 16:21:45 · 1077 阅读 · 0 评论 -
java二分查找法
给定一个有n个元素的有序(升序)整型数组和一个目标值,找到目标值在数组中的位置,如果目标值存在返回下标,否则返回 -1 public static void main(String[] args) { System.out.println(search(new int[]{1,3,5,7,12,21}, 7)); } private static int search(int[] nums, int target) { // 头指针 i原创 2022-04-21 13:57:33 · 663 阅读 · 0 评论 -
逆波兰式四则运算
package algorithm;import java.util.*;import java.util.regex.Pattern;/** * 四则运算,逆波兰式 */public class FourOperation { private static Pattern pattern = Pattern.compile("-?[0-9]+(\\.[0-9]+)?"); private static List<String> allOperatorList原创 2022-04-20 17:44:57 · 232 阅读 · 0 评论 -
spring boot 集成elasticsearch 创建mapping
版本说明Spring Boot 版本:2.6.1elasticsearch 版本:7.15.2依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId></dependency>连接地址配置es.host=127.0.原创 2022-04-15 16:26:32 · 3250 阅读 · 0 评论 -
java 8 Stream 分割集合
List<String> testList = Arrays.asList("aaa", "bbb", "ccc", "ddd", "eee", "fff", "ggg", "hhh", "iii", "jjj", "kkk");int pageSize = 3;int limit = (testList.size() + pageSize - 1) / pageSize;Stream.iterate(0, n -> n + 1).limit(limit).parallel()原创 2022-04-15 16:02:45 · 1236 阅读 · 0 评论 -
java 数字排列组合
n个无序不重复0~9的数字,输出n位的所有可能例如:输入1,2,3;输出:123, 132, 213, 231, 312, 321可以使用遍历+递归方式实现,大概思路如图:private static List<Integer> list = new ArrayList<>();public static void main(String[] args) { combination(1,2,3,4);}public static void combinati原创 2022-04-15 15:59:48 · 2525 阅读 · 0 评论 -
java线程池原理
线程池的好处复用线程控制资源数量创建方式Executors.newFixedThreadPool(1); // 固定线程数量的线程池Executors.newCachedThreadPool(); // 可以缓存的线程池Executors.newSingleThreadExecutor(); // 只有一个核心线程的线程池Executors.newScheduledThreadPool(1); // 定时器线程池但是阿里巴巴开发文档中不建议使用上面方式创建线程池,推荐使用ThreadP原创 2021-02-21 20:26:12 · 106 阅读 · 0 评论 -
java获取最后一个单词的长度
给定一个字符串, 包含大小写字母、空格。请返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0注意事项一个单词的界定是,由字母组成,但不包含任何的空格。示例:输入: “Hello World”输出: 5代码:public static int getLengthLastWord(String str) { if (StringUtils.isEmpty(str)) { return 0; } // 指向最后一个字符串 ..原创 2021-02-20 21:07:37 · 487 阅读 · 0 评论 -
java流式数据处理stream
说明java 8种添加了一种声明的方式处理数据Stream。可以让程序员写出高效率、干净、简洁的代码。这种风格将元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 如筛选, 排序,聚合等。forEach用来迭代流中的每个数据List<Integer> numbers = Arrays.asList(1, 2, 3);numbers.stream().forEach(System.out::println);filter用于过滤元素List<Integ原创 2020-06-23 20:26:52 · 424 阅读 · 0 评论 -
elasticsearch简单操作封装
接口public interface ESBasicService { boolean indexExists(Class<?> clazz); boolean deleteIndex(Class<?> clazz); boolean createIndexAndMapping(Class<?> clazz); <T> boolean saveData(T data); <T> Integer saveDatas(Co原创 2020-06-22 22:13:00 · 796 阅读 · 0 评论