自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springboot访问webapp下静态资源

在springboot版本1.5以下是获取不到静态资源的,无论是相对路径还是绝对路径就是获取不到,在springboot版本1.5及以上就可以获取到,用相对路径就可以,这是个坑,忙了一天看一大哥和我遇到同样的问题转载:https://www.oschina.net/question/2379721_2280432...

2019-03-01 18:04:38 5493

原创 多线程update批量更新造成的死锁,问题分析和解决办法

首先我们设想一个情况,然后来阐述今天的问题:现在有若干台服务器,用相同的接口去批量修改一批数据,但是数据中彼此有重复的数据。基于这个问题,出现下面这种情况的死锁--> 问题分析:因为1服务器修改的批次包括abcdef 这个时候刚好修改了abcd所以abcd的索引被锁住了,2服务器修改了efgh,这个时候efgh的索引被锁住了因为批量修改是一个默认的事务,所以如果没有全部修改完...

2019-01-04 11:03:41 17982 8

原创 springboot 在controller层获取Post请求中request.getInputStream的值

  这个有点坑,首先request的流的获取每个请求只能获取一次,之后再通过getInputStream获取流的时候就获取不到数据了,还有getInputStream和getReader和getParameter都可以获取输入流数据,但是存在冲突,也就是三者只要有一个对request获取了输入流信息,那么其他的方法之后就获取不到数据了。这就是springboot埋的一个小坑,那么怎么通过reque...

2018-11-27 11:13:44 8959 1

原创 Comparator类中的compare(T o1,T o2)和compareTo()的使用与疑惑解答

这几天做项目刚好遇到需要排序的需求,大概就是你查询一个list,然后list中保存的是map数据,你需要根据map中的若干个数据排序,比如说List<Map<String, Object>> list = new ArrayList<>(); Map<String, Object> yuan = new HashMap<>();...

2018-08-07 15:21:47 12401 5

原创 阿里云轻量级应用服务怎么完成tomcat+mysql的安装直到运行

首先由于本人是个穷人,所以就买了阿里云的轻量级应用服务,虽说官方说和ESC没有差别,但是我感觉还是遇到很多坑,这里总结一下,方便以后查阅首先你得和我的应用是一样的,就是他自带的那个LAMP①tomcat的安装还是很得心应手的:yum install tomcat  这样就可以傻瓜式的安装一个tomcat,我们需要将war包放在这个位置,我感觉我用tomcat也只需要知道webapps在哪里就行了②...

2018-06-11 20:08:17 1939

原创 服务器内部访问URL并获取页面的json数据

最近做一个微信小程序,在获取用户openid的时候,我将官方给的api接口放服务器,但是怎么去访问并获取界面中的值成了问题,然后我想用重定向到这个页面吧,但是重定向后你就没办法往下操作,后来我看了大神的文章才懂得这个方法,所以分享在这,大佬忽略下面是整个代码,你只需要将你的url地址放在这个URL地方,你就可以获得像api接口给出的json数据,然后你就可以通过Gson去解析这个json数据   ...

2018-05-11 20:41:24 3617

原创 微信小程序template嵌套template,怎么传递数据

template是一个很方便的复用性强的模块,一个稍微复杂的界面可能由多个template构成,有时候也需要template嵌套template去达到想要的效果,那么template嵌套之间怎么传递数据呢?<template name="postItem"> <view class='post-container'> <view class='post-a...

2018-04-25 21:13:42 4150 3

原创 逆向工程

逆向工程其实要用其实很简单,我们只需要懂几个地方,源代码网上有<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis...

2018-04-16 21:56:18 1659 1

原创 安卓OkHttpClient中onResponse方法内数据的调用

在学习中,难免有一些坑,每次遇到坑我就和大家分享一下,在okhttp中我们成功的访问后台,然后从onResponse中获得了返回的json数据(安卓和后台一般用json格式做数据交互),然后你会发现这个返回的数据你只能在onResponse方法内调用,放到方法外,这个数据就不好用,也不是不好用就是你弄不出去,追根揭底就是okhttp是异步请求,你没办法将异步请求的结果放到主线程中使用,但是我们有没...

2018-04-16 21:28:51 14086 6

原创 安卓okhttp3与服务器通过json数据交互解析与上传

最近刚好做一个app,然后就不太会json数据交互,就上网查了一些,发现并没有快餐类的代码。所以这里就直接给大家安卓端和服务器端的快餐代码,对初学者还是很有帮助的,大家可以依葫芦画瓢,不喜勿喷首先是安卓端,我主要上传一个User对象,下面是安卓端的代码通过okhttp3,gson编译成json格式上传需要引用compile 'com.google.code.gson:gson:2.8.1'下面是客...

2018-04-12 11:27:54 8255 7

