- 博客(17)
- 收藏
- 关注
原创 spring security权限控制以及其中@PreAuthorize、@PostAuthorize、@PreFilter和@PostFilter四者的区别
spring security中可以通过表达式控制方法权限:Spring Security中定义了四个支持使用表达式的注解,分别是**@PreAuthorize**、@PostAuthorize、@PreFilter和@PostFilter。其中前两者可以用来在方法调用前或者调用后进行权限检查,后两者可以用来对集合类型的参数或者返回值进行过滤。要使它们的定义能够对我们的方法的调用产生影响我们需要设置global-method-security元素的pre-post-annotations=”enabled
2021-06-03 15:08:14
552
原创 Java中的除法运算(保留几位小数)
DecimalFormat df = new DecimalFormat("0.00");//设置保留位数return df.format(运算);
2021-04-13 15:36:07
1897
原创 SpringCloud的五大组件详解
首先看一张springCloud的图片:二、简单介绍下什么是springCloud“Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式环境中运行良好,包括开发人员自己的笔记本电脑,裸机数据中心,以及Cloud Foundry等托管平台。” -----来自官网三、为了方便理解假设一
2021-02-23 23:05:45
12304
11
原创 Mybatis一级缓存和二级缓存
区别1)一级缓存 Mybatis的一级缓存是指SQLSession,一级缓存的作用域是SQlSession, Mabits默认开启一级缓存。 在同一个SqlSession中,执行相同的SQL查询时;第一次会去查询数据库,并写在缓存中,第二次会直接从缓存中取。 当执行SQL时候两次查询中间发生了增删改的操作,则SQLSession的缓存会被清空。 每次查询会先去缓存中找,如果找不到,再去数据库查询,然后把结果写到缓存中。 Mybatis的内部缓存使用一个HashMap,key为hashcode+statem
2021-02-23 21:54:18
386
原创 Spring中@Transactional事务回滚
一、使用场景举例在了解@Transactional怎么用之前我们必须要先知道@Transactional有什么用。下面举个栗子:比如一个部门里面有很多成员,这两者分别保存在部门表和成员表里面,在删除某个部门的时候,假设我们默认删除对应的成员。但是在执行的时候可能会出现这种情况,我们先删除部门,再删除成员,但是部门删除成功了,删除成员的时候出异常了。这时候我们希望如果成员删除失败了,之前删除的部门也取消删除。这种场景就可以使用@Transactional事物回滚。二、checked异常和unchecked
2021-01-15 13:34:23
366
原创 @RequestParam注解以及参数
@RequestParam加与不加的区别最简单的两种写法,加或不加@RequestParam注解@RequestMapping("/list")public String test(int userId) { return "list";}@RequestMapping("/list")public String test(@RequestParam int userId) { return "list";}区别: 第一种写法参数为非必传,第二种写法参数为必传。参数名为use
2021-01-09 15:12:34
3392
原创 SpringCloud服务消费者-openFeign组件
作用·:spring cloud提供了一个基础组件方便不同服务之间的HTTP调用,那就是openFeign openFeign默认是集成了Ribbon,默认实现了负载均衡调用接口的代码流程只有两步:创建接口并且注解:下面是对pom文件的分析:<dependencies> <!--同时也是一个client端 需要对其引入pom--> <dependency> <groupId>org.springframework
2020-12-26 13:51:31
201
原创 定时任务@Scheduled(cron = “* * * * * *?“) 表达式
cron表达式格式:{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)}cron表达式各占位符解释:{秒数}{分钟} ==> 允许值范围: 0~59 ,不允许为空值,若值不合法,调度器将抛出SchedulerException异常“*” 代表每隔1秒钟触发;“,” 代表在指定的秒数触发,比如”0,15,45”代表0秒、15秒和45秒时触发任务“-“代表在指定的范围内触发,比如”25-45”代表从25秒开始触发到45秒结束触发,每隔1秒触发1次“/”代表触发步进(
2020-12-25 12:51:59
595
原创 Java compareTo() 方法
compareTo() 方法用于将 Number 对象与方法的参数进行比较。可用于比较 Byte, Long, Integer等。该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较。语法public int compareTo( NumberSubClass referenceName )参数referenceName – 可以是一个 Byte, Double, Integer, Float, Long 或 Short 类型的参数。返回值如果指定的数与参数相等返回0。如
2020-12-23 14:09:25
218
原创 Java中BigDecimal的使用(精确到小数)
在日常开发中我们经常会碰到小数计算,而小数直接计算的话会出现一些小小的错误,如下System.out.println(1.01 + 2.02);你说能输出什么?3.03?实际上输出的是3.0300000000000002。这是因为不论是float 还是double都是浮点数,而计算机是二进制的,浮点数会失去一定的精确度。有没有不失精度的办法呢?这里就要用到BigDecimal了。java.math.BigDecimal。Java在java.math包中提供的API类BigDecimal,用来对超过16
2020-12-22 16:11:32
869
原创 SQL语句查询今天、昨天、7天内、30天、本月、本年的数据
今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0昨天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=17天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=730天内的所有数据:select * from 表名 where DateDiff(dd
2020-12-21 16:11:02
1012
原创 spring中的@Bean和@Configuration要一起使用吗
在使用spring的过程中,一直都看到写代码时@Bean总是与@Configuration一起使用,那么是否真的是使用@Bean一定需要@Configuration呢?? 查了很多资料,终于找到了。鉴于大部分国内查到的资料不没有关于这个问题的解释,即一篇博客记录下来,有同类疑惑的人可以看一下。@Bean作用于方法上,想单独使用肯定是不可能的了,想想也知道,起码要扫描到类嘛(抛除配置文件方式,只说单纯在使用注解的情况),因此在需要在该类上使用@Component/@Configuration/@Servic
2020-12-15 12:51:17
1183
2
原创 IDEA快捷键大全(详细)
一、IDEA常用快捷键Ctrl + F12 弹出当前文件结构层(类的方法属性等),可以在弹出的层上直接输入,进行筛选Ctrl + 左键单击 在打开的文件标题上,弹出该文件路径Ctrl + N 根据输入的 类名 查找类文件Ctrl + D 复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面Ctrl + P 方法参数提示显示Ctrl + Alt + O 优化导入的类,可以对当前文件和整个包目录使用Alt + Insert 代码自动生成,如生成对象的 set / get 方法,构造函数,
2020-12-11 11:58:10
2092
原创 ribbon和Nginx的区别(简单描述)
ribbon和Nginx的区别1.服务器端负载均衡 Nginxnginx 是客户端所有请求统一交给 nginx,由 nginx 进行实现负载均衡请求转发,属于服务器端负载均衡。既请求由 nginx 服务器端进行转发。2.客户端负载均衡 RibbonRibbon 是从 eureka 注册中心服务器端上获取服务注册信息列表,缓存到本地,然后在本地实现轮询负载均衡策略。既在客户端实现负载均衡。应用场景的区别:(1)Nginx适合于服务器端实现负载均衡比如 Tomcat ,Ribbon适合与在微服务
2020-12-11 11:53:48
6072
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人