TreeMind树图在线AI思维导图
当前位置:树图思维导图模板行业/职业模板其他SSM总结思维导图

SSM总结思维导图

  收藏
  分享
免费下载
免费使用文件
笑面人不爱笑 浏览量:1172023-08-17 09:16:53
已被使用19次
查看详情SSM总结思维导图

SSM

树图思维导图提供 SSM总结 在线思维导图免费制作,点击“编辑”按钮,可对 SSM总结  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:07ecc4ed7ad7c5dcc06534126ca69dcf

思维导图大纲

SSM思维导图模板大纲

01Spring

IoC容器

bean的作用域

单实例singleton

多实例prototype

bean的生命周期

1.实例化

IoC容器会创建一个Bean的实例,并为其分配空间,可通过 构造方法 完成

2.依赖注入

实例化完成后,IoC容器会把属性值注入到Bean对象中

3.初始化

对Bean对象进行初始化操作

4.使用

开发者使用阶段

5.销毁

IoC容器关闭时会对所有的Bean进行销毁操作,释放资源

基于注解管理bean

必须掌握

@Component注解

添加在类上,标记为普通 Spring 组件

@Controller注解

添加在类上,控制器层 Spring 组件

@Service注解

添加在类上,业务逻辑层 Spring 组件

@Repository注解

添加在类上,数据访问层 Spring 组件

@Value注解

添加在属性、setter()方法上,依赖注入

@Qualifier注解

添加在属性上,配合@Autowired注解根据名称装配

@Configuration注解

添加在类上,标记为配置类,Spring会自动加载此类

@Autowired注解

添加在属性、构造方法、setter()方法上,自动装配,注入对象类型数据

需要了解

@Resource注解

添加在属性上,将对象类型依赖注入(装配)

@Scope注解

添加在类上,单实例singleton【默认】和多实例prototype

@PropertySource注解

添加在类上,引入外部属性文件

@ComponentScan注解

添加在类上,自动扫描Spring组件

@PostConstruct注解

添加在方法上,bean对象生命周期初始化方法注解

@PreDestroy注解

添加在方法上,bean对象生命周期销毁方法注解

02MyBatis

基于注解管理

@Mapper注解

添加在接口上,由框架自动创建该接口的实现类,并定义数据访问逻辑

@MapperScan注解

指定包路径,设置自动扫描

@Select()注解

加在接口方法上,查询语句 - JDBC代码 - 操作数据库 - 封装返回值(对象或List<>)

@Delete()注解

加在接口方法上,删除语句 - JDBC代码 - 操作数据库 - 封装返回值int

@Update()注解

加在接口方法上,更新语句 - JDBC代码 - 操作数据库 - 封装返回值int

@Insert()注解

加在接口方法上,插入语句 - JDBC代码 - 操作数据库 - 封装返回值int

基于xml管理

<select>标签

resultMap属性:自定义映射集合,将数据库查询结果映射为任意Java对象或集合

<resultMap id="userMap" type="com.example.User"> <id property="id" column="user_id"/> <result property="name" column="user_name"/> <result property="age" column="user_age"/> </resultMap> <select id="findUserById" resultMap="userMap"> select user_id, user_name, user_age from user where id=#{id} </select>

<id>标签:主键字段

<result>标签:非主键字段

property属性:查询列名[别名]

column属性:数据表字段名

type属性:指定映射的Java对象

<insert>标签

在数据表中插入数据,返回值为受影响的数据条数

<update>标签

更新表数据,返回值为受影响的数据条数

<delete>标签

删除表数,返回值为受影响的数据条数

<set>标签、<foreach>标签、<if>标签

动态SQL【包括动态删除和动态修改】

动态删除