原创 HashMap put方法的底层实现原理

前言:HashMap这种数据结构在大部分开发场景用处都非常多,因此我们在使用的时候也必须去了解其底层原理,方便我们可以在使用的时候能熟练根据其设计优化我们的程序,后面我就围绕几个问题展开讲解,尽量通俗易懂。1、hash计算索引的过程是怎样实现的?设计上有哪些点值得我们学习2、hashMap扩容底层实现原理?3、我们知道hash初始化长度规定要16倍数的长度,为什么,如果不是16的倍数长度会造成什么影响?4、尾插法解决什么问题?如果你对这四个问题也感兴趣,请往下看,分享思路。一、has

2021-09-10 11:26:40 1015

原创 Idea 中通过service运行多模块

我看网上都说要在service运行多模块,需要去配置workspace.xml。我是没太懂还是我版本比较新,我不是通过这种方式添加的。1、先看效果图2、首先如果脚栏中没有services按钮的话,我们可以通过下图所示调出来。3、添加的方式我们只需要通过+号选择项目即可添加从上到下执行,idea就自动把springboot的启动栏目带出来了,没做特殊的配置。希望此方法对你有帮助。...

2021-04-23 09:47:09 626

原创 AOP配合自定义注解 打印日志和业务逻辑处理

背景一个简单的功能,就是对特定的service打印入参。按一般的做法我们可能会像下面这样打印 @Override public void updateConfDict(MqConfDictBO mqConfDictBO) { log.info("修改小类状态【{}】, id【{}】", mqConfDictBO.getStatus(), mqConfDictBO.getId()); ... }这种打印日志的方式相对灵活,但同时灵活的劣势就是不够

2021-03-23 19:41:57 269

原创 JVM内存详解

java指令class解释称机器指令javap -v xxx.class | class -> 可读文件javac xxx.java | java -> class编译器和JIT的区别编译器: 这个东西第一代jvm就有了,他可以解释字节码文件,但是效率不高,因为每次执行都会从头开始编译执行代码,消耗资源JIT: 这个东西呢就是解决上面编译器的难处,他提供了一个缓存,能够存储编译过后的机器码指令,这样就不用每次执行代码都去编译 一次,他也只会缓存热点执行代码,避免

2021-03-05 17:08:53 144

原创 忘记docker登录私有仓库密码怎么办?

前提:手头有一台登录过私有仓库的docker服务器操作:cat ~/.docker/config.jsonconfig.json会记录登录之后的用户名和密码,只是base64加密之后的密码。\比如这个密码。我们直接在命令框: echodXNlcm5hbWU6cGFzc3dkCg== | base64 -d输出结果=》username:passwd 前面是私有仓库用户名后面是密码如果有用友好三连,谢谢...

2020-12-07 16:30:22 3035

原创 k8s集群搭建普若米修斯,监控rabbitmq集群

背景这几天在做关于容器化部署的工作,这里做一个简单的分享,给容器内的rabbitmq集群+一个普若米修斯监控服务先决条件:拥有一个k8s集群(一主2从)k8s集群上已经搭建了rabbitmq集群,且mq版本>=3.8.0如果上述先决条件ok,那么就可以看后面的步骤实现步骤疑问:刚开始搭建普若米修斯监控的时候,我是不知道怎么做的,以前没接触过,然后市面上就会有几个搭建方案给你,比如“prometheus-operator”, "kube-prometheus", "ra.

2020-10-14 14:43:46 876

原创 k8s集群从0开始创建笔记

Set up mutual parsing of system host name and Host file设置系统主机名以及host问津的相互解析Hostnamectl Set-hostnameInstall Dependency Packages安装依赖包yum install -y conntrack ntpdate ntp ipvsadmipset jq iptables curl sysstat libseccomp wget vim net-tools gitSe...

2020-09-15 17:51:07 236

原创 Float直接转BigDecimal会导致精度丢失,得先转成String 再转BigDecimal

