当前位置: 首页 > 网络应用技术

mybatis_2。核心配置

时间:2023-03-07 20:49:39 网络应用技术

  第1章初始mybatis

   评论:上次我了解MyBatis的基本用途步骤时,我使用MyBatis实现了简单的学生添加,删除和修改的示例,这次我将与您分享MyBatis的核心配置。

   补充:在最后一个示例中,每次执行configuration-> build sqlSessionFactory->创建SQLSession对象时,以这种方式编写的第一个问题是重复代码。第二个是SQLSessionFactory对象多次。一旦创建了工厂对象,它将在整个应用程序执行过程中存在。如果我们多次创建相同的数据库SQLSessionFactory,则会导致浪费资源。

   解决方案:在这方面,我们可以将工具类封装以同时使用单个模式,从而简化了方法代码的简化,同时确保每次获得唯一的出厂对象。

  Mybatis有两个核心对象:SQLSessionFactory和SQLSession。工厂类是编译内存镜子后的单个数据库映射关系。主要角色是创建SQLSession。SQLSession是一个单个线程对象,在应用程序和耐用层之间执行交互式操作。主要角色是执行持久操作。

  它在上一节中也提到:

   通常,每个数据库仅对应于SQLSessionFactory,因此在构造SQLSessionFactory实例时,建议使用单个列模式。

   对于SQLSession,每个业务都应具有SQLSession实例,并且不能共享此实例。在同一时间,使用后应及时关闭SQLSession。

   许多方法都封装在SQLSession中,例如SelectOne,SelectList,Insert,Update,Delete等。我们上次使用。如果您想知道所有方法,我们可以单击SQLSession的源代码以查看:

  Mybatis的配置文件是我们先前配置的“ mybatis-config.xml”文件。在上一章的输入案例中,我们仅在配置文件中使用了它。等待几个元素,但在实际开发中,通常会配置其他元素。对于XML文件,配置项目应按一定顺序进行配置。Mybatisconfig的配置顺序图表附加在此处供您参考:

  属性是配置属性的元素。面对配置开发时,我们通常在DB.Properties中配置与数据库相关的配置,然后通过动态替换替换它数据库的配置。当我们修改数据库信息时,我们只需要修改配置文件而不更改MyBatisconFig代码。特定的实现方法如下: (1)在项目目录中创建一个db.properties文件。编辑后的代码如下所示。

   (2)在mybatis-config.xml中配置mybatis配置文件属性如下:

   (3)使用“ $ {value}”修改与配置文件中数据库连接连接的信息,如下:

  以上是属性的常用配置方法,因此实际上可以扩展标签,配置它单独为每个属性配置了子标签。感兴趣的朋友可以自己咨询相关信息和博客。

  该元素主要是打开第二级高速缓存,并在Mybatis中延迟加载。正常时间的使用频率不是很高。

  该元素是为映射文件中的Java类型设置一个别名。在以前的映射器映射文件中,我们使用完整的>“类名称”设置Java类型,例如:resultytype =“ com.mashang.entity.student.student”。 之后,您只需要配置简短的类名称,例如:resultType =“ student”。(博客作者已经测试了对第一位字母的使用>也可以识别出资本类别>不同)。

  配置方法如下:如下:

  除了可用除元素自定义别名外,MyBatis框架还默认为许多常见类型的Java类型(例如值,字符串,日期和集合等)。

   当Mybatis框架提供的这些类型的处理器无法满足需求时,它们还可以通过自定义方法扩展类型处理器。通过实现TypeHandler接口或继承BaseTypeHandle类。元素是相似的。这里没有特定的处理器显示。如果您需要朋友,则可以自己检查信息。

   该元素用于配置环境,这实际上是数据源的配置。我们可以通过元素配置各种数据源,即配置各种数据库。

   在Mybatis中,可以配置两种类型的交易经理,即JDBC和管理。区别在于,托管从未提交或退回连接,但允许容器管理整个事务的整个生命周期。

   对于数据源的配置,MyBatis框架提供了三个数据源:未冷却,合并和JNDI,如下:

   未冷却:在配置此数据源类型后,每次您要求时都会打开并关闭连接。对于无需性能要求的简单应用程序,它是一个不错的选择。

   合并:此数据源使用“池”的概念来组织JDBC连接对象。此方法使并发的Web应用程序能够快速响应该请求。这是当前的流行处理方法。

   JNDI:此数据源可以在EJB或应用程序服务器等容器中使用。容器可以集中或配置数据源在外部,然后放置JNDI上下文的上下文。

  上述语句中唯一的标识是getStudentById,它接收整数类型的参数(int to integer)并返回学生类型的对象。在上述示例代码中的几个属性中,还有其他一些配置属性,例如如图所示:

   该元素用于映射插入语句。执行元素中定义的SQL语句后,一个整数表示将返回记录的记录的数量。该元素的配置如下:

   元素的属性