自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 基于Velocity开发代码生成器

在项目开发中,我们有碰到大量的简单、重复的增删改查需求,通过阅读若依框架https://github.com/yangzongzhuan/RuoYi 的代码生成器实现,结合我项目所用的技术栈,开发出本项目的代码生成器。Velocity是一个基于Java的模板引擎,我们可以往Context容器中填值,在vm文件中使用模板语言(Velocity Template Language)获取变量的值,

2023-07-28 18:56:19 1104

原创 Netty入门教程

简单介绍Java原生BIO, NIO:BIO : 阻塞式IO,服务端程序: accept() 监听客户端访问引入多线程: 客户端连接数很多时容易爆发OOM引入线程池: 并发度受线程池的最大线程数跟阻塞队列大小限制NIO :New IO/ 非阻塞IO, 其实是IO多路复用, epoll linux实现: epoll_create, epoll_ctl, epoll_wait缺点:类库和API繁杂,使用麻烦, 开发工作量较大Epoll Bug, 导致 Selector空轮

2021-04-04 13:50:22 1185 1

原创 解决docker下载速度慢问题

进入 etc/docker/daemon.json, 没有就新建,加上如下配置:{ "registry-mirrors":["https://almtd3fa.mirror.aliyuncs.com"] }

2021-02-23 09:41:58 750

原创 mybatis-plus无法解析Date()问题

碰到一个需求是统计每日的数据量,数据库里只存了一个创建时间,具体到分钟的。刚开始写了一版代码: QueryWrapper<Threat> queryWrapper = new QueryWrapper<>() // DATE(find_time) 无法解析,返回为null queryWrapper.select("DATE(find_time) date" , "count(*) count"); queryWrapp

2021-01-23 18:24:27 1799

原创 java连接RabbitMQ遇到的坑

java客户端连接远程主机上的 rabbitmq 代码:ConnectionFactory factory = new ConnectionFactory();factory.setUsername("admin");factory.setPassword("123456");factory.setVirtualHost("/");factory.setHost("host"); //远程主机地址factory.setPort(5672);Connection conn = factory

2021-01-10 10:17:50 1318

原创 解决@EnableEurekaServer无法导入,项目启动报错问题

原因是springboot与springcloud的支持版本不一致Spring官方详细版本对应:https://start.spring.io/actuator/info例:SpringBoot : 2.1.6.RELEASE <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</

2020-12-10 16:12:10 1216

原创 Mybatis常见问题(整理版,持续更新)

Mybatis常见问题1、MyBatis和ORM的区别: mybatis属于半orm,因为sql语句需要自己写。mybatis 并没有将 java 对象与数据库关联起来,而是将 java 方法与 sql 语句关联起来2、MyBatis实现分页:Mysql数据库: limit, 需要自己处理分页逻辑使用PageHelper插件3、#{}, ${} :#{} : 预编译处理, 传进来的数据会 加 单引号${} : 字符串替换, 直接替换掉占位符, 为了防止 SQL 注入,能用 #{}

2020-10-24 23:32:55 473 1

原创 No enum constant org.jetbrains.jps.model.java.LanguageLevel.JDK_12

使用IDEA启动项目时爆发异常:java.lang.IllegalArgumentException) No enum constant org.jetbrains.jps.model.java.LanguageLevel.JDK_12java.lang.IllegalArgumentException: No enum constant org.jetbrains.jps.model.java.LanguageLevel.JDK_12根据报错,为jdk版本问题如图:打开IDEA右上角的模块图标:

2020-10-23 22:11:22 696 2

原创 JDK1.7的HashMap要点,源码分析

JDK1.7的HashMap源码分析JDK1.7的HashMap实现方式是:数组 + 链表, 实际上就是一个Entry 数组, 数组的长度必须是 2 的幂,存储的是一个键值对, k,v 都允许为null,是线程不安全的, 并且无序首先查看类的结构, 继承了 AbstractMap, 实现了 Map接口public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cl

2020-10-12 10:58:13 194

原创 迭代器的 ConcurrentModificationException

迭代器的 ConcurrentModificationException在使用迭代器遍历 HashMap, ArrayList时碰到了这个异常,碰到异常莫得慌,仔细分析,不难发现,出现异常的语句是: map.remove(key)。 在遍历时,有其他线程,修改了集合,直接就抛出异常。解决方案:是使用迭代器的删除方法 : its.remove() 删除当前元素,那么为什么会出现呢??我们都知道 HashMap, ArrrayList 都是线程不安全的,HashMap的成员属性 modCount

2020-10-11 22:42:52 503

原创 ArrayList 与LinkedList 源码分析,效率比较

ArrayList 与LinkedList 源码分析,比较ArrayList , LinkedList都是 List接口的实现类, ArrayList 底层是一个Object数组, LinkedList是一个双向链表,他们都是线程不安全的ArrayList先看看变量吧:elementData : ArrayList数据的存放位置, 一目了然,是一个Object数组, 修饰符 transtient 的作用是使得该变量不能再被序列化DEFAULT_CAPACITY : ArrayList的

2020-10-11 16:55:45 572 5

原创 java连接mysql数据库,mysql5.x与mysql8的区别

java连接mysql数据库,mysql5.x与mysql8的区别首先 连接mysql数据库需要导入jar包: mysql-connector-java-8.0.20.jar下载地址: https://dev.mysql.com/downloads/connector/j/然后: mysql数据库的URL:mysql8.0 : “jdbc:mysql://localhost:3306/demo?useSSL=false&serverTimezone=Asia/Shanghai&

2020-06-06 16:43:51 2221 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除