<delete id="deleteComment2"> DELETE FROM comment WHERE id IN ( <foreach collection="list" item="id" separator=","> #{id} </foreach> ) </delete>

collection属性:指定需要遍历的对象类型

item属性:需要赋值的变量名

separator属性:指定多个元素之间的分隔符

动态修改

<update id="updateComment2"> UPDATE comment <set> <if test="content!=null">content=#{content},</if> <if test="created!=null">created=#{created},</if> <if test="userId!=null">user_id=#{userId},</if> <if test="weiboId!=null">weibo_id=#{weiboId}</if> </set> WHERE id=#{id} </update>

<sql>标签、<include>标签

SQL语句重用,减少重复代码

03SpringMVC

@Controller注解

用于标识一个类为请求处理器。当请求到达 DispatcherServlet 时,Spring 会根据请求的 URL 路径和 @RequestMapping 注解去匹配相应的处理器(即被 @Controller 标记的类),并调用相应的方法进行请求处理

@RestController注解

复合注解,@Controller 和 @ResponseBody,既可以声明一个类为请求处理器,又可以将控制器方法的返回结果转为JSON格式数据返给客户端

@RequestMapping注解

处理请求的注解,可以将 URL 映射到指定的控制器类或处理器方法上,从而告诉 Spring MVC 如何处理来自客户端的请求

@RequestBody注解

处理请求体的注解,将请求体中数据解析为JAVA对象,通常用于接收客户端发送的 JSON 或 XML 格式的请求体数据,并将其转换为 Java 对象进行处理

@ResponseBody注解

将控制器方法的返回值转换为指定格式的响应体的注解,比如转为JSON格式

04Pojo

entity实体类

用于和数据库中的表字段一一对应

VO视图对象

用于处理服务器响应给客户端的数据

DTO数据传输对象

用于接收客户端传递给服务器的数据

10Validation

@NotNull注解

不允许为空值NULL

@NotEmpty注解

不允许为空字符串,也不允许为空值NULL

@NotBlank注解

不允许为空白串,不允许为空字符串,也不允许为空值NULL

@Size注解

作用于字符串,限定字符串的长度范围

@Range注解

作用于整型,限制整型的取值范围

@Validated注解

验证注解,用于对参数进行合法性校验

09全局异常处理器

常用注解

@ControllerAdvice注解

标识一个类为全局异常处理器类型,用于处理Controller中抛出的异常

@RestControllerAdvice注解

复合注解:@ControllerAdvice注解 + @ResponseBody注解,标识类为全局异常处理器类型,并允许异常处理方法以返回值的形式返回客户端数据

@ExceptionHandler注解

异常处理方法,用于捕获 Controller 层抛出的异常并进行处理

08统一响应结果处理

状态码类的定义(StatusCode)

@Getter @AllArgsConstructor @NoArgsConstructor public enum StatusCode { /**所有的实例都在最上面*/ SUCCESS(1, "OK"), NOT_LOGIN(1000,"未登录"), LOGIN_SUCCESS(1001,"登录成功"), PASSWORD_ERROR(1002, "密码错误"), USERNAME_ERROR(1003, "用户名错误"), USERNAME_ALREADY_EXISTS(1004, "用户名已存在"), OPERATION_SUCCESS(2001, "操作成功"), OPERATION_FAILED(2002, "操作失败"), VALIDATE_ERROR(3002, "参数校验失败"); private Integer code; private String msg; }

响应结果封装类的定义(JsonResult)

统一响应结果的返回,提高代码的可维护性和高扩展性

07Knife4j

@Api注解

添加在控制器类上的注解,通过tags属性可以修改原本显示控制器类名称的位置的文本,一般加上标号会自动排序

@ApiOperation注解

添加在控制器类中处理请求的方法上的注解,用于配置此方法处理的请求在API文档中显示的文本

@ApiModelProperty注解

添加在POJO类的属性上的注解,用于对请求参数或响应结果中的某个属性进行说明

@ApiImplicitParam注解

添加在控制器类中处理请求的方法上的注解,一旦使用此注解,各个参数的数据类型默认都会显示String,可以通过dataType指定数据类型

@ApiImplicitParams注解

添加在控制器类中处理请求的方法上的注解,当方法有多个非封装的参数时,在方法上添加此注解,并在注解内部通过@ApiImplicitParam数组配置多个参数

/**微博详情页功能*/ @GetMapping("selectById") @ApiOperation(value = "微博详情功能") @ApiImplicitParams(value = { @ApiImplicitParam(name = "id", value = "微博", required=true, dataType = "int"), @ApiImplicitParam(name = "username", value = "用户名", required=true) }) public WeiboDetailVO selectById(int id, String username){ return weiboMapper.selectById(id); }

@ApiIgnore注解

添加在处理请求的方法的参数上,用于表示API文档框架应该忽略此参数

06Lombok

@Getter和@Setter注解

toString注解

@AllArgsConstructor注解

@NoArgsConstructor注解

@Data注解

自动生成 Getter() Setter() toString() 无参构造方法

@Slf4j注解

日志注解,用于调试程序

日志级别

TRACE

最低的日志级别,非常详细的日志信息,通常只在调试时使用

DEBUG

调试级别日志信息,输出有用的调试信息,可帮助诊断应用程序是否按预期工作

INFO

默认级别日志信息,有利于了解应用程序的进程,通常记录应用程序的启动和关闭以及重要事件

WARN

警告级别日志信息,表明某些事情不太对头,一些意外情况的发生或者不一定错误的危险状况,但仍可留待观察,不影响应用程序的正常运行

ERROR

错误级别日志信息,表明可能会导致应用程序无法运行的情况,需要查明并立即解决

05RESTful

URL定位资源

HTTP动词操作资源

GET请求:获取服务端资源

POST请求:服务端新增资源

DELETE请求:删除服务端资源

UPDATE请求:修改服务端资源

HTTP状态码表明结果

200状态码

表示请求成功处理并返回结果

404状态码

请求的资源不存在

500状态码

表示服务器内部错误

405状态码

客户端发送的请求方法与服务器的请求处理方法不匹配

常用注解

@GetMapping

仅接收并处理GET方式请求

@PostMapping

仅接收并处理POST方式请求

@PutMapping

仅接收并处理PUT方式请求

@DeleteMapping

仅接收并处理DELETE方式请求

@PathVariable

用于从URL地址中获取参数值,作为方法参数使用

@GetMapping("/users/{userId}") public User getUserById(@PathVariable int userId) { User user = userService.getUserById(userId); return user; }

相关思维导图模板

慈善组织年度总结颁奖晚会思维导图

树图思维导图提供 慈善组织年度总结颁奖晚会 在线思维导图免费制作,点击“编辑”按钮,可对 慈善组织年度总结颁奖晚会  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:189d072c8d20765fa500065c119a5d3a

文心一言学习总结思维导图

树图思维导图提供 文心一言学习总结 在线思维导图免费制作,点击“编辑”按钮,可对 文心一言学习总结  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:cee3adc77ca2be302ee19ea4ded95d37