当前位置: 首页 > news >正文

橱柜企业网站模板湖州网站制作报价

橱柜企业网站模板,湖州网站制作报价,企业所得税率,阿里巴巴网站怎么做推广方案目录 一、前言 二、Mybatis基础 1. 下载和安装MyBatis 1.1 下载MyBatis 1.2 解压文件 2. 配置MyBatis的数据源 2.1 引入数据库驱动 2.2 配置数据源信息 3. 配置MyBatis的核心配置文件 3.1 指定映射文件路径 3.2 创建映射文件 三、MyBatis注解编程 1. 注解编程的基…目录 一、前言 二、Mybatis基础 1. 下载和安装MyBatis 1.1 下载MyBatis 1.2 解压文件 2. 配置MyBatis的数据源 2.1 引入数据库驱动 2.2 配置数据源信息 3. 配置MyBatis的核心配置文件 3.1 指定映射文件路径 3.2 创建映射文件 三、MyBatis注解编程 1. 注解编程的基本概念 2. 注解编程的使用示例 3. 注解编程的高级用法 四、MyBatis XML编程 1. XML配置文件的基本结构 2. 声明式SQL编写 3. 动态SQL编写 4. 结果映射 5. 类型转换 三、Mybatis高级特性 1. 核心组件详解 1.1 SqlSessionFactory和SqlSession 1.1.1 创建SqlSessionFactory实例 1.1.2 使用SqlSession执行CRUD操作 1.2 映射器Mapper 1.2.1 XML映射文件编写规则 1.2.2 注解方式定义接口及方法映射 1.3 POJO对象与结果映射 1.3.1 resultMap标签使用详解 1.3.2 简单类型与复杂类型的映射处理 2. MyBatis高级特性 2.1 缓存机制 2.1.1 一级缓存 2.1.2 二级缓存 2.2 插件机制 2.3 动态代理与反射技术 2.4 数据库连接池的配置与使用 3. MyBatis事务管理 3.1 JDBC事务与MyBatis事务的概念与区别 3.1.1 JDBC事务 3.1.2 MyBatis事务 3.2 在MyBatis中如何手动控制事务 3.3 Spring整合MyBatis后如何进行事务管理 3.3.1 配置数据源和SqlSessionFactory 3.3.2 配置事务管理器 3.3.3 配置事务通知 3.3.4 配置AOP代理 4. MyBatis缓存机制 4.1 MyBatis的一级缓存原理与实践 4.1.1 一级缓存原理 4.1.2 一级缓存实践 4.2 MyBatis的二级缓存配置与使用注意事项 4.2.1 二级缓存原理 4.2.2 二级缓存使用注意事项 5. Mybatis与Spring集成 5.1 添加依赖 5.2 配置数据源 5.3 编写Mapper接口和映射文件 5.4 配置扫描 5.5 使用Mapper接口 一、前言 在当今的软件开发领域数据持久层的处理是任何应用的关键组成部分。ORMObject-Relational Mapping框架作为一种流行的解决方案致力于简化数据库操作提高开发效率。MyBatis作为一款优秀的ORM框架凭借其简洁而强大的特性受到了广泛关注和应用。 二、MyBatis的概念 MyBatis是一款基于Java的持久层框架它通过将Java对象与数据库中的表进行映射实现了对象与数据库的解耦。与传统的JDBC相比MyBatis允许开发者使用简单的XML或注解配置极大地简化了数据访问层的开发。 三、MyBatis的发展历程 MyBatis的发展可以追溯到2002年最初由Clinton Begin创建并命名为iBatis。随着时间的推移MyBatis逐渐成熟于2010年正式由Apache Software Foundation托管并更名为MyBatis。版本迭代中MyBatis不断推出新功能和优化保持着活跃的开发态势。 四、MyBatis的应用场景 MyBatis适用于各种规模的项目从小型应用到大型企业级系统都能找到它的身影。它的灵活性使得开发者可以根据项目的需要选择合适的配置方式同时在处理复杂SQL和数据库操作时仍然能够提供高度的控制力。 五、MyBatis的优缺点分析 优点 灵活性和可控性 MyBatis提供了灵活的配置方式开发者可以完全掌控SQL语句的编写和执行过程。 性能优化 MyBatis通过内置的缓存机制和参数映射能够有效提升系统性能。 简化数据库操作 相比传统的JDBCMyBatis通过映射文件简化了数据库操作减少了冗余代码。 缺点 不适用于复杂关联查询 在处理复杂关联查询时MyBatis的配置可能相对繁琐。 维护成本随着项目的增长和变更大量的SQL和映射文件可能会带来一定的维护挑战。 性能瓶颈在某些情况下Mybatis的性能瓶颈可能会出现在数据库连接池上导致系统性能下降。 六、MyBatis与Hibernate等ORM框架的对比 与Hibernate等ORM框架相比MyBatis更注重SQL的可控性使得开发者更容易优化和调整SQL语句。Hibernate则更加面向对象通过对象关系映射实现数据库访问。选择MyBatis还是Hibernate取决于项目需求、团队经验和个人偏好。 七、为什么选择MyBatis 在众多ORM框架中为什么选择MyBatis成为了一个常见的问题。首先MyBatis的简单易用让初学者能够迅速上手同时其灵活性也能满足有经验的开发者的需求。MyBatis的优势在于对SQL的直观掌控使得开发者能够更好地优化和调整SQL语句适用于各种项目规模和复杂度。 二、Mybatis基础 MyBatis的安装与配置 MyBatis作为一款强大的持久层框架在使用前需要经过安装和配置的步骤。以下是详细的安装与配置过程 1. 下载和安装MyBatis 1.1 下载MyBatis 访问MyBatis官方网站找到最新版本的MyBatis并下载对应的压缩包。 1.2 解压文件 将下载的压缩包解压到你选择的目录得到MyBatis的安装文件。 2. 配置MyBatis的数据源 2.1 引入数据库驱动 确保你的项目中引入了与你使用的数据库相对应的JDBC驱动比如MySQL、Oracle等。 2.2 配置数据源信息 打开MyBatis的核心配置文件通常是mybatis-config.xml配置数据库连接信息包括数据库URL、用户名和密码等。 !-- 数据库连接配置 -- environments defaultdevelopmentenvironment iddevelopmenttransactionManager typeJDBC/dataSource typePOOLEDproperty namedriver valuecom.mysql.jdbc.Driver/property nameurl valuejdbc:mysql://localhost:3306/your_database/property nameusername valueyour_username/property namepassword valueyour_password//dataSource/environment /environments 3. 配置MyBatis的核心配置文件 3.1 指定映射文件路径 在mybatis-config.xml中配置MyBatis去哪里寻找映射文件。映射文件包含了SQL语句和实体类的映射关系。 !-- 映射文件配置 -- mappersmapper resourcecom/example/YourMapper.xml/ /mappers 3.2 创建映射文件 创建与你的数据库表对应的映射文件定义SQL语句和实体类的映射。 !-- 示例映射文件 YourMapper.xml -- mapper namespacecom.example.YourMapperselect idselectById resultTypeYourEntitySELECT * FROM your_table WHERE id #{id}/select!-- 其他SQL语句映射 -- /mapper 通过按照以上步骤进行MyBatis的安装与配置你将能够搭建一个基本的MyBatis环境并为后续的数据库操作做好准备。确保配置文件的正确性以及数据库连接信息的准确性这样你就能顺利开始使用MyBatis进行数据库持久化操作。 三、MyBatis注解编程 在MyBatis中注解编程是一种更为简洁和直观的方式用于替代XML配置文件。以下是关于MyBatis注解编程的基本概念、使用示例和高级用法的详细介绍 1. 注解编程的基本概念 什么是注解 注解是一种用于为程序元素类、方法、字段等添加元数据metadata的标记。在MyBatis中注解用于替代XML配置文件通过在Java代码中添加注解开发者可以更直观地定义SQL语句和映射关系。 MyBatis常用注解 Select用于声明查询语句。 Insert用于声明插入语句。 Update用于声明更新语句。 Delete用于声明删除语句。 Results用于声明结果集的映射关系。 Result用于声明单个字段与属性的映射关系。 Param用于指定方法参数的名称。 2. 注解编程的使用示例 声明查询语句 Select(SELECT * FROM users WHERE id #{id}) User getUserById(Param(id) int id); 声明插入语句 Insert(INSERT INTO users(name, age) VALUES(#{name}, #{age})) void insertUser(User user); 结果集映射 Results({Result(property id, column user_id),Result(property name, column user_name),Result(property age, column user_age) }) Select(SELECT * FROM users) ListUser getAllUsers(); 3. 注解编程的高级用法 动态SQL 通过UpdateProvider、InsertProvider、SelectProvider等注解结合Provider类可以实现动态生成SQL语句。 高级映射 使用ResultMap注解可以引用在XML中定义的resultMap实现更复杂的结果集映射。 参数处理 Param注解可以明确指定方法参数的名称避免出现歧义尤其在多参数的情况下更为方便。 缓存配置 通过CacheNamespace注解可以配置缓存包括缓存的类型、刷新间隔等。 MyBatis注解编程是一种简洁而灵活的方式使得开发者可以直接在Java代码中定义SQL语句和映射关系减少了对XML配置文件的依赖。在使用注解编程时需要注意保持代码的清晰性和可维护性避免注解过多导致代码难以阅读。根据项目需求和开发者的个人偏好可以选择使用XML配置或注解编程或者两者结合使用。 四、MyBatis XML编程 在MyBatis中XML配置是一种传统且强大的方式用于定义SQL语句和映射关系。以下是关于MyBatis XML编程的基本结构、声明式SQL编写、动态SQL编写、结果映射以及类型转换的详细介绍 1. XML配置文件的基本结构 MyBatis的配置文件通常是mybatis-config.xml其基本结构如下 !-- mybatis-config.xml -- configuration!-- 数据源配置 --environments defaultdevelopmentenvironment iddevelopmenttransactionManager typeJDBC/dataSource typePOOLEDproperty namedriver valuecom.mysql.jdbc.Driver/property nameurl valuejdbc:mysql://localhost:3306/your_database/property nameusername valueyour_username/property namepassword valueyour_password//dataSource/environment/environments ​!-- 映射文件配置 --mappersmapper resourcecom/example/YourMapper.xml//mappers /configuration 2. 声明式SQL编写 在YourMapper.xml中可以使用select、insert、update和delete等元素声明SQL语句 !-- YourMapper.xml -- mapper namespacecom.example.YourMapper!-- 声明查询语句 --select idgetUserById resultTypeUserSELECT * FROM users WHERE id #{id}/select ​!-- 声明插入语句 --insert idinsertUserINSERT INTO users(name, age) VALUES(#{name}, #{age})/insert!-- 其他SQL语句声明 -- /mapper 3. 动态SQL编写 MyBatis提供了强大的动态SQL功能可以根据条件来动态构建SQL语句。例如 !-- YourMapper.xml -- mapper namespacecom.example.YourMapper!-- 动态查询语句 --select idgetUsers resultTypeUserSELECT * FROM userswhereif testname ! nullAND name #{name}/ifif testage ! nullAND age #{age}/if/where/select ​!-- 其他动态SQL语句声明 -- /mapper 4. 结果映射 使用resultMap元素可以定义复杂的结果映射关系将数据库字段映射到Java对象的属性 !-- YourMapper.xml -- mapper namespacecom.example.YourMapperresultMap iduserResultMap typeUserid propertyid columnuser_id/result propertyname columnuser_name/result propertyage columnuser_age//resultMap ​!-- 使用结果映射 --select idgetUserById resultMapuserResultMapSELECT * FROM users WHERE id #{id}/select ​!-- 其他使用结果映射的SQL语句声明 -- /mapper 5. 类型转换 MyBatis支持通过typeHandlers元素配置类型转换器用于将数据库字段的数据类型转换为Java对象的数据类型 !-- mybatis-config.xml -- configuration!-- 类型转换器配置 --typeHandlerstypeHandler handlercom.example.MyTypeHandler//typeHandlers ​!-- 其他配置 -- /configuration 以上是MyBatis XML编程的基本结构、声明式SQL编写、动态SQL编写、结果映射以及类型转换的基本介绍。XML配置方式在复杂的场景下更为灵活可以更精细地控制SQL语句和映射关系。 三、Mybatis高级特性 1. 核心组件详解 1.1 SqlSessionFactory和SqlSession 1.1.1 创建SqlSessionFactory实例 SqlSessionFactory是MyBatis的核心接口用于创建SqlSession实例。通常我们通过SqlSessionFactoryBuilder来构建SqlSessionFactory // 导入必要的类 import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; ​ // 读取配置文件并创建SqlSessionFactory String resource mybatis-config.xml; InputStream inputStream Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(inputStream); 1.1.2 使用SqlSession执行CRUD操作 SqlSession是MyBatis的一个会话对象用于执行数据库操作。常见的操作包括查询、插入、更新、删除等 在MyBatis中可以使用SqlSession对象执行CRUDCreate, Read, Update, Delete操作。以下是一些基本的CRUD操作示例 // 获取SqlSession SqlSession sqlSession sqlSessionFactory.openSession(); ​ try {// 创建User对象User newUser new User(John Doe, 25); ​// 插入数据sqlSession.insert(com.example.YourMapper.insertUser, newUser); ​// 提交事务sqlSession.commit(); } finally {// 关闭SqlSessionsqlSession.close(); } // 获取SqlSession SqlSession sqlSession sqlSessionFactory.openSession(); ​ try {// 查询数据User user sqlSession.selectOne(com.example.YourMapper.getUserById, 1); ​// 处理查询结果if (user ! null) {System.out.println(User ID: user.getId());System.out.println(User Name: user.getName());System.out.println(User Age: user.getAge());} } finally {// 关闭SqlSessionsqlSession.close(); } // 获取SqlSession SqlSession sqlSession sqlSessionFactory.openSession(); ​ try {// 创建User对象User updatedUser new User(1, Updated Name, 30); ​// 更新数据sqlSession.update(com.example.YourMapper.updateUser, updatedUser); ​// 提交事务sqlSession.commit(); } finally {// 关闭SqlSessionsqlSession.close(); } // 获取SqlSession SqlSession sqlSession sqlSessionFactory.openSession(); ​ try {// 删除数据sqlSession.delete(com.example.YourMapper.deleteUser, 1); ​// 提交事务sqlSession.commit(); } finally {// 关闭SqlSessionsqlSession.close(); } 在以上示例中需要替换com.example.YourMapper为你实际的Mapper接口路径。这里的insertUser、getUserById、updateUser、deleteUser是对应于Mapper接口中的方法。 注意上述操作在实际应用中应该放在事务中以保证操作的一致性。可以使用sqlSession.commit()提交事务也可以通过sqlSession.rollback()回滚事务。最后记得关闭SqlSession以释放资源。 1.2 映射器Mapper 1.2.1 XML映射文件编写规则 映射器是定义数据库操作的接口它可以通过XML文件或注解方式编写。XML映射文件通常包括查询、插入、更新、删除等操作的定义 !-- YourMapper.xml -- mapper namespacecom.example.YourMapper!-- 查询操作 --select idgetUserById resultTypeUserSELECT * FROM users WHERE id #{id}/select ​!-- 插入操作 --insert idinsertUserINSERT INTO users(name, age) VALUES(#{name}, #{age})/insert!-- 其他操作的声明 -- /mapper 1.2.2 注解方式定义接口及方法映射 除了XML文件映射器也可以通过注解方式定义 // YourMapper.java public interface YourMapper {// 查询操作Select(SELECT * FROM users WHERE id #{id})User getUserById(int id); ​// 插入操作Insert(INSERT INTO users(name, age) VALUES(#{name}, #{age}))void insertUser(User user); ​// 其他操作的声明 } 1.3 POJO对象与结果映射 1.3.1 resultMap标签使用详解 resultMap标签用于定义结果集映射关系将数据库字段映射到Java对象的属性。例如 !-- YourMapper.xml -- mapper namespacecom.example.YourMapperresultMap iduserResultMap typeUserid propertyid columnuser_id/result propertyname columnuser_name/result propertyage columnuser_age//resultMap ​!-- 使用结果映射 --select idgetUserById resultMapuserResultMapSELECT * FROM users WHERE id #{id}/select ​!-- 其他使用结果映射的SQL语句声明 -- /mapper 1.3.2 简单类型与复杂类型的映射处理 MyBatis可以处理简单类型如基本数据类型、字符串等和复杂类型如自定义对象、集合等的映射。在resultMap中使用id和result元素定义映射关系确保数据库字段和Java对象属性的对应关系。 以上是MyBatis核心组件SqlSessionFactory和SqlSession、映射器Mapper以及POJO对象与结果映射的详细介绍。通过这些核心组件你可以进行灵活而强大的数据库操作。 2. MyBatis高级特性 2.1 缓存机制 MyBatis提供了一级缓存和二级缓存两级缓存机制 2.1.1 一级缓存 一级缓存是SqlSession级别的缓存它默认开启。在同一个SqlSession中执行相同的查询第一次查询的结果会被缓存后续再执行相同的查询直接从缓存中获取而不再去数据库查询。 SqlSession sqlSession sqlSessionFactory.openSession(); try {User user1 sqlSession.selectOne(com.example.YourMapper.getUserById, 1);// 第一次查询从数据库获取数据并缓存到一级缓存中 ​User user2 sqlSession.selectOne(com.example.YourMapper.getUserById, 1);// 第二次查询直接从一级缓存中获取数据不再去数据库查询 } finally {sqlSession.close(); } 2.1.2 二级缓存 二级缓存是Mapper级别的缓存多个SqlSession共享同一个Mapper的二级缓存。需要在映射文件中配置开启 !-- YourMapper.xml -- mapper namespacecom.example.YourMapper useCachetrue!-- 配置二级缓存 -- /mapper 2.2 插件机制 MyBatis的插件机制允许在SQL执行过程中的某一点上插入自定义逻辑。插件需要实现Interceptor接口并在配置文件中指定插件 // 自定义插件示例 public class MyPlugin implements Interceptor {Overridepublic Object intercept(Invocation invocation) throws Throwable {// 在方法执行前的逻辑Object result invocation.proceed();// 在方法执行后的逻辑return result;} } ​ // 在配置文件中配置插件 pluginsplugin interceptorcom.example.MyPlugin/ /plugins 2.3 动态代理与反射技术 // 定义Mapper接口 public interface YourMapper {User getUserById(int id); } ​ // Mapper接口的代理对象 YourMapper mapper sqlSession.getMapper(YourMapper.class); User user mapper.getUserById(1); MyBatis使用动态代理来实现Mapper接口的代理对象通过代理对象调用方法时实际执行的是MyBatis内部封装的SQL语句。动态代理的实现借助了Java的反射技术使得Mapper接口的实现类不需要开发者手动编写。 2.4 数据库连接池的配置与使用 MyBatis本身并不提供数据库连接池而是依赖于外部的连接池。常见的连接池有Druid、               HikariCP、C3P0等。连接池的配置需要在mybatis-config.xml中进行 !-- 数据库连接池的配置 -- dataSource typePOOLEDproperty namedriver valuecom.mysql.jdbc.Driver/property nameurl valuejdbc:mysql://localhost:3306/your_database/property nameusername valueyour_username/property namepassword valueyour_password/ /dataSource 选择合适的数据库连接池可以提高系统性能和资源利用率。 以上是MyBatis高级特性的简要介绍包括缓存机制、插件机制、动态代理与反射技术以及数         据库连接池的配置与使用。这些特性使得MyBatis在灵活性和性能方面都有很好的表现。 3. MyBatis事务管理 3.1 JDBC事务与MyBatis事务的概念与区别 3.1.1 JDBC事务 JDBC事务是指一系列SQL语句组成的操作序列要么全部执行成功要么全部执行失败保持数据库的一致性。JDBC事务通常通过Connection对象的commit和rollback方法进行提交和回滚。 // JDBC事务示例 Connection connection dataSource.getConnection(); try {connection.setAutoCommit(false); // 开启事务 ​// 执行一系列SQL操作 ​connection.commit(); // 提交事务 } catch (Exception e) {connection.rollback(); // 回滚事务 } finally {connection.close(); } 3.1.2 MyBatis事务 MyBatis事务是建立在JDBC事务之上的MyBatis的事务管理是对JDBC事务的封装。MyBatis事务通常由SqlSessionFactory创建的SqlSession对象管理。 3.2 在MyBatis中如何手动控制事务 在MyBatis中可以通过SqlSession对象的commit和rollback方法手动控制事务。默认情况下MyBatis的SqlSession是自动提交事务的如果需要手动控制可以通过以下方式 SqlSession sqlSession sqlSessionFactory.openSession(false); // 手动提交事务 try {// 执行一系列MyBatis操作 ​sqlSession.commit(); // 提交事务 } catch (Exception e) {sqlSession.rollback(); // 回滚事务 } finally {sqlSession.close(); } 3.3 Spring整合MyBatis后如何进行事务管理 在Spring中可以通过DataSourceTransactionManager或JtaTransactionManager等事务管理器来整合MyBatis和Spring的事务管理。以下是一个简单的Spring整合MyBatis并进行事务管理的示例 3.3.1 配置数据源和SqlSessionFactory !-- Spring配置文件 -- bean iddataSource classorg.springframework.jdbc.datasource.DriverManagerDataSource!-- 配置数据源信息 -- /bean ​ bean idsqlSessionFactory classorg.mybatis.spring.SqlSessionFactoryBeanproperty namedataSource refdataSource/property namemapperLocations valueclasspath*:com/example/mappers/*.xml/ /bean 3.3.2 配置事务管理器 bean idtransactionManager classorg.springframework.jdbc.datasource.DataSourceTransactionManagerproperty namedataSource refdataSource/ /bean 3.3.3 配置事务通知 tx:advice idtxAdvice transaction-managertransactionManagertx:attributestx:method name* propagationREQUIRED//tx:attributes /tx:advice 3.3.4 配置AOP代理 aop:configaop:advisor advice-reftxAdvice pointcutexecution(* com.example.YourMapper.*(..))/ /aop:config 通过以上配置Spring会在MyBatis的Mapper方法上织入事务管理逻辑使得MyBatis的操作处于一个事务中。在实际项目中可以根据具体需求进行更灵活的配置。 以上是关于MyBatis事务管理的简要介绍包括JDBC事务与MyBatis事务的区别、如何手动控制MyBatis事务以及Spring整合MyBatis后如何进行事务管理。事务管理是数据库操作中非常重要的一部分能够确保数据的一致性和完整性。 4. MyBatis缓存机制 4.1 MyBatis的一级缓存原理与实践 4.1.1 一级缓存原理 MyBatis的一级缓存是SqlSession级别的缓存它默认开启。在同一个SqlSession中执行相同的查询第一次查询的结果会被缓存后续再执行相同的查询直接从缓存中获取而不再去数据库查询。 一级缓存的作用域是SqlSession当SqlSession关闭时一级缓存也会被清空。 4.1.2 一级缓存实践 SqlSession sqlSession sqlSessionFactory.openSession(); try {User user1 sqlSession.selectOne(com.example.YourMapper.getUserById, 1);// 第一次查询从数据库获取数据并缓存到一级缓存中 ​User user2 sqlSession.selectOne(com.example.YourMapper.getUserById, 1);// 第二次查询直接从一级缓存中获取数据不再去数据库查询 } finally {sqlSession.close(); } 4.2 MyBatis的二级缓存配置与使用注意事项 4.2.1 二级缓存原理 MyBatis的二级缓存是Mapper级别的缓存多个SqlSession共享同一个Mapper的二级缓存。要启用二级缓存需要在映射文件中配置 !-- YourMapper.xml -- mapper namespacecom.example.YourMapper useCachetrue!-- 配置二级缓存 -- /mapper 4.2.2 二级缓存使用注意事项 对象需要实现Serializable接口以便能够被序列化从而存储到缓存中。 不同SqlSession之间共享缓存需要注意缓存的有效性。 在进行增删改操作时会清空相应的Mapper的二级缓存。 SqlSession sqlSession1 sqlSessionFactory.openSession(); SqlSession sqlSession2 sqlSessionFactory.openSession(); ​ try {// sqlSession1查询数据存入二级缓存User user1 sqlSession1.selectOne(com.example.YourMapper.getUserById, 1); ​// sqlSession2查询直接从二级缓存中获取数据User user2 sqlSession2.selectOne(com.example.YourMapper.getUserById, 1); } finally {sqlSession1.close();sqlSession2.close(); } 以上是MyBatis缓存机制的简要介绍包括一级缓存的原理与实践以及二级缓存的配置与使用注意事项。缓存是提高系统性能和减轻数据库压力的重要手段但在使用缓存时需要注意缓存的生命周期和清空时机确保数据的一致性。 在Spring Boot项目中集成MyBatis是相对简单的Spring Boot提供了一些自动配置和简化配置的特性使得整合变得更加便捷。以下是在Spring Boot下快速集成MyBatis的基本步骤 5. Mybatis与Spring集成 5.1 添加依赖 首先确保在pom.xml文件中添加MyBatis和Spring Boot相关的依赖 !-- MyBatis依赖 -- dependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion2.2.0/version /dependency ​ !-- 数据库驱动依赖以MySQL为例 -- dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.23/version /dependency ​ !-- Spring Boot依赖 -- dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter/artifactId /dependency 5.2 配置数据源 在application.properties或application.yml中配置数据源信息 spring.datasource.urljdbc:mysql://localhost:3306/your_database spring.datasource.usernameyour_username spring.datasource.passwordyour_password spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver 5.3 编写Mapper接口和映射文件 创建Mapper接口和对应的映射文件例如 // YourMapper.java public interface YourMapper {User getUserById(int id); } !-- YourMapper.xml -- mapper namespacecom.example.YourMapperselect idgetUserById resultTypeUserSELECT * FROM users WHERE id #{id}/select /mapper 5.4 配置扫描 在Spring Boot应用的主类上添加MapperScan注解配置Mapper接口的扫描路径 SpringBootApplication MapperScan(com.example) public class YourApplication {public static void main(String[] args) {SpringApplication.run(YourApplication.class, args);} } 5.5 使用Mapper接口 在需要使用Mapper的地方注入Mapper接口并调用方法即可 Service public class YourService {Autowiredprivate YourMapper yourMapper; ​public User getUserById(int id) {return yourMapper.getUserById(id);} } 以上步骤完成后Spring Boot应用就成功集成了MyBatis。Spring Boot会根据依赖和配置自动进行MyBatis的初始化和配置使得整合变得简洁而方便。
http://www.zqtcl.cn/news/958273/

