基于内存的 key-value 键值对 数据库 应用程序和数据库之间的 Redis 相当于 CPU 和内存之间的 Cache。 基于内存,读写性能高 适合存储热点数据 使用AnotherRedisDesktopManager图形化管理界面 123465 注意: 使用配置文件,则在启动时必须指定所使用的配置文件。如果不使用配置文件,Redis 会使用…
1.分模块设计与开发 便于项目管理、拓展、维护与资源共享 创建项目在IDEA里选择Maven模块。 2.继承 继承的单位是工程(包括模块),类似于java中的继承(不能多继承,即只能有一个父工程),子工程可以继承父工程的配置信息。 实现:在pom.xml中使用<parent>标签 创建父工程: 设置打包方式为pom(默认为jar):<p…
Bean管理: Spring IoC(控制反转)容器对象: ApplicationContext 1. 手动获取bean: 根据name获取bean: Object applicationContext.getBean(String name) 根据类型获取bean: <T> T applicationContext.getBean(Clas…
1 简介 AOP:面向切面编程,指面向特定方法编程 实现: 动态代理 SpringAOP旨在管理bean对象的过程中,主要通过底层的动态代理机制,对特定的方法进行编程。 场景:记录操作日志、权限控制、事务管理... 优势:代码无侵入、减少重复代码、提高开发效率、维护方便 引入依赖: <!-- AOP--> <dependency> &l…
Spring 事务管理 @Transactional 注解:@Transactional 位置:业务层的方法上、类上、接口上 作用:将当前方法交给spring进行事务管理,方法执行前,开启事务;成功执行完毕,提交事务;出现异常,回滚; rollbackFor属性: 默认情况下,只有出现RuntimeException才回滚。rollbackFor属…
怎么处理出现的异常: 不处理:会直接向前端返回500 在异常处 try..catch,代码臃肿 全局异常处理器: 注解: 类的注解:@RestControllerAdvice 声明全局异常处理器类 方法的注解:@ExceptionHandler(捕获异常类型):指定处理的异常类型 例:GlobalExceptionHandler.java: pac…
1 登录校验: 2 会话技术: 会话:浏览器访问资源,建立会话;一方断开连接,结束会话。一次会话可以包含多次请求和响应。 会话跟踪:维护浏览器状态,服务器需要识别多次请求是否来自于同一个浏览器,以便在同一次会话的多次请求间共享数据。 会话跟踪方案: 客户端会话跟踪技术:Cookie 优点:HTTP协议自带且支持 缺点: 移动端APP无法使用 不安全…
1. 条件 1.1 前端要素: 表单项 type="file" 提交方式 post 表单enctype属性 multipart/form-data 1.2 后端要素: MultipartFile 2 本地存储: 不常用。 存储在磁盘中无法在前端页面直接访问 保存文件时可以使用UUID为每一个文件创建一个独一无二的文件名而防止被覆盖。 String …
入门 Mybatis是一款持久层框架,简化了JDBC的操作。 持久层(DAO):完成持久化工作的代码块; 持久化:将程序的数据在持久状态和瞬时状态转化的过程 Mybatis+SpringBoot=只关注application.properties+mapper接口 配置:application.properties #配置数据库连接信息 -四要素 …
1 三层架构: 单一职责原则-> controller:控制层,接收前端发送的请求,对请求进行处理,并相应数据。 service:业务逻辑层,处理具体的业务逻辑。 dao:数据访问层(Data Access Object)(持久层),负责数据访问操作,增删改查 目的:复用性强、便于维护、利于拓展 面向接口的思想。 示例:以上篇EmpContr…