2020
10-10
10-10
springboot2.x整合shiro权限框架的使用
序在实际项目中,经常需要用到角色权限区分,以此来为不同的角色赋予不同的权利,分配不同的任务。比如,普通用户只能浏览;会员可以浏览和评论;超级会员可以浏览、评论和看视频课等;实际应用场景很多。毫不夸张的说,几乎每个完整的项目都会设计到权限管理。在SpringBoot中做权限管理,一般来说,主流的方案是SpringSecurity,但是由于SpringSecurity过于庞大和复杂,只要能满足业务需要,大多数公司还是会选择Apache...
继续阅读 >
前言我们在开发一个JavaWeb的项目,如果项目整体采用前后端分离的架构的方式,我们会经常使用Swagger来进行接口调试和为前端提供接口文档,但是Swagger并没有实际上那么方便,比如我们在发送Post请求时,参数选填还是非常不友好,那么有没有更好的工具呢?正文knife4jknife4j是为JavaMVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,具有小巧,轻量,并且功能强悍的优点。Knife4j提供两大核心功能:文档...
一、前期配置创建项目时,需要加入DevTools依赖二、测试使用(1)建立HelloController@RestControllerpublicclassHelloController{@GetMapping("/hello")publicStringhello(){return"hellodevtools";}}对其进行修改:然后不用重新运行,重新构建即可:只加载变化的类三、热部署的原理SpringBoot中热部署最最关键的原理就是两个不同的classloader:baseclassloaderrestartclassloader其中baseclassl...
在项目持续集成的过程中,有时候需要实现报表导出和文档导出,类似于excel中这种文档的导出,在要求不高的情况下,有人可能会考虑直接导出csv文件来简化导出过程。但是导出xlsx文件,其实过程相对更复杂。解决方案就是使用poi的jar包。使用源生的poi来操作表格,代码冗余,处理复杂,同时poi的相关联的依赖还会存在版本兼容问题。所以直接使用poi来实现表格导出,维护成本大,不易于拓展。我们需要学会站在巨人的肩膀上解决问题,j...
今日学习新的内容:dubbo dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,一款高性能、轻量级的开源JavaRPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。zookeeper zooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。Sp...
之前研究Jooq,今天来研究一下搭配JPA的QueryDSL吧。简介Querydsl是一个Java开源框架用于构建类型安全的SQL查询语句。它采用API代替拼凑字符串来构造查询语句。可跟Hibernate和JPA等框架结合使用。新建SpringBoot项目。。。还说啥?1.pom.xml<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><depen...
一、校验分类数据的校验一般分为**前端校验、后端校验**二、前端校验前端校验是最为明显的,先说一下:①HTML非空校验如HTML5新增的属性required="true",一旦没有填写就输入框就显示红色,具体使用如:<inputtype="text"id="name"name="name"required="true"/>②JS同时在提交表单发送Ajax请求的时候,来个onSubmit函数,具体例如(使用点EasyUI):functionsubmitData(){$("#fm").form("submit",{url:"/admi...
工程搭建1.File->new->project;2.选择“SpringInitializr”,点击next;(jdk1.8默认即可)3.完善项目信息,组名可不做修改,项目名可做修改;最终建的项目名为:test,src->main->java下包名会是:com->example->test;点击next;4.Web下勾选SpringWebStart,(网上创建springboot项目多是勾选Web选项,而较高版本的Springboot没有此选项,勾选SpringWebStart即可,2.1.8版本是SpringWeb);TemplateEnglines勾选Thymelea...
定时任务在系统中用到的地方很多,例如每晚凌晨的数据备份,每小时获取第三方平台的Token信息等等,之前我们都是在项目中规定这个定时任务什么时候启动,到时间了便会自己启动,那么我们想要停止这个定时任务的时候,就需要去改动代码,还得启停服务器,这是非常不友好的事情直至遇见Quartz,利用图形界面可视化管理定时任务,使得我们对定时任务的管理更加方便,快捷一、Quartz简介Quartz是一个开源的作业调度框架,它完全由J...
一、源码分析自定义异常数据之前我们先看看一下源码上述代码意思是如果你没有提供就使用springboot提供的类这是springboot提供的异常属性类,我们想要自定义,自己的异常数据就只需要继承DefaultErrorAttribute类再重写getErrorAttribute()方法就可以达到我们想要的功能了二、自定义异常数据1、@controller控制器(注入服务)2、@service服务(注入dao)3、@repositorydao(实现dao访问)4、@component(把普通pojo实例化到spr...