企业开发基础-5-Mybatis-Plus
简介
概述
MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
特性
无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑
损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作
强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求
支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错
支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题
支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强 大的 CRUD 操作
支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere )
内置代码生成器:采用代码或者 Maven ...
企业开发基础-4-Mybatis-实战篇
增删改查
查询单个实体对象
1User getUserById(@Param("id") int id);
123<select id="getUserById" resultType="User"> SELECT * FROM t_user WHERE id = #{id}</select>
查询单个List集合
1List<User> getAllUsers();
123<select id="getAllUser" resultType="User"> SELECT * FROM t_user</select>
注意:当查询的数据为多条时,不能使用实体类作为返回值,否则会抛出异常 TooManyResultsException;但是若查询的数据只有一条,可以使用实体类或集合作为返回值
查询单个数据
1int getCount();
123<select id="ge ...
企业开发基础-4-Mybatis-映射篇
顶级元素 ( 按照应被定义的顺序列出 )
元素
说明
cache
该命名空间的缓存配置
cache-ref
引用其它命名空间的缓存配置
resultMap
描述如何从数据库结果集中加载对象
sql
可被其它语句引用的可重用语句块
insert
映射插入语句
update
映射更新语句
delete
映射删除语句
select
映射查询语句
文件结构
命名规则:数据库表对应的类名+Mapper.xml
一个映射文件对应一个实体类,对应一个表中的操作
映射文件主要用于编写SQL、访问以及操作表中的数据
映射文件存放位置是maven工程下的src/main/resources/mappers目录下
映射配置文件要保证两个一致
mapper接口的全类名和映射文件的命名空间namespace保持一致
mapper接口中方法的方法名和映射文件中编写SQL的标签的id属性保持一致
1234567891011<?xml version="1.0" encoding="UTF-8" ...
企业开发基础-4-Mybatis-配置篇
文件结构
示例
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748<?xml version="1.0" encoding="UTF-8" ?><!--DTD约束--><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <!-- 1.environments配置数据库的环境,环境可以有多个 2.default属性指定使用的环境 --> <environments default="development"> ...
企业开发基础-4-Mybatis-基础篇
简介
基本介绍
官网文档
MyBatis 是一款优秀的持久层框架,它支持 自定义 SQL、存储过程以及高级映射。
MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。
MyBatis 可以通过简单的 XML或注解 来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录
数据持久化
持久化就是将程序的数据在持久状态和瞬时状态转化的过程
内存:断电即失
ORM 思想
ORM 是指(Object Relationship Mapping)对象关系映射
对象:Java 的实体类对象
关系:关系型数据库
映射:二者之间的对应关系
Java概念
数据库概念
类
表
属性
字段/列
对象
记录/行
日志日志工厂Mybatis 通过使用内置的日志工厂提供日志功能。内置日志工厂将会把日志工作委托给下面的实现之一:
SLF4J
Apache Commons Logging
Log4j 2
Log4j (3.5.9 起废弃)
JDK logg ...
企业开发基础-3-SpringMVC
Spring MVC
浅谈 MVC
Model,模型层,指工程中的 JavaBean,作用是处理数据
JavaBean 分为两类:
一类称为实体类 Bean:专门存储业务数据
一类称为业务处理 Bean:指 Service 或 Dao 对象,专门用于处理业务逻辑和数据访问
View,视图层,指工程中的html页面,作用是与用户进行交互,展示数据
Controller,控制层,指工程中的 servlet,作用是接收请求和响应浏览器
MVC 工作流程
用户通过视图层发送请求到服务器,在服务器中请求被 Controller 接收
Controller 调用相应的 Model 层处理请求,处理完毕将结果返回到 Controller
Controller 再根据请求处理的结果找到相应的 View 视图,渲染数据后最终响应给浏览器
Spring MVC
Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块
Spring 家族原生产品,与 IOC 容器等基础设施无缝对接
基于原生的 Servlet,通过功能强大的 前端控制器 DispatcherS ...









