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

什么网站对护肤品测评做的很好图书馆门户网站建设总结

什么网站对护肤品测评做的很好,图书馆门户网站建设总结,外贸网站建设石家庄,建筑网校培训机构排名MyBatis 是一个优秀的持久层框架#xff0c;它简化了 Java 应用与关系数据库之间的映射。对于大多数 Java 开发者而言#xff0c;掌握 MyBatis 是必不可少的一部分。本文将详细介绍 MyBatis 的各个方面#xff0c;包括其基本原理、配置、操作、动态 SQL、插件机制和高级应用…MyBatis 是一个优秀的持久层框架它简化了 Java 应用与关系数据库之间的映射。对于大多数 Java 开发者而言掌握 MyBatis 是必不可少的一部分。本文将详细介绍 MyBatis 的各个方面包括其基本原理、配置、操作、动态 SQL、插件机制和高级应用等帮助你全面了解和熟练使用 MyBatis。 一、MyBatis 简介 1.1 什么是 MyBatis MyBatis 是一款支持定制 SQL、存储过程以及高级映射的优秀持久层框架。它消除了几乎所有的 JDBC 代码以及手动设置参数和获取结果集的过程。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java POJOPlain Old Java Objects为数据库中的记录。 1.2 MyBatis 的特点 灵活性高可以使用原生的 SQL 语句自由度高适应复杂的 SQL 查询。易于集成能够轻松集成到 Spring 框架等其他流行框架中。性能优异支持高效的缓存机制。动态 SQL支持动态 SQL 的生成。 二、MyBatis 的基本原理与架构 2.1 MyBatis 的工作原理 MyBatis 通过 SQL 映射文件或注解将 SQL 语句和 Java 方法关联起来并通过配置文件管理数据库连接池和事务。其核心组件包括 SqlSessionFactory、SqlSession、Mapper 等。 2.2 MyBatis 架构 ConfigurationMyBatis 的核心配置类包含所有配置信息。SqlSessionFactory创建 SqlSession 实例的工厂。SqlSessionMyBatis 与数据库交互的主要接口提供了执行 SQL、获取映射器等方法。MapperMyBatis 中的数据映射接口定义数据库操作方法。 三、MyBatis 的基本配置 3.1 配置文件 MyBatis 的配置文件一般分为主配置文件mybatis-config.xml和映射文件mapper.xml。 3.1.1 主配置文件 ?xml version1.0 encodingUTF-8 ? !DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-config.dtd configurationenvironments defaultdevelopmentenvironment iddevelopmenttransactionManager typeJDBC/dataSource typePOOLEDproperty namedriver valuecom.mysql.cj.jdbc.Driver/property nameurl valuejdbc:mysql://localhost:3306/mybatis/property nameusername valueroot/property namepassword valueroot//dataSource/environment/environmentsmappersmapper resourceorg/mybatis/example/BlogMapper.xml//mappers /configuration3.1.2 映射文件 ?xml version1.0 encodingUTF-8 ? !DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.mybatis.example.BlogMapperselect idselectBlog parameterTypeint resultTypeBlogSELECT * FROM Blog WHERE id #{id}/select /mapper3.2 MyBatis 配置详解 environments配置环境信息可以设置多个环境development、production等。transactionManager事务管理器配置通常有 JDBC 和 MANAGED 两种类型。dataSource数据源配置常见的类型有 UNPOOLED、POOLED 和 JNDI。 四、MyBatis 的基本操作 4.1 SqlSessionFactory 的创建 String resource mybatis-config.xml; InputStream inputStream Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(inputStream);4.2 SqlSession 的使用 try (SqlSession session sqlSessionFactory.openSession()) {Blog blog session.selectOne(org.mybatis.example.BlogMapper.selectBlog, 101);System.out.println(blog); }4.3 Mapper 的使用 4.3.1 定义接口 public interface BlogMapper {Blog selectBlog(int id); }4.3.2 映射 XML 文件 mapper namespaceorg.mybatis.example.BlogMapperselect idselectBlog parameterTypeint resultTypeBlogSELECT * FROM Blog WHERE id #{id}/select /mapper4.3.3 调用 Mapper try (SqlSession session sqlSessionFactory.openSession()) {BlogMapper mapper session.getMapper(BlogMapper.class);Blog blog mapper.selectBlog(101);System.out.println(blog); }五、动态 SQL 5.1 if 标签 select idfindActiveBlogWithTitleLike resultTypeBlogSELECT * FROM Blog WHERE state ACTIVEif testtitle ! nullAND title like #{title}/if /select5.2 choose 标签 select idfindBlog resultTypeBlogSELECT * FROM Blog WHERE state ACTIVEchoosewhen testtitle ! nullAND title like #{title}/whenwhen testauthor ! null and author.name ! nullAND author_name like #{author.name}/whenotherwiseAND featured 1/otherwise/choose /select5.3 trim、where 和 set 标签 trim prefixWHERE prefixOverridesAND |OR ... /trimwhere... /whereset... /set5.4 foreach 标签 select idselectPostIn resultTypedomain.blog.PostSELECT * FROM Post WHERE id INforeach itemitem indexindex collectionlistopen( separator, close)#{item}/foreach /select六、MyBatis 插件机制 6.1 插件接口 Intercepts({Signature(type Executor.class,method update,args {MappedStatement.class,Object.class})}) public class ExamplePlugin implements Interceptor {public Object intercept(Invocation invocation) throws Throwable {return invocation.proceed();}public Object plugin(Object target) {return Plugin.wrap(target, this);}public void setProperties(Properties properties) {// 设置属性} }6.2 注册插件 pluginsplugin interceptororg.mybatis.example.ExamplePluginproperty namesomeProperty value100//plugin /plugins七、MyBatis 高级应用 7.1 MyBatis 与 Spring 的集成 7.1.1 配置 DataSource bean iddataSource classorg.apache.commons.dbcp.BasicDataSourceproperty namedriverClassName valuecom.mysql.cj.jdbc.Driver/property nameurl valuejdbc:mysql://localhost:3306/mybatis/property nameusername valueroot/property namepassword valueroot/ /bean7.1.2 配置 SqlSessionFactoryBean bean idsqlSessionFactory classorg.mybatis.spring.SqlSessionFactoryBeanproperty namedataSource refdataSource/property namemapperLocations valueclasspath:org/mybatis/example/*.xml/ /bean7.1.3 配置 MapperScannerConfigurer bean classorg.mybatis.spring.mapper.MapperScannerConfigurerproperty namebasePackage valueorg.mybatis.example/ /bean7.2 MyBatis 二级缓存 7.2.1 配置缓存 cache evictionLRUflushInterval60000size512readOnlytrue/7.2.2 使用缓存 try (SqlSession session sqlSessionFactory.openSession()) {BlogMapper mapper session.getMapper(BlogMapper.class);Blog blog1 mapper.selectBlog(101);Blog blog2 mapper.selectBlog(101);System.out.println(blog1 blog2); // true }八、总结 本文详细介绍了 MyBatis 的各个方面从基本概念、配置、操作、动态 SQL 到插件机制和高级应用。希望通过这篇文章你能 对 MyBatis 有一个全面而深入的了解能够在实际项目中灵活应用 MyBatis 来处理各种复杂的数据库操作。
http://www.hkea.cn/news/14482658/

