后端知识

  • MyBatis有一级缓存和二级缓存。一级缓存默认开启,二级缓存默认关闭。 一级缓存基于SqlSession,只要是同一个SqlSession,执行相同的SQL语句会返回缓存中的结果,从而减少数据库访问次数。需要注意的是,如果使用了延迟加载,则会出现无法使用一级缓存的情况,即使查询同一个对象也会多次查库。为避免这种情况,要谨慎使...
    2022-11-24 12:01 后端知识
  • 常用格式 APNG。后缀:.apng,MIME type:image/apng。动态图,比gif性能好,但不如webpge格式。过渡格式。Java不支持。浏览器支持: Chrome, Edge, Firefox, Opera, Safari。AVIF。后缀:.avif,MIME type:image/avif。静态图、动态图,表现都很好。不够流行,浏览器支持不好。Java不支持。浏览器支持: Chrome, Opera, ...
    2022-11-04 17:31 后端知识
  • SpringDoc是用于生成SpringBoot项目API文档的Java库。在代码中使用swagger-api注解,即可生成相应的API文档,和JavaDoc非常类似。 SpringDoc基于Swagger 3,Swagger 3包名为io.swagger.core.v3。 Swagger 3实现了OpenAPI 3接口规范,类似Hibernate实现JPA规范。Swagger 3提供了API注解,还提供了Swagger-ui用于生成API...
    2022-09-24 11:34 后端知识
  • 上一章简单的处理了密码加密问题。但密码加密中有一个更为棘手的问题,这便是加密算法的升级。 如果系统设计之初,还使用md5加密,之后改为了更安全的sha1或sha256,再之后又要改为pbkdf2或bcrypt之类的现代算法。如果又出现更好的加密技术,或者原有加密算法被发现有漏洞,还得继续更改。 这种更改在已上线的系统中是...
    2022-08-16 21:50 后端知识
  • 上一章已经可以使用自定义的登录页面,一切看起来都很好,但是用户名密码并不是自己的。如何做到使用自己数据库里的用户名和密码呢? UserDetailsService接口使用数据库的用户名密码,需要实现UserDetailsService。配置如下: @Bean public UserDetailsService userDetailsService() { return new Us...
    2022-08-16 21:29 后端知识
  • 看到上一章的登录页面,大部分人的第一反应就是,我要用自己的登录页面怎么办? 之前全部使用SpringBoot的默认配置,现在开始需要增加自己的配置项了。 配置自定义登录地址定义自己的SecurityFilterChain,SpringBoot自动配置的SecurityFilterChain将会自动失效。 @Bean public SecurityFilterChain security...
    2022-08-16 13:33 后端知识
  • pom.xml中加入以下代码,就已经有了Spring Security的权限功能了,甚至包括登录页面。简直是保姆式的呵护。 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.2</versi...
    2022-08-16 13:05 后端知识
  • Spring Security学习曲线比较陡峭,因为权限本身就非常复杂,涉及到很多概念。Spring Security要比Shiro难,因为Spring Security提供的功能更多,而Shiro很多功能需要自己实现。要灵活使用Spring Security提供的功能,以及在Spring Security复杂的体系里进行扩展,则需要对Spring Security进行深入了解,否则会一筹莫展、...
    2022-08-16 11:34 后端知识
  • Liquibase是开源的数据库表结构管理解决方案,可以轻管理表结构的变更。 众所周知,使用git管理代码可以使得多人协作、版本管理等工作变得异常轻松。但数据库表结构的管理却一直没有很好的解决方案,比如每次变更数据库都要手动执行SQL脚本,不同版本的程序和不同版本的数据库表结构要小心的匹配,跨数据库平台的还需为...
    2022-07-01 11:00 后端知识
  • “Ok, so there’s a download of Flowable Open Source available, meaning I don’t need to checkout and build from source, but you know what, I’ve still only got a few minutes to see if it’s worth investing more time.” “好的,有编译好的Flowable安装包可以直接下载,这意味着我不需要检出源代码自己...
    2022-06-05 15:58 后端知识
QQ咨询
电话
微信
微信扫码咨询