自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 Excel批量生成sql语句函数

="UPDATE i_healthcard_master SET patient_id = '"&A1&"' WHERE ID = '"&B1&"';"="INSERT INTO mem_patient (ID, C_CREATE_DATE, C_DELETE_FLAG, C_NAME,C_MOBILE, C_MEMBER_ID, customer_id) VALUES('"&A2&"', NOW(), 0, '"&B1&"', '"&..

2021-01-12 11:10:41 317

原创 Cannot parse date “2020-08-31 00:00:00“: while it seems to fit format ‘yyyy-MM-dd‘T‘HH:mm:ss.SSS

报错内容Cannot parse date "2020-08-31 00:00:00": while it seems to fit format 'yyyy-MM-dd'T'HH:mm:ss.SSS报错原因这种格式springboot中不能识别并转化。它会抛出异常信息,提示转换失败解决方法 @JsonFormat(shape= JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") @ApiParam(va

2020-12-29 18:47:10 4228

原创 jvm简述

一次编译到处运行是如何实现的Java程序从编写到运行需要:首先编写Java源代码,然后通过Javac编译器将Java源代码编译成.class字节码文件,然后把字节码文件交由jvm虚拟机,虚拟机会在执行Java程序的时候把字节码转换为二进制的机器码执行。字节码文件是平台无关性的重要一环,Java能在不同平台上运行,是依托了不同平台上不同的Java虚拟机。不同的虚拟机会根据同一份字节码文件转换...

2019-10-10 15:35:44 394

原创 Mysql 大表在线DDL添加表字段/修改表全文索引解决方式

