202010-09 Springboot jdbctemplate整合实现步骤解析 一、创建项目导入依赖1.11.21.3二、创建service,pojo,controller2.1创建一个实体类User类属性userId,userName,userPwd2.2我这里sql语句直接写service层了spring提供jdbctemplate的自动话配置,所以我们直接使用就好了,jdbctemplate提供的增删改都是update()方法查询所有query(),有俩种方法,第一种RowMapper<User>是查询数据库字段和类的属性名不一致的情况第二种BeanPropertyRowMapper就是数据库和类的属性一致情况Controller... 继续阅读 >
202010-09 SpringBoot整合JPA数据源方法及配置解析 一、创建项目并导入依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.10</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope><versi... 继续阅读 >
202010-09 SpringBoot操作mongo实现方法解析 一、创建项目并导入相关依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>二、mongo相关配置spring.data.mongodb.host=192.168.21.134spring.data.mongodb.authentication-database=adminspring.data.mongodb.... 继续阅读 >
202010-09 Springboot中登录后关于cookie和session拦截问题的案例分析 一、前言1、简单的登录验证可以通过Session或者Cookie实现。2、每次登录的时候都要进数据库校验下账户名和密码,只是加了cookie或session验证后;比如登录页面A,登录成功后进入页面B,若此时cookie过期,在页面B中新的请求url到页面c,系统会让它回到初始的登录页面。(类似单点登录sso(singlesignon))。3、另外,无论基于Session还是Cookie的登录验证,都需要对HandlerInteceptor进行配置,增加对URL的拦截过滤机制。二、利... 继续阅读 >
202010-09 解决SpringBoot使用devtools导致的类型转换异常问题 问题:最近在使用新框架SpringBoot+shiro+spring-data-jpa时,为了体验下spring自带的热部署工具的便捷,于是引入了<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><!--optional=true,依赖不会传递,该项目依赖devtools;之后依赖myboot项目的项目如果想要使用devtools,需要重新引入--><optional>true</optional></dependency>在起初并没遇到什么... 继续阅读 >
202010-09 SpringBoot整合POI导出通用Excel的方法示例 一、准备工作1、pom依赖在pom.xml中加入POI的依赖<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.11-beta1</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml-schemas</artifactId><version>3.11-beta1</version></dependency>2、自定义注解自定义注解,用于定义excel单元格的相关信息,用在需要导出的类上。大家可以根据自己的实际... 继续阅读 >
202010-09 Springboot实现根据条件切换注入不同实现类的示例代码 最近有个一需求需要根据外界环境的属性(操作系统||yml属性||其他bean的状态)来实现启动时注入两套不同的实现类,实现切换.实现启动时条件注入分2步:第一步使用@Conditional(参数为Truefalse条件实现类需要你自己实现)注解@Conditional(RabbitMqCondition.class)publicclassRabbitmqSMSMsgServiceImplextendsRabbitmqBasicMsgService{//@Autowired(required=false)//DefaultMQProducerproducer;@Overridep... 继续阅读 >
202010-09 SpringBoot + Vue 项目部署上线到Linux 服务器的教程详解 前言给大家分享以下我是如何部署SpringBoot+Vue前后端分离的项目的,我用的Linux发行版是CentOS7.5有了一个基于ElementUI的电商后台管理系统,在开发一个相似的后台就会轻松很多。不过前面的系统的后端是使用node完成的,对于我们Java开发者来说,用不到。我学习的是ElementUI的使用,就足够了,然后后端服务就全部可以自己使用SpringBoot来完成最近貌似Vue3正式版也发布了,正好有空看可以去看一看提示:以下... 继续阅读 >
202010-09 SpringBoot--- SpringSecurity进行注销权限控制的配置方法 环境IDEA:2020.1Maven:3.5.6SpringBoot:2.0.9(与此前整合的版本2.3.3不同,版本适配问题,为配合使用降级)1、注销这里也有一个前提问题需要注意,我们登录操作都是在开启防跨域攻击的环境下进行的。毫无疑问,注销也是在这样的情况下进行的。登录时我们提交表单,采用POST方法传输,通过使用Thymeleaf在form表单添加th:action元素,Thymeleaf会自动为我们添加_csrf元素。同样注销操作也是要带有_csrf参数认证... 继续阅读 >
202010-09 SpringBoot整合flyway实现步骤解析 引入依赖pom.xml<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-paren... 继续阅读 >
202010-09 项目依赖Springboot jar失败解决方案 1.原因因为springboot-maven-plugin打包的第一级目录为Boot-INF,无法引用2.解决不能使用springboot项目自带的打包插件进行打包<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>使用传统项目的maven打包<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>ma... 继续阅读 >
202010-09 springboot aspect通过@annotation进行拦截的实例代码详解 annotation就是注解的意思,在我们使用的拦截器时,可以通过业务层添加的某个注解,对业务方法进行拦截,之前我们在进行统一方法拦截时使用的是execution,而注解的拦截我们使用@annotation即可,我们可以做个例子,比如搞个防止重复提交的注解,然后在拦截器里去写防止重复提交的逻辑就好了。拦截器数据源/***防止重复提交**@authorBD-PC220*/@Documented@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.METHOD})... 继续阅读 >
202010-09 基于SpringBoot实现上传2种方法工程代码实例 创建SpringBoot工程:再导入所需要的依赖:<dependency><groupId>net.oschina.zcx7878</groupId><artifactId>fastdfs-client-java</artifactId><version>1.27.0.0</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency>创建上传业务层程序:packagecn.dzz.fastdfs.service;importorg.apache.commons.lang3.StringUtils;importorg... 继续阅读 >
202010-09 SpringBoot Import及自定义装配实现方法解析 Import的注册形式:1、使用@Import导入一个或者多个类字节对象@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic@interfaceImport{Class<?>[]value();}使用时一般在配置类上注解,表示该注解类导入了其他配置@Configuration@Import({MyBeanFactoryPostProcessor.class,ClassA.class,ClassB.class,ClassC.class})publicclassTestConfiguration{}2、使用导入Bean定义... 继续阅读 >
202010-09 解决SpringBoot打成jar运行后无法读取resources里的文件问题 开发一个word替换功能时,因替换其中的内容功能需要word模版,就把word_replace_tpl.docx模版文件放到resources下在开发环境中通过下面方法能读取word_replace_tpl.docx文件,但是打成jar包在linux下运行后无法找到文件了Filefile=ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX+"static/office_template/xxx.docx");在开发环境运行时,会把资源文件编译到项目\target\classes\static\office_template\xx... 继续阅读 >
202010-09 Springboot Session共享实现原理及代码实例 在传统的单服务架构中,一般来说,只有一个服务器,那么不存在Session共享问题,但是在分布式/集群项目中,Session共享则是一个必须面对的问题,先看一个简单的架构图:在这样的架构中,会出现一些单服务中不存在的问题,例如客户端发起一个请求,这个请求到达Nginx上之后,被Nginx转发到TomcatA上,然后在TomcatA上往session中保存了一份数据,下次又来一个请求,这个请求被转发到TomcatB上,此时再去Session中获... 继续阅读 >