SpringBoot...

jpa save(),saveAll()替代方案,mysql的insert并发问题(on DUPLICATE KEY UPDATE)

一、jpa save() 使用springdata jpa的save()方法在存储数据时,都会先执行select语句,再执行insert语句,相当于每存储一条数据,就会执行两次sql,效率非常慢; saveAll()也一样,查看源码可以看出调用的还是save(),这样就在数据量上来时候出现了瓶颈; 网上搜索到的一些解决方法如下(实际并不一...

SpringBoot...

Java bean转JSON使用自定义属性名(互转)

json转为java bean 自定义属性名 java bean 转化为json 自定义属性名 有时候需要发送或者接受别地方的参数,但是参数是下划线,不符合java规范,那么可以使用: @JSONField 例如: public class QueryOrder { /** * 客户编码 */ ...

MyBatis...

mybatis-generator中文注释乱码解决

mybatis-generator中文注释乱码解决     一般出现中文注释乱码的原因是,mybatis-generator输出文件使用jdk的默认编码,而一般jdk的默认编码是根据操作系统的是GBK,而项目工程是utf-8     如果是在终端操作的,可以尝试在每次运行  mvn myba...

MyBatis...

Mybatis多种分页查询

分页查询作为数据库交互最常用的几种操作之一,在日常开发中是非常常见的,比如前段请求需要一个分页的列表,往往有两种方式,一是把所有的数据都给到前段,前段分页。另外一种方式是前端通过传分页信息给后端,后端查询时进行分页,并将相应页的数据返给前端。第一种方式如果数据规模比较小的情况下可以使用,如果数据量较大,对内存、网络传输的消耗都是非常大的,所以实际开发中一般很少使用。第二种方式是...

Java

Linux下使用Shell脚本启动Java程序

    这个脚本是在网上找到,挺好的通用 shell 脚本。     只需要修改一些配置变量,就可以用来做起动脚本了。并且除了能起动、还支持关闭、重启、查看是否正在运行的功能。     start 函数中,nohup 部分其实也可以提出...

Java

Springboot打jar包分离依赖lib、配置文件

部署环境 window 10 centOS 7.4 其他版本没有尝试,应该也是可以的 POM.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.or...

Java

Windows:环境下protobuf生成java文件

protobuf的编译,官方文档建议使用maven,因此如果没有maven先安装maven.  windows下可能会只配置了IDE的java环境.如果想用CMD来编译protobuf的话,需要在windows环境变量中配置JAVA_HOME. 安装 安装maven http://maven.apache.org/download.cgi&nb...

SpringBoot...

springboot利用swagger2构建api文档

springboot利用swagger2构建api文档 现如今为了前后台更好的对接,也为了以后交接方便,基本上都有要求写API文档。 手写Api文档的几个痛点: 文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时。 接口返回结果不明确 不能直接在线测试接口,通常需要使用工具,比如postman 接口文档太多,不好管理 Swagger...

SpringBoot...

SpringBoot中定时任务使用配置文件配置执行时间

SpringBoot中定时任务使用配置文件配置执行时间 在传统的Spring项目中使用Spring Task设置定时任务,其执行时间配置到applicationContext.xml中指定执行方法即可;但是由于现在换做了SpringBoot框架,虽然Spring Task是集成在SpringBoot中的,但是大多是用注解直接把执行之间cron声明在了方法名上,这样...

SpringBoot...

SpringBoot定时任务的几种实现方式

SpringBoot定时任务的几种实现方式 定时任务实现的几种方式: Timer:这是java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行。一般用的较少。 ScheduledExecutorServi...