
MyBatis
mercies
这个作者很懒,什么都没留下…
展开
-
RBAC基于角色的访问控制
文章目录1. RBAC(Role-Based Access Control)的作用:1. RBAC(Role-Based Access Control)的作用:基于角色权限控制(RBAC)是面向企业安全策略的访问控制方式。RBAC核心思想是将控制访问的资源(系统中可以使用的功能,上传下达的文件,URL网址)与角色(Role)进行绑定。系统的用户(user)与角色(Role)再进行绑定,用户便拥有对应的权限...原创 2020-12-17 14:26:20 · 220 阅读 · 0 评论 -
MyBatis之注解
利用注解简化配置1.常用的注解注解可以替代掉原有的XML的各种标签,在程序中利用注解进行开发, 简化程序的配置过程。注解对应XML说明@Insert<insert>新增SQL@Update<update>更新SQL@Delet<delete>删除SQL@Select<select>查询SQL@Param–参数映射@Results<resultMap>结果映射@原创 2020-12-10 17:05:55 · 288 阅读 · 0 评论 -
MyBatis之批处理
1. 批量插入操作goods.xml文件<insert id="batchInsert" parameterType="java.util.List"><!-- foreach 是专门对parameterType传入中的list集合进行遍历的--> INSERT INTO t_goods(title, sub_title, original_cost, current_price, discount, is_free_delivery, categ原创 2020-12-10 15:35:18 · 645 阅读 · 0 评论 -
MyBatis配置C3P0连接池
创建C3P0DataSourceFactory类package com.mybatis.datasource;import com.mchange.v2.c3p0.ComboPooledDataSource;import org.apache.ibatis.datasource.unpooled.UnpooledDataSourceFactory;/** * C3P0与MyBatis兼容使用的数据源共创类 */public class C3P0DataSourceFactory exten原创 2020-12-07 21:50:20 · 143 阅读 · 0 评论 -
不同数据库的分页实现原理
文章目录1. MySQL分页2. Oracle3. SQLServer 20003. SQLServer 2012+1. MySQL分页select * from table limit 10, 2010代表起始行号,20代表从起始行号开始向后多少条数据2. Oracleselect t3. *from(select t2.* , rownum as row_num from(select * form table order by id asc)t2 where rownum<=20原创 2020-12-07 21:26:01 · 344 阅读 · 1 评论 -
MyBatis之OneToMany对象关联查询
1 对多关联查询创建t_goods_detail.xml文件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="goodsDetail"> <s原创 2020-12-07 19:23:38 · 984 阅读 · 0 评论 -
MyBatis之二级缓存
文章目录Mybatis的二级缓存二级缓存运行规则二级缓存字段详细解释Mybatis的二级缓存一级缓存默认开启,缓存范围SqlSession会话耳机缓存手动开启,属于范围Mapper Namespace二级缓存运行规则1.二级开启后,默认所有查询操作均使用缓存2.写操作commit提交时,对该namespace缓存强制清空,这么做是为了保证数据的一致性。3. 配置useCache=false可以不用缓存4. 配置flushCache=true代表强制清空缓存一级缓存测试@Test原创 2020-12-07 15:18:37 · 835 阅读 · 0 评论 -
Mybatis之预防SQL注入攻击
文章目录1. 什么是SQL注入攻击2. MyBatis两种传值方式3. ${} 方式的问题4. #{} 方式1. 什么是SQL注入攻击sql注入是指攻击者利用SQL漏洞,绕过系统约束,越权获取数据的攻击方式2. MyBatis两种传值方式${} 文本替换,未经任何处理对SQL文本替换#{} 预编译传值,使用预编译传值可以预防SQL注入3. ${} 方式的问题goods.xml文件中<select id="selectByTitle" parameterType="java.u原创 2020-12-06 15:59:29 · 242 阅读 · 3 评论 -
Mybatis之更新与删除操作
####1. 更新操作<update id="update" parameterType="com.mybatis.entity.Goods"> UPDATE t_goods SET title = #{title}, sub_title = #{subTitle}, original_cost = #{originalCost}, current_price = #原创 2020-12-06 15:24:49 · 285 阅读 · 0 评论 -
MyBatis之selectKey与useGeneratedKeys的区别
文章目录selectKey属性用法useGeneratedKeys属性用法二者的区别1 --显示与隐示二者的区别2 --应用场景不同在Oracle中selectKey的用法总结selectKey属性用法<insert id="insert" parameterType="com.mybatis.entity.Goods"> insert into t_goods(title, sub_title, original_cost, current_price, discount,原创 2020-12-06 14:47:13 · 736 阅读 · 0 评论 -
MyBatis之数据插入操作
在goods.xml中添加insert标签<insert id="insert" parameterType="com.mybatis.entity.Goods"> insert into t_goods(title, sub_title, original_cost, current_price, discount, is_free_delivery, category_Id) values(#{title}, #{subTitle}, #{originalC原创 2020-12-06 14:12:32 · 1203 阅读 · 0 评论 -
MyBatis之ResultMap结果映射
多表联合查询时,返回结果可能是多个表,所以采用ResultMap对结果进行接收,resultMap使用时,需要先重新建立一个类,包含输出结果的类,如GoodsDTO类, 里边既有Goods类的数据,也有Category类的数据package com.mybatis.dto;import com.mybatis.entity.Category;import com.mybatis.entity.Goods;// Data Transfer Object 数据传输对象public class G原创 2020-12-06 10:13:03 · 233 阅读 · 0 评论 -
MyBatis之获取多表关联查询结果
在goods.xml文件中增加<!-- 利用LinkedHashMap保存对表关联结果 MyBatis会将每一条记录包装为LinkedHashMap对象 Key是字段名,value是对应字段的值,字段类型根据表结构进行自动判断 优点:易于扩展,易于使用 缺点:太过灵活,无法进行编译时检查 --> <select id="selectGoodsMap" resultType原创 2020-12-05 21:46:10 · 251 阅读 · 0 评论 -
MyBatis之参数传递
文章目录1. MyBatis之单参数传递2. MyBatis之多参数传递1. MyBatis之单参数传递在goods.xml文件中的goods下的空间下在增加一个select块<select id="selectById" parameterType="Integer" resultType="com.mybatis.entity.Goods"> select * from t_goods where goods_Id = #{value} </select&原创 2020-12-05 21:15:16 · 133 阅读 · 0 评论 -
MyBatis之初始化工具类和数据查询步骤
1. 初始化工具类MyBatisUtilsSqlSessionFactory:SqlSessionFactory是MyBatis的核心对象用于初始化MyBatis,创建SqlSession对象保证SqlSessionFactory在应用中全局唯一/** * MyBatisUtils 工具类,创建全局唯一的SqlSessionFactory对象 */public class MyBatisUtils { // 利用static(静态) 属于类不属于对象,且全局唯一 priv原创 2020-12-05 20:44:06 · 253 阅读 · 1 评论 -
MyBatis之环境配置
文章目录1. mybatis-config.xml2. SqlSessionFactory3. SqlSession1. mybatis-config.xml首先MyBatis配置文件的名称为:mybatis-config.xmlMyBatis采用XML格式配置数据库环境信息MyBatis环境配置标签为<environment>environment 包含数据库驱动、URL、用户名与密码<?xml version="1.0" encoding="UTF-8" ?>&原创 2020-12-05 20:43:27 · 274 阅读 · 0 评论 -
MyBatis之入门介绍
文章目录1. 什么是MyBatis2. MyBatis开发流程1. 什么是MyBatisMyBatis是最优秀的持久层框架:将内存中的数据保存到数据库中,以防止重启后数据丢失.MyBatis使用XML将SQL与程序解耦,便于维护:用XML文件保存应用程序中使用到的SQL语句,SQL是单独被维护和管理的。通过MyBatis提供的方法来完成与SQL的交互工作。有问题时只需要打开XML文件进行修改MyBatis学习简单,执行高效,是JDBC的延伸:2. MyBatis开发流程引入MyBatis依赖原创 2020-12-05 14:33:17 · 102 阅读 · 0 评论