1.问题引出:前端浏览器发起HTTP请求,后端服务器程序负责回应HTTP请求试问:如何使得idea的Springboot实时读取MySQL上的数据?2.引入关键技术Mybatis框架可以很好的解决这一问题关于Mybatis的作用:MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的XML或注解来配置和映射原始类型、接口和JavaPOJO(PlainOldJavaObjects,普通老式Java对象)为数据库中的记录。3.Mybatis读取MySQL数据的原理:①:我
1、二级缓存 二级缓存的原理和一级缓存原理一样,第一次查询,会将数据放入缓存中,然后第二次查询则会直接去缓存中取。但是一级缓存是基于sqlSession的,而二级缓存是基于mapper文件的namespace的,也就是说多个sqlSession可以共享一个mapper中的二级缓存区域,并且如果两个mapper的namespace相同,即使是两个mapper,那么这两个mapper中执行sql查询到的数据也将存在相同的二级缓存区域中。如何使用二级缓存1.1、开启二级缓存 和一级缓存默认开启不一样,二级缓存需要我们手动开启首先在全局配置文件sqlMapConfig.xm
来吧,整起,又一新功能,通用数据权限,注意是通用,通用的东西,反正挺烦的。我还是第一次搞这玩意儿,因为之前做细节的数据权限都是直接写在代码里面的好,开整,这篇文章我会写得详细一点,并且提供开源源码,全靠我自己设计,编码,一步步的敲出来的,很少的地方借鉴到了别人的东西,切看切珍惜,动动你的小手点个赞,点个收藏吧。一、啥子是数据权限?嗯,数据权限?有些朋友可能会问了,“嗯,数据还有权限?”没错,简单来讲:数据权限无非就是某人只能看到某些数据。举个例子:张三登录了A系统,那么根据系统查询出来的张三所拥有的权限,比如张三有一个A部门的数据权限,那么,在A系统中,张三只能看到A部门相关的数据。二、做这个
该文章纯属记录使用过程中遇到的问题更新null值没有生效的问题解决办法,内容较为简单。1.出现的问题前端修改数据时把属性内容删除然后进行保存,默认传的null,后端更新时属性值为null,然后调用updateById进行更新时发现该属性还是原来的值:name:"tt";//前端页面把该属性内容进行删除传给我后端{name:null}//后端接收到的name:null//使用该方法进行更新updateById();//结果name还是等于更新前的值name:"tt";后面百度发现该update方法不会对属性null的进行更新2.原因mybatis-plusFieldStrategy有三种策略:I
文章目录一、单选题二、多选题三、判断题四、填空题一、单选题1、下列属性中,不属于@Results注解的是()。A、columnB、propertyC、sizeD、one正确答案:C无解析2、下列注解中,可以实现一对一关联查询的是()。A、@SelectB、@ResultC、@OneD、@Many正确答案:CMyBatis中@Results注解可以用在三种关联查询方式中,其中@Result注解是@results的子元素;@One可以实现一对一关联查询;@Many可以实现一对多关联查询3、在数据表employee中根据id删除员工信息,下列@Delete注解的写法正确的是()。A、@Delete(
前言数据源,实际就是数据库连接池,负责管理数据库连接,在Springboot中,数据源通常以一个bean的形式存在于IOC容器中,也就是我们可以通过依赖注入的方式拿到数据源,然后再从数据源中获取数据库连接。那么什么是多数据源呢,其实就是IOC容器中有多个数据源的bean,这些数据源可以是不同的数据源类型,也可以连接不同的数据库。本文将对多数据如何加载,如何结合MyBatis使用进行说明,知识点脑图如下所示。正文一.数据源概念和常见数据源介绍数据源,其实就是数据库连接池,负责数据库连接的管理和借出。目前使用较多也是性能较优的有如下几款数据源。TomcatJdbc。TomcatJdbc是Apach
记录业务中遇到的使用场景:灵活对数据库敏感字段进行加密和解密文章目录前言一、创建数据库表和实体类二、Mapper、Service、Controller等三、自定义注解四、加密工具类五、参数拦截器和结果集拦截器六、运行结果总结前言项目中遇到一个需求,要对指定的数据库表中的敏感字段进行加密存储,读取的时候再进行解密返回给前端,以下对具体的实现过程进行记录和解释。一、创建数据库表和实体类数据库表:CREATETABLE`sys_user`(`user_id`bigint(20)NOTNULLAUTO_INCREMENT,`username`varchar(60)DEFAULTNULL,`passwo
BACKGROUND你是否也有这样的烦恼:每次写代码都需要创建很多包很多层很多类很多接口?耗时且费力姑且不谈,有时可能还大意了没有闪,搞出一堆bug这谁顶得住啊都3202年了,让程序自力更生吧!!教程lesson|准备prepare添加依赖com.baomidoumybatis-plus-generator3.5.3.1org.freemarkerfreemarker2.3.32复制如下文件内容(本人定制,功能已经可以满足日常开发~更多可查阅官方文档)packagecom.benjamin.demo.utils;importcom.baomidou.mybatisplus.annotation
小白做毕设---后台管理系统写在前面的话:基本工具准备任务一VUE+ElementUI环境搭建一、新建Vue2项目1.安装Vue脚手架,终端输入npminstall-g@vue/cli,回车。2.开始新建Vue项目3.项目初始结构4.几个重要的初始文件(仅供参考,目前不需要做任何修改)。5.运行项目二、安装ElementUI1.安装ElementUI2.在main.js中引入ElementUI。3.测试Element是否引入成功。4.再次打开网页,观察home页面。环境搭建完毕。写在前面的话:这里是为2023届学生完成一个管理系统(主要是后台)的连续更新博客。持续时间为20天,每日练习时间约2
在项目中,某些实体类之间肯定有关键关系,比如一对一,一对多等。mybatis中就用association和collection。association:一对一关联(hasone)collection:一对多关联(hasmany)注意,只有在做select查询时才会用到这两个标签,都有三种用法,且用法类似。一、association的三种用法:先看如下代码(省略set、get方法):publicclassUser{privateIntegeruserId;privateStringuserName;privateIntegerage;privateCardcard;//一个人一张身份证,1对1}