微服务SpringCloud
未读application.yml配置#指定服务的端口server: port: #端口号#公共配置mybatis: configuration: #禁用缓存 cache-enabled: false #配置映射驼峰命名法 map-underscore-to-camel-case: true #将运行的sql语句在控制台输出 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl#配置knife4jknife4j: enable: true #开启增强配置 production: false #生产环境屏蔽,开启将禁止访问在线API文档 #Basic认证功能,既是否需要通过用户名, 密码验证后才能访问在线API文档 basic: enable: false #是否开启Basic认证 #如果开启Basic认证,但是没有配置用户名和密码, 默认是admin/123321 username: root password: root#指定服务的应用名称(servic ...
笔记本
未读MybatisConfiguration配置类/** * Mybatis配置类 * * @author java@tedu.cn * @version 0.0.1 */@MapperScan("cn.tedu.csmall.stock.webapi.mapper")//指定Mapper包@Configurationpublic class MybatisConfiguration {}
mapper包接口@Repositorypublic interface AttributeMapper { int insert(Attribute attribute);//方法名绑定Mapper.XML文件属性id int deleteById(Long id); int deleteByIds(Long... ids);}
XML配置<!-- Knife Spring Boot 在线API文档--> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>2.0.9</version> </dependency>
Controller控制器Api注解配置类配置 :Api@Api(tags = "xxx")
方法配置 : @ApiOperation("xxx") , @ApiOperationSupport(order = 1~n)
@Slf4j//@Lazy@Api(tags = "3.图片管理模块")@RestController@RequestMapping("/a ...
SSM开发模式
未读LOMBOK关于LombokLombok是一个可以在编译期生成Setters & Getters、hashCode() & equals()、toString()等代码的框架。
注意:Lombok生成这些代码是在编译期生成的,也就是源代码(.java文件)编译成目标文件(.class文件)的过程中生成的。
添加依赖<!-- Lombok --><dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> <version>1.18.20</version></dependency>
简单的使用在任何类上添加@Data注解,就可以使得在编译期,会生成当前类的属性的Setters & Getters、hashCode() & equals()、toStr ...
关于Mybatis框架Mybatis框架解决了数据库编程相关的问题,主要是简化了数据库编程。
当使用Mybatis框架实现数据库编程时,只需要:
定义数据操作功能的抽象方法(此抽象方法必须在接口中)
配置以上抽象方法映射的SQL语句
Mybatis框架在实现过程中,会自动生成各接口的代理对象,所以,开发人员并不需要关注接口的实现问题。
使用Mybatis框架在Spring Boot项目中,当需要使用Mybatis框架实现数据库编程时,需要添加:
mybatis-spring-boot-starter
数据库的依赖,例如mysql-connector-java
所以,在pom.xml中添加:
<!-- Mybatis框架 --><dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.2</ ...
Redis关于RedisRedis是一款基于内存存储的、使用类似于Map结构的NoSQL数据库。
通常,在应用程序中,将使用Redis存储一些数据,并且,在程序的执行过程中,将优先从Redis中查询数据,以提高查询效率,同时,也能减轻MySQL等数据库服务器的压力,甚至起到保护MySQL等数据库服务器的作用。
内存存储:Redis的数据都是存储在内存(RAM)中的,所以,读写效率非常高,由于是存储在内存中的,所以,断电后数据会全部丢失,但是,Redis自身会处理持久化存储(自动的将内存中的数据也存储到硬盘上),所以,简单使用时,并不用担心重启、关机后Redis丢失数据的问题
类似Map结构:在Redis中存入的数据都要求自定义一个名称,类似于Map中的Key,具体存入的值就是对应的Value,甚至,当反复使用同一个Key存入数据时,事实上是后续的存入覆盖前序的存入
NoSQL数据库:只要是能够存储数据、具有存取功能的,都可以称之为数据库,Redis与传统的关系型数据库不同,它并不会使用到SQL语句来操作数据,只需要简单的读写即可,所以,一般称之为NoSQL数据库(其实,还有其它NoSQ ...
Spring框架作用:主要解决了创建对象和管理对象的问题在使用Spring框架后,当需要某个对象时,直接通过Spring获取对象即可。Spring可以保证类的对象的唯一性,是的各组件出现依赖关系时,不会创建多个相同的对象。由于Spring会创建很多对象并管理起来,开发者需要时直接获取即可,所以Spring通常被称为:”Spring容器”。
通过Spring创建并管理对象 - 组件扫描Spring提供了组件扫描机制,它可以扫描指定的包(包含子孙包),并查找是否存在组件类,判定组件类的标准是类上是否有组件注解,基础的组件注解有:
@Component
@Controller
@Service
@Repository在Spring框架的解释中,以上4个注解完全等效,只是语义不同。
所以,当某个类需要被Spring框架创建对象是,需要:
确保这个类在组件扫描的范围之内
确保这个类添加了组件注解提示:在Spring Boot项目中,默认就已经配置好了组件扫描,扫描的根包就是创建项目已存在的包
通过Spring创建并管理对象 - @Bean方法在Spring框架使用中,如果某个类添加了@C ...
SSM开发模式
未读SPRING VALIDATIONSpring Validation的作用Spring Validation的主要作用是检查请求参数的基本格式。
关于检查请求参数需要注意:在开发实践中,无论是客户端的项目(例如网页前端),还是服务器端的项目,都需要对用户填写、选择的数据进行检查!
其实,最终能够保证数据有效的一定是服务器端的检查,所以,服务器端必须对请求参数进行检查,仅当数据的基本格式有效后,才进行相关的处理。
客户端的检查应该是不作为最终保障的,在前后端分离的模式下,服务器端无法保证所有客户端都采取了统一、有效的验证规则!因为客户端的检查可能并未实现、用户设备中客户端软件的版本并未升级,甚至,客户端软件是可能伪造、篡改的。
即使客户端的检查不一定是可靠的,但是,所有客户端仍应该对请求参数进行检查,如果参数的基本格式不符合要求,则不应该提交请求!毕竟客户端的检查可以把绝大部分错误拦截掉(不会低级错误的请求发到服务器端),以减轻服务器端的压力。
添加依赖在Spring Boot项目中,使用Spring Boot Validation的依赖项是:
<!-- Spring Boot V ...
Spring框架Spring框架作用:主要解决了创建对象和管理对象的问题在使用Spring框架后,当需要某个对象时,直接通过Spring获取对象即可。Spring可以保证类的对象的唯一性,是的各组件出现依赖关系时,不会创建多个相同的对象。由于Spring会创建很多对象并管理起来,开发者需要时直接获取即可,所以Spring通常被称为:”Spring容器”。
通过Spring创建并管理对象 - 组件扫描Spring提供了组件扫描机制,它可以扫描指定的包(包含子孙包),并查找是否存在组件类,判定组件类的标准是类上是否有组件注解,基础的组件注解有:
@Component
@Controller
@Service
@Repository在Spring框架的解释中,以上4个注解完全等效,只是语义不同。
所以,当某个类需要被Spring框架创建对象是,需要:
确保这个类在组件扫描的范围之内
确保这个类添加了组件注解提示:在Spring Boot项目中,默认就已经配置好了组件扫描,扫描的根包就是创建项目已存在的包
通过Spring创建并管理对象 - @Bean方法在Spring框架使用中,如果 ...
关于Spring MVCSpring MVC是基于Spring框架基础之上的,主要解决了后端服务器接收客户端提交的请求,并给予响应的相关问题。
MVC = Model + View + Controller,它们分别是:
Model:数据模型,通常由业务逻辑层(Service Layer)和数据访问层(Data Access Object Layer)共同构成
View:视图
Controller:控制器
MVC为项目中代码的职责划分提供了参考。
需要注意:Spring MVC框架只关心V - C之间的交互,与M其实没有任何关系。
简单的接收请求通常,会使用“控制器”组件来接收请求,这类组件通常使用Controller作为类名的后缀,例如类名为CategoryController、BrandController等。
控制器组件必须添加@Controller注解才会被框架视为控制器,才可以用于接收请求、响应结果。
在Spring MVC中,当需要接收请求时,只需要在控制器中:
自定义处理请求的方法
在方法上使用@RequestMapping系列注解配置请求路径
@Controll ...










