草庐IT

sqlsession

全部标签

Mybatis框架--优化过程

0.原代码预览简单实现在数据库中插入数据publicvoidtestInsert()throwsIOException{//获取核心配置文件的输入流InputStreamis=Resources.getResourceAsStream("mybatis-config.xml");//获取SqlSessionFactoryBuilder对象SqlSessionFactoryBuildersqlSessionFactoryBuilder=newSqlSessionFactoryBuilder();//获取SqlSessionFactory对象SqlSessionFactorysqlSessionF

Mybatis框架--优化过程

0.原代码预览简单实现在数据库中插入数据publicvoidtestInsert()throwsIOException{//获取核心配置文件的输入流InputStreamis=Resources.getResourceAsStream("mybatis-config.xml");//获取SqlSessionFactoryBuilder对象SqlSessionFactoryBuildersqlSessionFactoryBuilder=newSqlSessionFactoryBuilder();//获取SqlSessionFactory对象SqlSessionFactorysqlSessionF

“SqlSession[xxx] was not registered for synchronization because synchronization is not active”问题成功解决

一、问题详情:springboot项目控制台打印如下日志,但程序可正常运行,并未报错:????D:JavaJDKjdk1.8.0_261injava.exe-XX:TieredStopAtLevel=1-noverify-Dspring.output.ansi.enabled=always"-javaagent:D:idea安装包IntelliJIDEA2021.2.1libidea_rt.jar=53940:D:idea安装包IntelliJIDEA2021.2.1in"-Dcom.sun.management.jmxremote-Dspring.jmx.enabled=true-Dspri

“SqlSession[xxx] was not registered for synchronization because synchronization is not active”问题成功解决

一、问题详情:springboot项目控制台打印如下日志,但程序可正常运行,并未报错:????D:JavaJDKjdk1.8.0_261injava.exe-XX:TieredStopAtLevel=1-noverify-Dspring.output.ansi.enabled=always"-javaagent:D:idea安装包IntelliJIDEA2021.2.1libidea_rt.jar=53940:D:idea安装包IntelliJIDEA2021.2.1in"-Dcom.sun.management.jmxremote-Dspring.jmx.enabled=true-Dspri

MyBatis常见问题描述

1什么是MyBatis  Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。 2 MyBatis优缺点  优点:与各种数据库兼容,基于SQL语句编程,与Spring集成,提供映射标签  缺点:SQL语句编写工作量大,数据库移植性差。 3#{}和${}的区别是什么?#{}防止SQL注入,提供系统安全。会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值。${},就是把

MyBatis常见问题描述

1什么是MyBatis  Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。 2 MyBatis优缺点  优点:与各种数据库兼容,基于SQL语句编程,与Spring集成,提供映射标签  缺点:SQL语句编写工作量大,数据库移植性差。 3#{}和${}的区别是什么?#{}防止SQL注入,提供系统安全。会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值。${},就是把

day09-MyBatis缓存

MyBatis缓存mybatis–MyBatis3|cacheMyBatis一级缓存全详解(一)MyBatis内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制。为了使它更加强大而且易于配置,我们对MyBatis3中的缓存实现进行了许多改进。1.一级缓存1.1基本说明Mybatis的一级缓存(也叫本地缓存/LocalCache)是指SqlSession级别的,作用域是SqlSession。Mybatis默认开启一级缓存,在同一个SqlSession中,相同的Sql查询的时候,第一次查询的时候,就会从缓存中取,如果发现没有数据,那么就从数据库查询出来,并且缓存到HashMap中,如果

day09-MyBatis缓存

MyBatis缓存mybatis–MyBatis3|cacheMyBatis一级缓存全详解(一)MyBatis内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制。为了使它更加强大而且易于配置,我们对MyBatis3中的缓存实现进行了许多改进。1.一级缓存1.1基本说明Mybatis的一级缓存(也叫本地缓存/LocalCache)是指SqlSession级别的,作用域是SqlSession。Mybatis默认开启一级缓存,在同一个SqlSession中,相同的Sql查询的时候,第一次查询的时候,就会从缓存中取,如果发现没有数据,那么就从数据库查询出来,并且缓存到HashMap中,如果

day04-原生的API&注解方式

原生的API&注解方式1.MyBatis原生的API调用1.1原生API快速入门需求:在前面的项目基础上,使用MyBatis原生的API完成,即直接通过SqlSession接口的方法来完成操作1.2代码实现MyBatisNativeTest.java,演示原生的API操作其实底层还是使用的映射的xml文件的sql语句packagecom.li.mapper;importcom.li.entity.Monster;importcom.li.util.MybatisUtils;importorg.apache.ibatis.session.SqlSession;importorg.junit.Be

day04-原生的API&注解方式

原生的API&注解方式1.MyBatis原生的API调用1.1原生API快速入门需求:在前面的项目基础上,使用MyBatis原生的API完成,即直接通过SqlSession接口的方法来完成操作1.2代码实现MyBatisNativeTest.java,演示原生的API操作其实底层还是使用的映射的xml文件的sql语句packagecom.li.mapper;importcom.li.entity.Monster;importcom.li.util.MybatisUtils;importorg.apache.ibatis.session.SqlSession;importorg.junit.Be