自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

温故而知新,可以为师矣。

我写博客的原因之一。重温一下自己专业知识,让你迅速成为“老司机”。

  • 博客(77)
  • 资源 (2)
  • 收藏
  • 关注

原创 spring boot 项目部署到服务器 两种方式

Spring Boot 两种部署到服务器的方式jar包jar包方式启动,也就是使用spring boot内置的tomcat运行。服务器上面只要你配置了jdk1.8及以上,就ok。不需要外置tomcat 1.打成jar包2.将jar包放到任意目录,执行下面的命令$ nohup java -jar test.jar >temp.txt &//这种方法会把日志文件...

2018-08-08 13:05:46 204443 30

原创 shell脚本Docker+spring boot一键启动(改进版)

启动后端脚本api-release.sh#!/bin/bash# 定义常量#TAG=dev_mvp1.1APP_NAME=zhaojian-api# 分支BRANCH=$1# 镜像名称TAG=$2# build coreecho "\ncd zhaojian-core/"cd zhaojian-core/echo "\ngit checkout ${BRANCH}"git checkout ${BRANCH}#!/bin/bash# 定义常量#TAG=dev_m

2021-08-11 10:36:44 633 1

原创 shell脚本Docker+spring boot一键启动

前言编写docker启动脚本,实现服务器上自动化启动,包括pull代码、maven打包、docker构建镜像、移除容器、重新启动。运行环境spring boot + docker脚本startWithDocker.sh#!/bin/bash # 定义常量TAG=dev_mvp1.1 #docker tagAPP_NAME=test-api #项目名称# 查看所有容器sudo docker ps -a# 获取容器IDcontainerId=`sudo docker ps -

2021-05-17 12:59:11 1074

原创 解决使用Navicat连接远程数据库MySQL几分钟不操作自动断开的问题

前言好记性不如烂笔头,该文章仅仅记录一下,方便博主自己查阅!若有侵权,联系博主删除!问题因为开发小程序,后端接口加上了权限认证之后,连接本地数据库自测比较麻烦,就连了测试环境数据库…Navicat连接远程mysql成功之后,只要几分钟不操作,再去操作时就会显示加载中,客户端卡死。需要等待一段时间,重新连接上mysql之后,才能操作。原因1、这是因为数据库服务器设置了连接多久没有活动就自动断开,避免连接数过多。2、mysql对连接的客户端进行DNS反向解析。所谓反向解析解释如下:mysql接

2021-05-08 11:56:14 5964 3

原创 spring boot - jar包重启脚本

简单的jar包重启脚本创建文件restart.sh,脚本内容如下:#!/bin/bash#这里可替换为你自己的执行程序,其他代码无需更改APP_NAME=zhao-api.jar#检查程序是否在运行is_exist(){ pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' ` #如果不存在返回1,存在返回0 if [ -z "${pid}" ]; then return 1 else return 0 fi}

2021-03-22 14:14:07 520 3

原创 js生成二维码 + 点击全屏放大

Js生成二维码效果图左边是放大前 右边是放大后完整代码<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko" lang="ko"><head>

2020-10-23 12:11:34 2428

原创 MD5加密,生成签名