相关文章:

  • 网站优化的监测评估搭建简单网站
  • 介绍一个电影的网站模板下载泉州软件开发培训机构
  • 做红酒的网站有哪些网页设计制作方法
  • 电子商务网站建设的书网站获取访客qq号码
  • 网站建设推广合同范本为女足世界杯创建一个网站
  • 郑州做网站推广的公司哪家好php 整个网站变量
  • 网站服务器维护 价目表公司网站搭建费用
  • 免费网站后台管理系统模板网上接设计单在哪里接
  • 系统开发生命周期做推广优化的网站有哪些
  • 在网站接入银联怎么做网站开发课程软件
  • 免费制作个人简历的网站黄岛建设局网站
  • 免费注册网站有哪些广告联盟大全
  • 屏山县建设局网站长沙今天最新招聘信息
  • 做苗木免费网站wordpress下一篇
  • 建设部网站官网查询wordpress如何加跳转
  • 河北建设厅身份认证锁登录网站营销网站定制公司
  • 网站排名优化在线培训wordpress短信登陆
  • 广西医院的网站建设奎文营销型网站建设
  • 网站有做货v电影主题 wordpress
  • 网站建设图片素材义乌网站建设方式
  • 遨游网站建设分销平台软件哪个好
  • 东莞营销网站建设收费标准wordpress下雪
  • 住建局官网网站动漫网站怎么建设
  • 祥云平台官方网站微信小程序源代码
  • 外贸行业建站手机网站建设进度
  • 手机免费网站建设哪家公司好wordpress 内网ip
  • 交易网站前期建设方案学做网站看什么
  • 快速搭建网站的软件二手网站建设模块
  • 南宁公司的网站建设网大论坛
  • 百度指数的网站wordpress 人物照片墙