@Test public void test17() { Float f = 12.635f; System.out.println(new BigDecimal(f)); BigDecimal mon = new BigDecimal(Float.toString(f)); System.out.println(m...

2020-03-06 17:38:08 1256

原创 自定义类型转换器Converter

实战情况:假设我们采用REST风格编程,代码中蕴藏这我们需要的数据,举个例子,请求是这样的http://127.0.0.1:8081/test/converter?user=xl-pass123-23 但是呢,我们没办法直接用这个参数,里面有我们的姓名,密码,年龄,如果我们直接用String 接这个参数再做处理显的臃肿,我们可以采用自定义的类型转换器Converter写自己定义的规则,让参数进...

2020-02-22 14:52:57 1082

原创 springboot + mybatis + druid 最简单的框架搭建

做了很多代码的时候往往让你重新搭建一个最简单的框架的时候就很有自信,卧槽,简单。随便就搭建了架子,后来发现一堆问题!今天给一个springboot + mybatis + druid搭建一个最简单的架子,供初学者使用。前提:有jdk环境 + gradle构建工具因为我是用gradle构建的,所以学习的同学可以把gradle变成maven。(gradle 写更少的代码,我用的是gradle ...

2020-01-02 21:03:33 264

原创 idea 快捷键 (我这最全)

Ctrl Shift AltCtrl + A 全选Ctrl + B 查询当前方法谁调用Ctrl + C 复制Ctrl + D 复制当前行数Ctrl + E 打开最近打开的文件Ctrl + F 当前页面查询Ctrl + G 跳转行数Ctrl + H 查看当前类与父类的继承关系Ctrl + I No methods to implement have been found...

2019-11-08 13:51:14 1376 1

原创 通过Linux系统发送get请求访问接口

场景:某些场景的服务器对权限有很高的限制,你直接通过自己电脑发送的请求未必会被某个服务器接收并响应。解决,我们可以通过同一级别的服务器发送请求,也就是今天要将的curl这个命令部分参数说明参数 说明 -c file 将cookie写入到file这个文件中(file为文件路径) -b file 从file这个文件中将cookie读取出来 -X POST...

2019-09-23 17:09:40 3125

原创 Mysql 表复制和表数据复制

mysql中用命令行复制表结构的方法主要有一下几种:1.只复制表结构到新表1 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2;或 1 CREATE TABLE 新表 LIKE 旧表 ;注意上面两种方式,前一种方式是不会复制时的主键类型和自增方式是不会复制过去的,而后一种方式是把旧表的所有字段类型都复制到新表。2.复制表结构及...

2019-09-04 16:17:49 99

原创 《小白学java》之spring容器

以前,小白在写代码的工作中,想用service类的时候一直用@Autowird或者@Resource这两个方法来注入进行使用,有一天老大说你有没有想过为什么这样就能注入service?,小白说因为我在服务类上加了@Service,老大说你这只是看到了表象。你去看看spring容器,然后小白就写了一篇文章记录自己的学习过程。 小白思考第一问:spring容器是什么? 小白就去...

2019-08-13 15:45:03 156

原创 单个对象数据怎么展示到前端页面

这个很简单,直接上代码这里通过一个接口去查询到user主键为10的数据,然后通过model模板保存并传递到前端,主要看前端怎么写,后台我感觉不是特别难,因为本人主要写后台,前端这些数据的展示一直都半懂半不懂的,所以特地来总结一下,方便以后查阅 @RequestMapping(value = "/object.action") public String object(Model mod...

2019-07-05 10:42:11 617

原创 springboot的AOP应用详解与demo

众所周知,AOP是spring的重要思想,那么springboot怎么使用AOP呢?AOP的作用是什么?AOP主要的思想就是切面编程,这种思想主要是想把我们的关注点统一提取出来统一管理。多的不说进入代码时刻我用的是gradle版本管理工具,aop导入包compile 'org.aspectj:aspectjtools:1.8.1'然后我们先写一个控制层类,让aop来切这个类...

2019-07-05 10:40:06 162

原创 springboot AOP对于相同切点,相同的方法去执行,切点的优先级以什么为准

提问:有4个相同的切点,切一个方法。然后还有4个相同的方法分别执行不同的方法,那么请问,对于这4个相同的切点,哪个优先级高,以什么为标准?为什么要提出这个问题:完全是不小心想到这个问题最终结果:最终没有找到源码依据,完全是靠统计学中的规律学获得最终结果(博客最后给答案),可行性78%(瞎说的)相同的数据:相同的类,相同的切点,相同的执行方法,相同的提示语句不同的数据:声明顺序...

2019-07-05 10:38:45 1180

原创 springboot 的aop应用详解与可运行demo

springboot的aop思想aop是一种编程范式不是一种编程语言,支持aop的语言有很多种,今天主要介绍下springboot中aop的简单。spring AOP的使用1.我们先创建一个controller方法2.其次我们还得导入aop的相关类compile 'org.aspectj:aspectjtools:1.8.1'3.然后我们需要认识几个aop的注解@Aspect:这...

2019-06-30 21:40:10 165

原创 正则表达式java案例

我以前想搜的就是高大上的正则表达式,直接快餐,然后给我点案例,让我直接运行。所以我就直接给代码了。java直接运行,不懂的就百度,看为什么这么写。尤其是<?!pattern><?=pattern>..这种形式的多看看百度百科。package com.sso.controller;import org.junit.Test;import sun.plugin2.o...

2019-04-18 23:36:19 293

原创 简单工厂模式和工厂模式见解

简单工厂模式是23种设计模式的一种,给人最直观的感受就是我可以根据我输入的数据创建不同的对象,但是这个对象必须实现相同的方法。那我们可不可以理解成就是一个对象里面我重写了若干个方法,这个方法除了方法体不一样其他都一样,貌似这样理解也没错,只是简单工厂模式将其具体化了。public interface Operation { int show(int a,int b);}pu...

2019-01-29 15:11:47 141

转载 通过类的反射机制创建对象

转载:https://www.cnblogs.com/xingzc/p/5760166.html

2019-01-29 14:28:31 224

原创 SSM配置文件超基本配置详解

其实我在学ssm的过程中,我一直都不是特别懂这些配置文件中到底有什么用,即使我当时懂了,我后面可能还是会忘记,只记得有个什么东西能达到怎样的效果,在学完maven后,maven把ssm分解的更细致,所以我就在这里把ssm的配置文件做一个简要的说明,方便以后查看先说下Dao层jdbc.properties这个我叫他连接池,一般学习的时候我就只配置一个连接在里面,但是细想,我们可以在里面配...

2019-01-26 16:45:44 718 1

原创 URL地址包含中文特殊字符怎么处理,比如有空格的时候,拼接地址有可能不好用

首先举一个小栗子比如:http://www.xxxx.com?content='你  ~!#¥      好'  这种地址虽然平时遇不到噢,举例子肯定要怎么过分怎么来对不对,像这种有空格的地址可能就会拼接失败,不是可能是肯定,如果不做转码的话。大家都知道UTF-8是全球通用的,用utf-8转码就行了 @Test public void Test4(){ Str...

2019-01-25 10:23:48 2542

原创 数组转List迭代遍历

/** * @Author :xianglong * @Company * @Create 2019/1/4 9:59 * @Effect : */import org.junit.Test;import java.util.ArrayList;import java.util.Arrays;import java.util.Iterator;import java.u...

2019-01-04 10:25:06 414

原创 json字符串定属性取数据

import com.google.gson.JsonObject;import com.google.gson.JsonParser; /**json定点取数据*/ @Test public void Test(){ Gson gson = new Gson(); Map<String,String> map_n = ne...

2018-12-29 14:36:12 174

原创 通过自定义注解获取Controller层下方法的url

需求:现在有这么个需求,假如有一个自定义注解,我打在Controller层的方法上面,然后需要输出这个方法的路径,然后controller是多个,不能指定,方法也不能指定,大概就是一个方法解决所有类似的情况,该怎么做?(自定义注解@ResMapping) import jdk.nashorn.internal.ir.annotations.Ignore;import org.omg.C...

2018-12-03 12:03:08 3358

原创 JAVA如何通过后端访问接口获取信息,附带如何取消SSL验证

为了让大家详细详细的了解整个发送请求的过程,我把所有需要提前查询的知识都会给大家讲解到。第一个就是HttpURLConnection的几个方法的作用,不然即使给了大家可用的代码也只会怎么用。第一个我们要知道为什么用HttpURLConnection来发送请求,而不是其他的控件,自从我公司的老大每次都问我为什么要用这个类,我以前每次不太懂,我就想完事儿不就行了嘛,如果你对我的学习方式感兴趣,...

2018-11-23 10:36:23 1722 1

原创 项目总结----各种好玩的开发小技巧

技巧1:怎么通过正则表达式校验数据 private static final String IDREGEX = "[a-zA-Z0-9]{1,37}+"; @GetMapping("/selectDetailById") public JsonResult selectDetailById(String id) { if (id.matches(IDREGEX))...

2018-11-21 10:55:37 277

原创 二叉树的非递归先序,中序,后序遍历

前几天面试美团的java后台岗位,第一题就是手写二叉树非递归先序遍历,当时我就不乐意了。然后其实能想出来的,但是没私底下实现过,还真没把握给面试官,最后挂了。所以痛定思痛,我们来手写一下二叉树的非递归先序,中序和后序遍历,并对其中的逻辑部分进行步骤的讲解,我觉得一切的东西你只要给他赋予一定的规则,那么它就没那么难了(后面的部分不适合对数据结构不熟悉的同学) /** * 非...

2018-09-17 13:19:06 223

原创 springboot常用注解的功能

这几天在北京找实习单位,最后还是去了自己想去的公司,今天刚好闲下来了就总结一下前段时间学的springboot的注解的功能@Controller 定义控制层,就是接收URL请求的类,通常和RequestMapping一起配合使用@RequestMapping 提供路由信息,负责URL到Controller中的具体函数的映射。@ResponseBody:表示该方法的返回结果直接写入HTT...

2018-07-27 15:55:08 237

空空如也

空空如也

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

TA关注的人

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