相关文章:

  • 优化站诊断山东大型网站建设
  • 网页设计与制作个人网站网络开发工程师
  • 沈阳网站关键词优化哪家好外贸营销网站制作公司
  • 连云港做网站的临沂网站建设有哪些
  • 做毕设的网站万wordpress图片怎么居中
  • 首页网站模板网站外链分析怎么做
  • so域名的网站有哪些结合公众号小店做网站
  • 阜宁专业做网站做信息网站能挣钱吗
  • wordpress 怎么手动更新宝安网站 建设seo信科
  • 腾讯的网站建设用了多少钱找人合伙做网站平台
  • 企业网站功能模块介绍服务器免费体验
  • 小程序制作收款网站结构优化的优化包括
  • 北京市建设工程质监站网站poi player wordpress
  • php网站开发工程师招聘网自己做小程序要钱吗
  • 两学一做考试网站空间网
  • 齐诺网站建设东莞网站建设做网站集团网站群
  • 网站运营策略如何做软件网站开发培训
  • 数据库型网站wordpress上传工具
  • 太原建站公司模板宁波seo公司哪家好
  • 电商网站都是用什么做的承接电商网站建设
  • c2c网站代表有哪些怎样制作个人网站
  • wordpress linux 建站安丘市建设局官方网站
  • 谁给个好网站硬件开发是什么
  • 海外网站加速器免费长春做网站优化哪家好
  • 建立网站需要多长钱电脑网页设计培训
  • 给网站划分栏目邢台做网站优化费用
  • 网群企业网站管理系统红塔区住房和城乡建设局网站
  • 濮阳网站建设在哪做沈阳百度网站的优点
  • 网站上如何做问卷调查温州建设局官方网站
  • 做一件代发哪个网站好具有品牌的福州网站建设