问题发生 我们公司代码生成的时候,查询列表统一都是使用了setEntity() ,查询写法如下: public List<BasReservoirArea> selectList(BasReservoirArea basReservoirArea) { QueryWrapper<BasReservoirArea> where = new QueryWrapper<>(); where.setEntity(basReservoirArea); return baseMap…
Swagger简介. Swagger2是一款restful接口文档在线生成和在线调试工具.很多项目团队利用Swagger自动生成接口文档,保证接口文档和代码同步更新.在线调试.简单地说,你可以利用这个工具生成你的接口文档而不是自己去写,而且生成的文档在网站上可以让别人调试. 开发环境 Eclipse+Maven+Swagger2 具体步骤 引入Maven依赖.(很多JAVA组件使用的第一步) 我的maven坐标如下 <dependency> <groupId>io.springfo…
上一篇SpringBoot实战(二)Restful风格API接口中写了一个控制器,获取了前端请求的参数,现在我们就参数的获取与校验做一个介绍: 一:获取参数 SpringBoot提供的获取参数注解包括:@PathVariable,@RequestParam,@RequestBody,三者的区别如下表: 示例代码: Order: package com.example.demo.controller.user.entity; public class Order { private Integer…
经常遇到项目检出来后是导入开发工具eclipse中pom文件出错问题,项目启动时遇到了一些列的jar包找不到的问题,所以换个开发平台到IDEA以为会好些,结果同样的问题还是会出现的,为了找到具体的解决办法,针对以下我遇到的此类问题做总结,希望能帮助到一部分人,所以帮我此次的解决办法记录下来,帮助大家也方面自己. 一.问题现象 二.解决办法 (1)从报错截图中大概知道是因为在本地的maven仓库中找不到“mchange-commons-java-0.2.9.jar ”这个jar包 所以就到本地的m…
问题 打包出来的jar包里面没有html,js,css文件 解决方案 在pom.xml文件下的build选项中的src/main/resources的目录下 添加配置 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plu…
Spring-boot因为其对jar包的高度集成以及简化服务配置,快速部署等的优点,逐渐成为Java开发人员的热衷的框架.下面演示一下怎么在Eclipse中新建Spring-boot项目以及打包部署. 在Eclipse中创建Spring-boot有两种方式 方式一 进入Spring-boot的在线配置网站http://start.spring.io/:定制自己的项目服务组件,下载到本地并使用Eclipse导入项目 服务组件: Web:web项目组件,包含spring mvc,tomcat,log…
服务部署 记录原因 将本地SpringBoot项目通过war包部署到虚拟机中,验证服务器部署. 使用war包是为了方便替换配置文件等. 工具 对象 版本 Spring Boot 2.4.0 VMware Workstation Pro 16 Git 2.9.4 maven 3.3.9 JDK jdk1.8.0_281 Tomcat 9.0.45 Redis 6.2.1 Tomcat版本需要与SpringBoot内置版本保存大版本上一致,否则会出现问题 虚拟机这里安装不赘述. Git 进入虚拟机的…
URL请求中不能包含特殊符号,比如:# 今天在调接口,突然发现接口参数中传递的数据没有完全接收到controller层的model模型中,反反复复测了好几遍,真不信这个邪了,头晕脑胀的时候才关注到URL请求中其中一个参数中包含了"#"号,进过度娘的帮助,发现:有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了,就今天的问题,为什么不能传递#等特殊符号,原因是tomcat实现HttpServletRequest接口的时候把#后面的内容给过滤掉了…
以项目驱动学习,以实践检验真知 前言 一个后端接口大致分为四个部分组成:接口地址(url).接口请求方式(get.post等).请求数据(request).响应数据(response).如何构建这几个部分每个公司要求都不同,没有什么"一定是最好的"标准,但一个优秀的后端接口和一个糟糕的后端接口对比起来差异还是蛮大的,其中最重要的关键点就是看是否规范! 本文就一步一步演示如何构建起一个优秀的后端接口体系,体系构建好了自然就有了规范,同时再构建新的后端接口也会十分轻松. 在文章末尾贴上了项…
本文主要讲述一下如何优雅地管理SpringBoot项目. 背景 课堂上,当小明形如流水地回答完沐芳老师提出来的问题时,却被至今没有对象的胖虎无情嘲讽了? 沐芳老师:小明,你平时是如何启动.停止你的SpringBoot项目的? 小明(自信满满):启动时使用java -jar xxxx.jar命令启动,停止服务时,使用ps -ef找到服务的pid,然后再kill掉停止. 胖虎:就这? 这让小明很有挫败感,原计划按时放学回去陪隔壁小花打王者荣耀的小明,毅然决然留在教室潜心研究一番到底什么是Spring…
大家都知道okhttp是一款由square公司开源的java版本http客户端工具.实际上,square公司还开源了基于okhttp进一步封装的retrofit工具,用来支持通过接口的方式发起http请求. 如果你的项目中还在直接使用RestTemplate或者okhttp,或者基于它们封装的HttpUtils,那么你可以尝试使用Retrofit. retrofit-spring-boot-starter实现了Retrofit与spring-boot框架快速整合,并且支持了部分功能增强,从而极大…
.katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > .katex-html { display: block; } .katex-display > .katex > .katex-html > .tag { position: absolute; right: 0px; } .katex { font: 1.21em / 1.2 KaTeX…
一.docker安装部署 1.更新yum包:sudo yum update 2.安装需要的软件包,yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 3.设置yum源:sudo yum-config-manager --add-repo https://download.docker.com/linux/cen…
一,安装IDEA mac安装IDEA IDEA配置Tomcat 二,创建SpringBoot项目 1,打开IDEA,点击Create New Project 2,选择自己所安装的JDK.如果没有配置JDK,可以参考下之前的博客,也可以百度下 3,配置基本信息,这里什么都不要动,Artifact使用默认demo就可以,只需要在第5步确定项目的名称. 4,选择依赖,一般至少选中web,也可以选择下数据库相关的依赖.根据自己的项目需求 5,给项目起个好名字,既然创造了它,就要对他负责 三,项目目录概览…
转载直: 使用JWT设计SpringBoot项目api接口安全服务…
https://blog.csdn.net/qq_31001665/article/details/71075743 springboot项目--传入参数校验-----SpringBoot开发详解(五)--Controller接收参数以及参数校验…
本文介绍基于Spring Boot和JDK8编写一个AOP,结合自定义注解实现通用的接口参数校验. 缘由 目前参数校验常用的方法是在实体类上添加注解,但对于不同的方法,所应用的校验规则也是不一样的,例如有一个AccountVO实体: public class AccountVO { private String name; // 姓名 private Integer age; // 年龄} 假设存在这样一个业务:用户注册时需要填写姓名和年龄,用户登陆时只需要填写姓名就可以了.那么把校验规则加在实…
前言 在没有SpringBoot之前,我们搭建的是SSM(SpingMVC+Spring+Mybatis)项目,在搭建SSM项目的时候,我们要经过一系列的繁琐配置,例如:application,web.xml,spring-servlet等等的配置信息.如果我们这些配置出现一点点的错误.那么面临的就是寻找一大堆的Bug,而且还出现一些我们看难以看懂的异常,对于English不好的同志来说,这是内伤.那么SpringBoot到底解决了什么问题呢?简单来说,SpringBoot主要简化了我们的配置操…
前言 本篇文章主要介绍的是SpringBoot项目实现文件上传和邮件发送的功能. SpringBoot 文件上传 说明:如果想直接获取工程那么可以直接跳到底部,通过链接下载工程代码. 开发准备 环境要求 JDK:1.8 SpringBoot:1.5.9.RELEASE 首先还是Maven的相关依赖: pom.xml文件如下: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncodi…
一:在上篇文章pom增加依赖: <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.6.1</version> </dependency> <dependency> <groupId>io.springfox</groupId>…
spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动.其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat).当然你也可以将项目打包成war包,放到独立的web容器中(Tomcat.weblogic等等),当然在此之前你要对程序入口做简单调整. 项目构建我们使用Maven或Gradle,这将使项目依赖.jar包管理.以及打包部署变的非常方便. 一.内嵌 Server 配置 Spring Boot将容器内置后,它通过配置文件…
1 QueryDSL介绍 1.1 背景 QueryDSL的诞生解决了HQL查询类型安全方面的缺陷:HQL查询的扩展需要用字符串拼接的方式进行,这往往会导致代码的阅读困难:通过字符串对域类型和属性的不安全引用又是HQL面临的问题. 随着类型安全的域模型给软件开发带来的巨大好处,域的更改可以直接反应在查询上,而且随着域的更改查询也会自动随着改变.(即:同一套查询,只需要通过改变域就可以实现不同的查询) 针对Hibernate的HQL是Querydsl的第一个目标语言,但现在它支持JPA,JDO,JD…
Springboot 项目启动后执行某些自定义代码 Springboot给我们提供了两种"开机启动"某些方法的方式:ApplicationRunner和CommandLineRunner. 这两种方法提供的目的是为了满足,在项目启动的时候立刻执行某些方法.我们可以通过实现ApplicationRunner和CommandLineRunner,来实现,他们都是在SpringApplication 执行之后开始执行的. CommandLineRunner接口可以用来接收字符串数组的命令行参…
Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用.本章教大家如何在linux服务器中使用Jenkins自动发布一个可作为linux服务发布的Springboot项目. 自动构建需要经过如下步骤:从git仓库下载代码.使用Gradle进行构建.使用SSH推送到另一台linux服务器.项目作为linux服务启动.本章将逐条仔细讲解. 一.获得一台linux服务器 要在linux下搞持续构建,首先你得先有一台linux服务器,作为小白,手头的机器肯定都是windows的,搞…
https://blog.csdn.net/liutong123987/article/details/79385513 有很多方法可以快速创建Springboot项目,可以通过idea的springboot initialization来创建,也可以通过手工新建一个maven工程,然后引入springboot的dependency来完成sprignboot的工程导入,还可以通过spring官网的来创建springboot项目,因为有些同学可能没装idea,这里就通过官网的工程初始化指引来创建一…
springboot项目启动成功后执行一段代码的两种方式 实现ApplicationRunner接口 package com.lnjecit.lifecycle; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.core.annotation.Order; import org.sp…
前言 今天在写项目的时候,需要再springboot项目启动之后,加载我自定义的配置类的一些方法,百度了之后特此记录下. 正文 方法有两种: 1. 创建自定义类实现 CommandLineRunner接口,重写run()方法.springboot启动之后会默认去扫描所有实现了CommandLineRunner的类,并运行其run()方法. @Component @Order(2) //通过order值的大小来决定启动的顺序 public class AskForLeave implements…
前言 难度:简单 类型:step-by-step 适用:初学者,完全没有接触过 Spring-Boot 开发环境:jdk 1.8 关键词:java, sring-boot, spring-mvc, restful 笔者环境:macOS 1. 项目创建 1.1 使用脚手架生成项目 打开 http://start.spring.io/ 网站,选择Gradle ,依赖项选择Web(网站).DevTools(开发工具).JPA(ORM).MySQL(数据库).Thymeleaf(模板). 如下图所示:…
目录 集锦一:普通的springboot项目直接部署jar包 集锦二:springboot项目不能直接打war包部署 集锦三:因为tomcat版本问题导致的lombok插件报错:Invalid byte tag in constant pool: 19 集锦四:Tomcat 启动的时候总是出现大量如下的警告 集锦五:springboot打包war包时pom.xml提示war标签出现错误 集锦六:部署到独立tomcat,springboot项目filter无法启用 集锦七:filter直接使用@V…
前言: 在实际的开发项目中,一个对外暴露的接口往往会面临很多次请求,我们来解释一下幂等的概念:任意多次执行所产生的影响均与一次执行的影响相同.按照这个含义,最终的含义就是 对数据库的影响只能是一次性的,不能重复处理.如何保证其幂等性,通常有以下手段: 1:数据库建立唯一性索引,可以保证最终插入数据库的只有一条数据 2:token机制,每次接口请求前先获取一个token,然后再下次请求的时候在请求的header体中加上这个token,后台进行验证,如果验证通过删除token,下次请求再次判断tok…