问题相同的字符串,本地和服务器加密结果不一样,导致请求第三方接口时,签名验证失败解决方法!!记得设置编码,不同的编码加密得到的结果不一样,如果不设置,默认使用系统文件的编码String sign = DigestUtils.md5DigestAsHex(str.getBytes(“utf-8”));具体代码如下:/** * 签名算法 * * @param bodyParams * @return 签名字符串 */ public String sign(Map<Stri

2020-07-22 18:45:15 4048

原创 编辑Fiddler的FiddlerScript脚本,代理请求到本地

前言博主JAVA开发工程师一枚。最近两年工作基本上都是前后端分离~之前做电商项目,版本开发过程中,App开发同事(安卓/IOS)都会打一个测试包给我们,对自己开发的那部分接口进行自测。然而,App调试不同于Web开发,打开F12,就能看到每一个请求的详细信息(接口名,参数,响应),所以需要通过抓包,进行调试。常用的抓包工具有Fiddler和Charles两种编辑Fiddler的FiddlerScript脚本,代理请求到本地使用场景:实际抓包调试过程中,因为手机安装的app调用的接口都是测试环境

2020-06-03 23:38:07 3783

原创 win10修改hosts,总是提示另存为

修改hosts文件,无法保存发现修改了hosts文件之后,保存的时候,总是提示另存为?导致保存到了一个新的txt文件里面。系统win10企业版,个人用户登录解决办法:hosts文件目录 :C:\Windows\System32\drivers\etc\hosts1.给当前登录的windows用户授权,参考该博客:windows10不能修改hosts解决方案(亲测)2.hosts文...

2020-04-19 10:12:24 3878 1

原创 模拟器抓包 - Fiddler

电商项目,app自测时,需要用到模拟器抓包默认只能抓Http请求,如果想要抓Https请求,需要在模拟器上面安装证书和设置fiddlerFiddler简单使用教程使用Fiddle对夜神模拟器进行抓包的设置...

2020-04-11 16:18:32 936

原创 JAVA - 代码规范

一、命名规范包名,类名,方法名,变量名 (重要)A. 包名:包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。例如:com.yoc.sale.business.report不能出现大写或者下划线:com.yoc.sale.businessReport 或者 com.yoc.sale.business_reportB. 类名:(1) 类名使用 UpperCamelCase...

2020-03-19 21:31:11 271

原创 实用 - Java后端面试经历(经验分享)适用于2~3年

前言因为某些个人原因,或者其他不可控因,IT行业跳槽肯定在所难免。这也意味着,你会离开一个熟悉的环境,想方设法的去融入另一个陌生的环境,接触新的同事。希望你的同事人都超级棒~这篇博客可能只适用于一些2~3年,每天勤勤恳恳写代码,按时完成日常任务的中级程序猿。毕竟,技术宅男都是大佬,随便换工作,公司都是抢着要。准备工作求职简历:简历里面,我觉得有一点很重要,就是如果你对某个框架底层原理并...

2020-02-28 14:09:22 1632

原创 idea 解决全局搜索ctrl+shift+f死活不生效~

前言温馨提示:可以跳过前面,直接看最后面的结论~~博客只是一些随笔而已,想到什么就记录什么2020年,特殊时期,在家办公。目前TeamViewer远程开发(tv还算流畅,不卡)。码代码的过程中,习惯了使用IDEA常用的快捷键。可是,全局搜索快捷键ctrl+shift+f居然不生效!真是让人头痛!偏偏又经常要用这个快捷键(欲哭无泪QAQ)那么便要解决问题,肯定是快捷键冲突了,机智的我一哈就...

2020-02-11 01:09:39 7348 4

原创 spring boot oauth2 facebook

前言最近网站要接入facebook第三方登陆...记录一下遇到的坑接口测试facebook接口时,postman能调通,而项目里面,http请求一直报错:java.net.ConnectException: Failed to connect to graph.facebook.com/31.13.74.17:443小飞机代理:结论:因为facebook是国外的网站,在国内访问...

2020-01-13 21:46:37 978

原创 菜鸟从入门到放弃 - 心酸学习心得

记录工作中遇到的坑,知识点及对应写得好的博客一、线程篇1.countDownLatch : https://www.jianshu.com/p/e233bb37d2e6二、坑1.NullPointerException 没有堆栈: java堆栈信息不见了...

2020-01-07 21:00:35 203

原创 NullPointerException 没有堆栈

生产环境数据出问题,看服务器日志却没有堆栈信息只有如下一行错误提示异常信息:java.lang.NullPointerException没有详细的堆栈问题!!!传送门–> java堆栈信息不见了...

2020-01-07 20:47:58 3522

原创 电脑Win10系统开机内存占用过高,超过50%

内存过高解决方法:解决win10一开机占用内存就飙到70%的问题

2019-11-29 14:34:17 10200 1

原创 Mysql多表关联删除(多外键)

多表关联,存在多个外键,级联删除需要先取消外键约束,才能删除对应的表。删除完后,将外键约束设置上!! 记得删除时开启事务!Code-- 开启事务START TRANSACTION;-- 取消外键约束 才能删除表SET foreign_key_checks = 0;-- 删除航段delete os from order_itinerary oi left join flight_o...

2019-10-28 11:37:07 1870

原创 Iterator移除元素

iterator移除元素移除list的某些元素demo/** * 搜索 */public String search(WhiteScreenSearchRequest request, AccountShort account) { try { String url = api_uri + "/white-screen/search"; ...

2019-07-09 17:29:06 1144

原创 Spring @transactional注解声明式事务

前言发版前一天,遇到了一个乐观锁问题。产生乐观锁,肯定是同一时间,存在两个或者多个事务对同一条数据进行修改。假如有事务A和事务B,先commit的事务会成功,而另外一个事务就会失败。这里记录一下遇到的问题,以及解决方法和过程环境spring data jpa使用了@version + @transactional来进行事务管理和保证数据唯一问题退款过程,对接了微信,易宝,支付宝。...

2019-04-04 12:12:26 440

原创 spring dat jpa @version 乐观锁

前言Mysql使用Innodb引擎,支持事务,行锁,那么,高并发情况下,多个事务同时进行;如果多个事务对同一条数据进行操作,并且都成功了,肯定会出现脏读等问题,最终导致数据库的数据有问题。破坏了数据的原子性,唯一性,正确性。简单举个栗子:银行转账:小李卡里有10块钱。小李和小王同时来取钱,小李取2块钱,小王取2块钱。取钱操作加了事务。【预期结果,最后剩余: 10 - 2 - 2 =...

2019-04-03 18:44:46 1003

原创 Jsp El表达式取值有特殊符号解决方法

后台传递过来的value属性值中有特殊符号,如双引号,单引号等,如果用EL表达式直接取值会显示不全解决方法:使用<c:out>`标签嵌套就可以了将值存到input中, <!-- el表达式取值有特殊符号解决方法 用c:out接收 --> <input type="hidden" id="content" name="" class="form-contro...

2019-03-20 11:54:58 1688

原创 jquery dataTable 内容过长显示省略号

jquery dataTable 内容过长显示点号直接在&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;标签中加上样式:&amp;lt;head&amp;gt; &amp;lt;style&amp;gt; &amp;lt;!-- 只修改表格得第一列,第二列 --&amp;gt; .list_result td:nth-child(1),.list_resul

2019-03-12 11:52:46 4889

原创 Gson简单使用

Gson工具类使用常用类:JsonArray JsonElement JsonObject JsonParser TypeToken在线文档: gson2.2 Apipom.xml导入gson包&amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;com.google.code.gson&amp;lt;/groupId&amp;gt; &amp;lt;artifactId

2019-03-08 11:14:49 333

原创 vue dist tomcat部署 + nginx

前言第一次接外包。一个产品,一个前端,一个后端,一个UI。采用前后端分离开发,我主要负责写接口,服务器发布。开发环境IDEAWin7项目技术Spring + boot + shiro + vue服务器腾讯云 Ubuntu部署vue1.首先:将前端项目打包成静态文件【dist.rar】。2.服务器准备一个tomcat修改tomcat端口为8085/conf/ser...

2019-01-31 13:02:21 6440 1

原创 Jpa - 级联删除并保存 【踩坑】

前言Jpa oneToMany级联查询处理的实体 jpa会托管。A collection with cascade=“all-delete-orphan” was no longer referenced by the owning entity instance: private void toAgreeOrderAskFor(OrderAskFor oldOrderAskFor, H...

2019-01-17 17:31:07 2021

原创 Spring 如何接收以is开头的boolean类型的参数?

前言spring @RequestBody接收is开头的参数,开发环境开发工具: IDEA问题直接看代码:参数不以is开头:/** * 布尔类型 不带is IDEA生成的get set方法如下: */@Column(name = &amp;quot;best_pricing&amp;quot;) private boolean bestPricing = false;/** * get方法...

2019-01-07 21:19:29 7805

原创 IntelliJ IDEA快速自动生成Junit测试类

前言之前在写业务逻辑的时候,都很少有写单元测试。因公司项目用的分布式架构,将整个系统抽成了很多微服务。测试一个接口,需要启动好几个服务,才能进行测试。并且有时候,我们只是改了一点代码,并不需要全部启动,太耗时,这个时候,就可以编写单元测试,简单的测试一下我们的代码。单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。自动生成两种快捷键:1...

2019-01-02 10:34:10 43976 7

原创 Gson 实体转Json字符串 --- 报declares multiple JSON fields named XXX解决方法

前言很是气愤,将一个对象转json字符串,一直报declares multiple JSON fields named passengers。调试了很久,都没找到原因。就这样,一下午又过去了。。加班加班解决办法检查实体里面的每一个属性是否都有get,set方法!!!!!只要有一个属性没有,就会报这个错。我写了实体B继承了A,B中有一个属性没写get,set方法,就上当了。刚开始还以为...

2018-12-26 18:26:54 27439 11

原创 Java多线程之Executor、ExecutorService、Executors、Callable、Future

Java 多线程前不久换了新的工作环境,刚入职一周,这周主要熟悉代码。里面用了很多jdk1.8的东西。项目很复杂,学习!多线程学习:Java多线程之Executor、ExecutorService、Executors、Callable、Future与FutureTaskJava多线程中有两种不同类型的任务,Runnable类型任务(无返回值)与Callable类型任务(有返回值)。主要...

2018-12-24 18:16:21 340

原创 spring data jpa --- 自动更新字段

Jpa 自动更新字段实体中加入新增字段,重新编译,发现数据库中并没有生效。没有自动同步到数据库中。后面才了解到,如果是布尔类型,需要指定length,java中的false对应MySQL中的一个bit:0;true则对应1这样jpa才知道怎么去映射到数据库中。需要注意的是,代码中,类型用Boolean,而不用boolean。原因是字段定义为boolean,那么数据库中不能为null,否则...

2018-12-24 16:19:54 3853

原创 THREE.JS 导入STL格式的模型

Three.js框架3D模型渲染引入three.js等js从github上下载:https://github.com/mrdoob/three.js教程THREE.JS 导入STL格式的模型THREE.JS的网格对象MESH的属性和方法简单DEMO&lt;html&gt; &lt;div style="width: 600px;height: 400px;" id="modelV...

2018-11-23 14:34:42 7611

转载 mybatis配置时出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

前言什么东西都要自己亲自动手,才会更加深入的了解这个东西的原理。久而久之,见多了,才可能一遇到问题,就晓得问题所在!最近比较有时间,准备借鉴别人的博客,搭建一个基于maven管理的多模块项目,遇到的问题也很多。mapper的方法一直报找不到,花了很长时间才解决了这个问题。这里记录一下。以下内容为转载,感谢博主,解决了我的问题(笑不露齿)。原文地址:https://www.cnblog...

2018-11-21 15:02:50 1026

原创 @override is not allowed when implement

@override注解用不了由于pom里面没有指定使用jdk的版本,导致写代码时idea提示该注解不可用。就很奇怪,写了这么久代码了,自己搭建一个框架,怎么会遇到这么奇葩的问题。原来,@override注解是jdk6+之后新增的,jdk5不支持。项目环境技术框架:spring boot + mybatis + mysql + maven开发工具:IDEA解决办法1.修改pom.xm...

2018-11-21 14:45:53 7380

原创 Mysql 工作笔记

前言本篇博客主要用来记录一些实际工作中会用到的函数以及一些复杂的查询GROUP_CONCAT()函数描述:把查询结果(多行)中的某一字段用逗号分隔组成一个值例如:得到查询一个商品所属分类的名称,用逗号组合。一个商品属于多个分类。SELECT GROUP_CONCAT(fgc.classify_name)FROM flk_goods_classify_ships fgcsLEF...

2018-11-07 11:36:59 668

原创 Spring boot 接收数组

记录后台接收数组如果所有参数(包括数组)全部用一个实体类来接收,则不需要考虑前端数组的传参格式,他都能解析并封装到实体类里面。这里的传参格式指:后台用一个数组a来接收:Integer[] a;前端传值是下面两种的其中一种,都是可以的:a=1&amp;amp;a=2 &amp;amp;a=3 或者 a[0]=1&amp;amp;a[1]=2&amp;amp;a[3]=3但是,如果直接在controller用...

2018-11-06 13:17:27 60873 2

转载 Mybatis异常 There is no getter for property...

Mybatis单个参数的if判断(针对异常:There is no getter for property…)------mybatis的内置对象Mybatis 传单个参数,xml中直接用#{name}表达式取值是不会有问题的。但是用&amp;lt;if test=&quot;name != null&quot;&amp;gt;去判断是否为空,这个时候就会报no getter...异常// 下面是我直接网上摘抄的,原博客地...

2018-11-06 10:44:52 38256 1

原创 记录一次Mysql死锁排查事件

Navicat 修改表 卡死 Mysql 死锁了我:咔咔写代码,然后IDEA正在debug…这个时候,我的debug还没结束!同事(大佬)过来我这边讨论表结构。表示礼貌,我停下了手中的debug,跟他讨论了起来,经过许久的讨论,需要修改表(加几个字段)。在同事的协助下,打开navicat,修改表AAAA 。加上了新增的字段,点击保存。就卡死了。以为是navicat卡了,或者是电脑卡了。任...

2018-11-02 17:12:24 586

原创 spring boot mybatis-generator 使用tk.mybatis.mapper通用mapper自动生成代码

前言这次的项目,使用spring boot 多模块开发。其中,数据库集成了data Jpa 和 Mybatis。最先引入的data jpa,但是后面涉及到多表关联多条件查询的时候,就显得很麻烦。然后就把mybatis也引入了进来。这里重点记录一下如何使用通用mapper逆向生成代码。提高我们的工作效率。环境开发工具:IntelliJ IDEA 2018项目框架: 基于Spring B...

2018-10-30 14:23:16 13790 3

原创 Uncaught SyntaxError: Unexpected end of input (jquery)

function makeColBtn(data){ var openStatus = data.openStatus; var str = &amp;amp;quot;&amp;amp;quot;; var openStatusToStr = &amp;amp;quot;&amp;amp;quot;; if (Number(openStatus) == 1) { openStatusToStr = '&am

2018-09-25 10:51:32 2059

深入实践 spring boot 高清完整版pdf

本书偏应用,适合初学者看,正文内容也就240多页,看的会比较轻松。 本书从技术、实践和原理3个维度对Spring Boot进行了系统且深入的讲解,作者由浅入深逐步带我们了解Spring Boot。 学完整本书,收益非常大,对spring boot等相关技术会有更加深刻的理解。

2018-08-07

elasticsearch5.6.3

elasticsearch 5.6.3,公司用的版本,供大家下载使用。

2018-07-18

空空如也

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

TA关注的人

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