自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Docker部署Java项目的简单流程

Docker部署Java项目入门案例

2024-05-16 17:56:49 274

原创 cola-statemachine 优化if else代码

【代码】cola-statemachine 优化if else代码。

2023-07-12 11:09:29 229

原创 non-static inner classes like this can only by instantiated using default, no-argument constructor

【代码】non-static inner classes like this can only by instantiated using default, no-argument constructor。

2023-06-29 12:11:27 846

原创 JPA 框架使用nativeQuery ,返回List<Object[]> 封装JAVA对象

【代码】JPA 框架使用nativeQuery ,返回List<Object[]> 封装JAVA对象。

2023-06-29 10:41:31 576

原创 使用MySQL 自带函数计算时间间隔

【代码】使用MySQL 自带函数计算时间间隔。

2023-06-09 10:56:26 120

原创 借助ResponseBodyAdvice 封装统一返回类

【代码】借助ResponseBodyAdvice 封装统一返回类。

2023-05-29 11:16:01 79

原创 当MySQL 字段为 NULL时,查询结果可能出错

2.设计表,可以设置空值(‘’)或 0 作为其默认值。,可读性更好,执行效率也更快一些。来判断 NULL 值,相比。

2023-05-25 09:43:24 498

原创 概率抽奖算法

【代码】概率抽奖算法。

2023-03-23 15:22:58 172

原创 如何读取properties文件配置,完成对象属性赋值

【代码】如何读取properties文件配置,完成对象属性赋值。

2023-03-03 11:54:53 117

转载 MySQL 自增主键不连续的四种情形

MySQL 的自增主键并不能保证一定是连续递增的。

2023-02-20 10:00:35 203

原创 使用@see/@link,方便阅读属性

用@see @link来方便阅读

2023-02-14 17:25:16 113

转载 全面了解mysql锁机制(InnoDB)

MySQL/InnoDB的加锁,一直是一个常见的话题。例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何排查并解决?

2023-02-10 10:29:49 80

原创 SQL小技巧---查找是否“存在“

【代码】SQL小技巧---查找是否"存在"

2023-02-09 18:08:39 355

原创 SQL 统计两种状态的数量,求百分比

【代码】SQL 统计两种状态的数量,求百分比。

2023-02-06 17:20:02 256

原创 为什么不推荐Spring的BeanUtils拷贝

【代码】Spring 的 BeanUtils 的属性拷贝存在风险。

2023-01-09 11:59:54 121

原创 接口数据如何脱敏

接口数据如何脱敏。

2022-08-16 17:58:07 677

原创 SpringBoot 使用过滤器修改请求参数

SpringBoot 使用过滤器修改请求参数。

2022-08-15 15:53:46 1043

原创 SQL判断两个时间段是否存在交集

SQL判断两个时间段是否存在交集

2022-06-14 10:13:01 581

原创 Java如何获取集合的泛型

问题已知对象有属性是集合类型,如何获取该集合的泛型?方法@Data@AllArgsConstructorpublic class ResultObj { private Integer id; private List<Student> stu;}@Data@AllArgsConstructorpublic class Student { private String name; private Integer age;}@Sn.

2022-04-15 16:13:31 1319

原创 按关键字段和条件把不完全重复(关键字段重复)筛选数据

按关键字段和条件把不完全重复(关键字段重复)筛选数据表数据SQLSELECT *FROM ( SELECT NAME ,AGE ,MAIL ,TELL ,row_number() OVER ( PARTITION BY NAME ORDER BY AGE DESC ) flag FROM STUDENT )WHERE flag = 1;结果...

2022-03-24 17:07:45 84

原创 EasyExcel 遭遇 java.io.IOException: Zip bomb detected

报错Caused by: com.alibaba.excel.exception.ExcelAnalysisException: java.io.IOException: Zip bomb detected! The file would exceed the max. ratio of compressed file size to the size of the expanded data.This may indicate that the file is used to inflate mem.

2022-03-23 15:33:19 1052

转载 ORA-01745: invalid host/bind variable name

近期,有一个批量插入的sql,突然报出错误“ORA-01745: invalid host/bind variable name(无效的主机/绑定变量名称错误)”。 字面意思排查,可能原因是:使用了保留字、多余或者缺少冒号或者逗号等等语句的问题。经过仔细核对和测试,单条插入都可以正常执行,所以考虑是不是条数太多的问题。所以临时将插入操作改为批次执行,暂时解决了问题。那么,真相到底是怎样呢?后来经过查阅资料,发现根本原因是由于sql语句包含了太多的“?”(占位符),超出了Oracle的限制。经过验证,当

2021-11-29 09:08:00 918

原创 策略模式---依订单来源,支付方式调用不同逻辑