添加字段ALTER TABLE `rmb_order_item` ADD COLUMN `asset_snapshot` varchar(5000) NOT NULL DEFAULT '' COMMENT '设备快照' AFTER `item_snapshot`,ALGORITHM=INPLACE, LOCK=NONE;添加主键索引 ALTER TABLE `table_name...

2019-09-20 11:30:52 1331

原创 使用redis实现分布式锁

SET操作会覆盖原有值,SETEX虽然可设置key过期时间,但也会覆盖原有值,所以考虑可以使用SETNX使用redis的setnx「SET if Not eXists」实现。只在key不存在的情况下,将key值设为valuekey存在,不做任何操作redis> EXISTS job # job 不存在(integer) 0redis&gt...

2019-08-28 14:23:25 197

原创 Redis之JedisCommand接口说明

import java.util.List;import java.util.Map;import java.util.Set;/*** Common interface for sharded and non-sharded Jedis */public interface JedisCommands { /** * 存储数据到缓存中,若key已存在则覆盖 v...

2019-08-28 10:55:10 500

原创 微信代公众号授权登录踩过的坑

代公众号发起网页授权在公众号授权托管给第三方平台后,第三方平台可以根据官方文档相关说明,代替授权公众号发起网页授权。官方文档GitHub下图是我开发测试截图,比邻用户中心是第三方公众号,此时已授权托管给我们自己的微信公众平台,此时发起网页授权,用户同意后即可获取用户相关信息。授权流程:1、根据appid获取预授权码code2、根据code获取accessToken...

2019-05-22 17:37:39 4178

原创 mysql清除表重复数据

表信息CREATE TABLE `rmb_item_material` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `store_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '商店id', `item_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '商品...

2019-04-23 14:37:37 570

原创 HashMap 扩容resize方法以及哈希碰撞

final Node<K,V>[] resize() { Node<K,V>[] oldTab = table; //原始table容量 int oldCap = (oldTab == null) ? 0 : oldTab.length; //原始table阈值 int oldThr = th...

2019-04-12 15:46:45 575

原创 针对Java8的HashMap get与put方法分析

和JDK1.6的HashMap结构不同的是,JDK1.6中HashMap采用的是位桶+链表的方式,即我们常说的散列链表的方式,而JDK1.8中采用的是位桶+链表/红黑树的方式,也是非线程安全的。当某个位桶的链表的长度达到某个阀值的时候,这个链表就将转换成红黑树。public class HashMap<K,V> extends AbstractMap<K,V> ...

2019-04-12 14:21:02 228

原创 关于日常开发Java8流处理max()随笔

Stream字节流接口max方法,需要传入一个Comparator比较器,可看到若没有最大的元素会返回null/** * Returns the maximum element of this stream according to the provided * {@code Comparator}. This is a special case of a *...

2019-03-27 10:52:25 4705

原创 由数组、链表、双链表引发的ArrayList、LinkedList源码分析

最近看了数据结构与算法分析(Java语言描述)书中表一章节,总结下。List继承了Collection接口,因此包含Collection接口所有方法先看ArrayList的add()方法/** * Appends the specified element to the end of this list. * * @param e element ...

2019-03-26 10:57:04 189

原创 Collectors.toMap出现NPE空指针的解决办法

一次在使用Collectors.toMap()方法遇到一个问题出现了NPE异常debug定位到userResponses中有的name值为null,导致转map的时候value值为空,抛出NPE异常Collectors.toMap底层是基于Map.merge方法来实现的,而merge中value是不能为null的,如果为null,就会抛出空指针异常在openJDK的bu...

2019-02-12 11:24:30 7247 2

原创 JDK动态代理

JDK动态代理主要是实现InvocationHandler接口,在invoke方法中实现代理逻辑业务接口package AOP.jdk;public interface userDao { public void addUser();}实现类package AOP.jdk;public class userDaoImpl implements userDao{...

2018-09-26 16:51:14 144

原创 sql调优之添加索引

当数据库单表数据量非常大的时候,使用普通查询耗时非常多,默认会根据搜索条件全表扫描;添加索引后,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速度。添加索引的话,首先去索引列表中查询,而我们的索引列表是B类树的数据结构,查询的时间复杂度为O(log2N),定位到特定值得行就会非常快,所以其查询速度就会非常快。我们这里有一张表,有67万条数据...

2018-08-29 14:45:44 24573

原创 win7安装activemq启动报错

启动/bin/win64目录下activemq.bat时报错,出现BeanFactory not initialized or already closed - call 'refresh' before accessing beans修改/conf/activemq.xml&lt;transportConnectors&gt; &lt;!-- DOS pro...

2018-07-31 14:34:44 634

原创 java解析http+json数据包

/** * 回调函数 *  * @param request * @param response */ @RequestMapping(value = "/call", method = RequestMethod.POST) public void callback(HttpServletRequest request, HttpServletResponse respo...

2018-07-16 16:43:18 1367

原创 重入锁ReentrantLock、死锁和中断响应

import java.util.concurrent.locks.ReentrantLock;public class IntLock implements Runnable{ //重入锁ReentrantLock public static ReentrantLock lock1 = new ReentrantLock(); public static ReentrantLock l...

2018-06-13 10:05:10 2998 1

原创 线程池的实现

使用线程池的好处:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。 提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。某些流程中的一些节点,由于是串联执行的。上一步要等下一步执行完毕;或者提交数据之后要等待后台...

2018-06-06 10:00:57 13403 4

原创 JSP+Servlet+mysql实现原生分页

   简单实现了分页、删除、更新操作,原生分页其实很简单,只需要获取当前页数以及每页显示条数,通过后台查出当前页数据存入List集合中,然后request.setAttribute()将结果反馈给jsp整个工程输入localhost:8080/Page/PageServlet即可访问数据库cby    localhost:3306user    user_id    username数据库连接pa...

2018-06-01 12:26:18 4714 2

简单学生信息管理系统(Swing版)

(1) 利用文件来存储用户名、密码,实现一个登录验证的程序,验证用户输入的用户名、密码是否正确,正确显示学生信息浏览主窗口,不正确弹出对话框提示错误,并要求用户重新输入。 (2) 在主窗口上有一个菜单,菜单项有“新建”、“浏览”。 (3) 在“新建学生信息”窗口中,输入实验VI学生类中的ID、NAME、MATH、JAVA信息。单击保存按钮,用文件存储学生信息。 (4) 在“浏览学生信息”窗口中,用前一个、后一个浏览所有学生信息。 (5) (选做)增加修改按钮,修改学生信息,并保存在文件中;增加删除按钮,删除当前学生信息。

2015-07-07

空空如也

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

TA关注的人

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