订单实体类@Datapublic class MyOrder { /** * 订单来源 */ private String source; /** * 支付方式 */ private String payMethod; /** * 订单编号 */ private String code;}订单处理接口public interface OrderHandler { voi.

2021-11-11 15:48:39 330

原创 Json字符串Key转大写

public static JSONObject transToUpperObject(String json) { JSONObject JSONObject2 = new JSONObject(); JSONObject JSONObject1 = JSON.parseObject(json); for (String key : JSONObject1.keySet()){ Object object = JSONObject1.

2021-11-01 18:34:55 660 2

原创 MyBatis动态Sql之foreach标签的用法

mysql 数据库—> foreach 实现批量插入/** * 批量插入用户信息 * * @param userList * @return */int insertList(List<SysUser> userList);<insert id="insertList" useGeneratedKeys="true" keyProperty="id"> INSERT INTO sys_user(user_name, user_password, u.

2021-09-23 10:56:35 181

原创 对象,集合深拷贝

集合@SneakyThrows public <T> List<T> deepCopy(List<T> src) { // 将序列化到字节流 ByteArrayOutputStream byteOut = new ByteArrayOutputStream(); ObjectOutputStream out = new ObjectOutputStream(byteOut); out.wri.

2021-08-20 14:26:21 114

转载 Intellij idea插件运用

Codota 代码智能提示插件只要打出首字母就能联想出一整条语句,这也太智能了,还显示了每条语句使用频率。原因是它学习了我的项目代码,总结出了我的代码偏好。Key Promoter X 快捷键提示插件每次都会在右下角弹窗提示,帮助我们快速熟悉快捷键。CodeGlance 显示代码缩略图插件当代码很多的时候,方便查看,很有用。Lombok 简化臃肿代码插件实体类中的get/set/构造/toString/hashCode等方法,都不需要我们再手动写了Alibaba Java Coding G.

2021-07-22 09:16:56 193

原创 查询oracle 数据库中索引与序列

1、查看表中有哪些索引select * from user_indexes where table_name = '表名'2、查看表中索引对应哪些列select * from user_ind_columns where table_name='表名'

2021-07-13 17:46:12 1637

原创 Oracle 表字段转换类型(varchar2转number)

– student 表 age字段由varchar2改成number类型– 1.增加一个原类型缓冲区字段alter table student add BARCODE_INTERNATIONAL_TEMP varchar2(10);– 2.将要修改的字段的值存入缓冲区,同时将要修改的字段置空update student set BARCODE_INTERNATIONAL_TEMP = age, age = null;– 3.修改字段类型alter table student modify ag

2021-06-04 15:15:21 2890

原创 前端传一个String类型参数,后端接收的三种方法

前端传参时,参数放在路径上http://localhost:8080/test?name=justin,参数加注解@RequestParam String name特点:容易涉及到安全问题使用Map接收@RequestBody Map<String,String> map结论:推荐使用第二种

2021-05-16 14:41:31 10076

原创 前端传日期时间字符串,后端转LocalDateTime的三种方法

后端可用String接收,再转LocalDateTime特点:适用于此类型参数较少的场景前端传"2021-05-16T12:10:10"类型,后端借助注解,使用LocalDateTime接收特点:前端传参麻烦@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime time;前端传"2021-05-16 12:10:10"类型,后端借助配置类,使用LocalDateT.

2021-05-16 13:58:06 9873

原创 RestTemplate返回json数据封装

最简单方式:使用Map接收案例:向接口路径 /returnJson2发请求,返回的json字符串用Map接收@RequestMapping("/returnJson3") public List<User> test3(@RequestBody Map<String,String> map) { User user = new User(); user.setName("ee"); user.setAge(11); .

2021-04-05 00:14:58 3520

原创 Oracle数据库分页查询之坑点

案例:create table student( u_name varchar2(20), age INTEGER);insert into student values('zs',12);insert into student values('zs2',13);insert into student values('zs3',14);insert into student values('ls',10);insert into student values('ls2',.

2021-03-28 15:22:01 142

转载 Feign远程调用细节---丢失数据

创建请求拦截器,在拦截器中加上原请求头信息@Comfigurationpublic class FeignConfig { @Bean public RequestInterceptor requestInterceptor() { return new RequestInterceptor (){ @Override public void apply(RequestTemplate template){

2021-02-21 17:20:31 1432

原创 CompletableFuture 异步编排

异步执行任务public class Test1 { public static void main(String[] args) throws ExecutionException, InterruptedException { ExecutorService executor = Executors.newFixedThreadPool(5); System.out.println("start *********"); //无返回值的情.

2021-01-30 13:08:24 74

原创 AOP+自定义注解 实现角色的访问控制(RBAC)

AOP除了可以通过切入点表达式指定需要切入的方法,还可以有与注解相关的写法自定义注解@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface Code { String value() default "0";}AOP@Component@Aspectpublic class PermissionHandler { @Autowired

2021-01-22 19:37:17 298

原创 当Mybits中resultType=“java.util.HashMap“,结果会怎样

当使用Mybits框架,有时需要自行在mapper.xml文件中写SQL语句,例如:<select id="test" resultType="java.util.HashMap"> select name,age from t_user</select>结果:{name=zs, age=18}而不是想象的:{zs=18}结论resultType为map时,查询的字段会作为key,查询出的结果作为value另外,如从数据库查询到的是多条记录.

2021-01-22 15:56:32 1633

原创 基于Canal 实现数据库表的同步

Canal目前主要支持了MySQL步骤2.1 本例分别在Linux 系统和本地Windows 系统创建数据库,表;其中表名与结构相同,以实现Linux 数据库更新同步到本地数据库2.2 开启Linux 系统中Mysql binlog功能执行命令 show variables like ‘log_bin’ 查看log_bin 状态,如为OFF,则需要修改配置文件 my.cnf 来开启binlog;命令vi /etc/my.cnf,追加内容:log-bin=mysql-bin .

2020-12-30 17:51:03 1950 1

原创 Cannot retrieve repository metadata (repomd.xml) for repository: base

CentOS6.8 yum安装报错Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again解决方法备份现有repo仓库mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup使用阿里云仓库repocurl -o /etc/yum.repos.

2020-12-26 02:59:10 2166 5

原创 IDEA里设置允许一个类重复运行

当前版本IDEA2020.2.3选择要运行的类勾选Allow parallel run 即可

2020-12-05 10:46:11 2373

空空如也

空空如也

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

TA关注的人

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