iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >Properties在MyBatis 中的作用是什么
  • 183
分享到

Properties在MyBatis 中的作用是什么

mybatisproperties 2023-05-31 08:05:55 183人浏览 泡泡鱼
摘要

这篇文章将为大家详细讲解有关Properties在mybatis 中的作用是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、我们将 数据库的配置语句写在 db.propert

这篇文章将为大家详细讲解有关Properties在mybatis 中的作用是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

1、我们将 数据库的配置语句写在 db.properties 文件中

jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:Mysql://localhost:3306/SSMjdbc.username=rootjdbc.passWord=root

2、在  mybatis-configuration.xml 中加载db.properties文件并读取

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "Http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><!-- 加载数据库属性文件 --><properties resource="db.properties"></properties> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <!--dataSource 元素使用标准的 JDBC 数据源接口来配置 JDBC 连接对象源 --> <dataSource type="POOLED"> <property name="driver" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </dataSource> </environment> </environments></configuration>

  如果数据库有变化,我们就可以通过修改 db.properties 文件来修改,而不用去修改 mybatis-configuration.xml 文件

注意:我们也可以在<properties></properties>中手动增加属性

<!-- 加载数据库属性文件 --><properties resource="db.properties"> <property name="username" value="aaa"/></properties>

  那么这个时候是读取的username 是以 db.properties 文件中的 root 为准,还是以自己配置的 aaa 为准呢?

我们先看一段 properties 文件加载的源码

private void propertiesElement(Xnode context) throws Exception { if (context != null) {  Properties defaults = context.getChildrenAsProperties(); String resource = context.getStringAttribute("resource"); //resource 制定的属性路径 String url = context.getStringAttribute("url"); //url制定的属性路径 if (resource != null && url != null) { throw new BuilderException("The properties element cannot specify both a URL and a resource based property file reference. Please specify one or the other."); }  if (resource != null) { defaults.putAll(Resources.getResourceAsProperties(resource)); } else if (url != null) {  defaults.putAll(Resources.getUrlAsProperties(url)); }  Properties vars = configuration.getVariables(); if (vars != null) { defaults.putAll(vars); } parser.setVariables(defaults); configuration.setVariables(defaults); }}

通过源码我们可以分析读取优先级:

    1、在 properties 内部自定义的属性值第一个被读取

    2、然后读取 resource 路径表示文件中的属性,如果有它会覆盖已经读取的属性;如果 resource 路径不存在,那么读取 url 表示路径文件中的属性,如果有它会覆盖第一步读取的属性值

    3、最后读取 parameterType 传递的属性值,它会覆盖已读取的同名的属性

  前面两步好理解,第三步我们可以举个例子来看:

    我们在 userMapper.xml 文件中进行模糊查询

<select id="selectLikeUserName" resultType="com.ys.po.User" parameterType="String"> select * from user where username like '%${jdbc.username}%' <!-- select * from user where username like #{username} --></select>

    这个时候你会发现无论你后台传给这个查询语句什么参数,都是 select * from user where username like '%root%'

mybatis 的别名配置  

  在 userMapper.xml 文件中,我们可以看到resultType 和 parameterType 需要指定,这这个值往往都是全路径,不方便开发,那么我们就可以对这些属性进行一些别名设置

Properties在MyBatis 中的作用是什么

1、mybatis 默认支持的别名


  Properties在MyBatis 中的作用是什么

2、自定义别名  

  一、定义单个别名

    首先在全局配置文件 mybatis-configuration.xml 文件中添加如下配置:是在<configuration>标签下

<!-- 定义别名 --><typeAliases> <typeAlias type="com.ys.po.User" alias="user"/></typeAliases>

    第二步通过 user 引用

Properties在MyBatis 中的作用是什么

  二、批量定义别名

    在全局配置文件 mybatis-configuration.xml 文件中添加如下配置:是在<configuration>标签下

<!-- 定义别名 --><typeAliases> <!-- mybatis自动扫描包中的po类,自动定义别名,别名是类名(首字母大写或小写都可以,一般用小写) --> <package name="com.ys.po"/></typeAliases>

关于Properties在MyBatis 中的作用是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: Properties在MyBatis 中的作用是什么

本文链接: https://www.lsjlt.com/news/224344.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Properties在MyBatis 中的作用是什么
    这篇文章将为大家详细讲解有关Properties在MyBatis 中的作用是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、我们将 数据库的配置语句写在 db.propert...
    99+
    2023-05-31
    mybatis properties
  • <![CDATA[ ]]>在Mybatis 中的作用是什么
    <![CDATA[ ]]>在Mybatis 中的作用是什么?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。<![CDATA[   ]]>...
    99+
    2023-05-31
    mybatis dat
  • mybatis中namespace的作用是什么
    在MyBatis中,namespace的作用是将SQL语句映射到对应的Java接口或者映射文件上。通过namespace可以将SQL...
    99+
    2024-03-04
    mybatis
  • mybatis中mapper的作用是什么
    在MyBatis中,Mapper的作用是定义SQL映射关系,即将Java方法与SQL语句进行绑定。Mapper文件中包含了SQL语句...
    99+
    2024-03-04
    mybatis
  • MyBatis中TypeHandler的作用是什么
    在MyBatis中,TypeHandler的作用是将Java类型和数据库类型进行转换,实现Java对象和数据库字段之间的映射。Typ...
    99+
    2024-03-07
    MyBatis
  • <include>标签在mybatis中的作用是什么
    <include>标签在mybatis中的作用是什么?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。MyBatis中sql标签定义SQL片段,include标签引...
    99+
    2023-06-06
  • springboot中properties的用法是什么
    在Spring Boot中,properties文件是一种常用的配置文件格式,用来配置应用程序的各种属性。这些属性可以包括数据库连接...
    99+
    2024-04-02
  • 怎么在MyBatis中对properties进行配置
    本篇文章为大家展示了怎么在MyBatis中对properties进行配置,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,...
    99+
    2023-05-30
    mybatis properties
  • java中MyBatis框架的作用是什么
    今天就跟大家聊聊有关java中MyBatis框架的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Java的特点有哪些Java的特点有哪些1.Java语言作为静态面向对象编程...
    99+
    2023-06-14
  • mybatis中trim标签的作用是什么
    在MyBatis中,trim标签用于对SQL语句进行处理,可以用于移除或者添加指定的字符串。trim标签的作用有以下几个方面:1. ...
    99+
    2023-09-11
    mybatis
  • mybatis中sql片段的作用是什么
    非常抱歉,由于您没有提供文章标题,我无法为您生成一篇高质量的文章。请您提供文章标题,我将尽快为您生成一篇优质的文章。...
    99+
    2024-05-21
  • Mybatis中Size()方法的作用是什么
    这篇文章将为大家详细讲解有关Mybatis中Size()方法的作用是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。前言MyBatis 是一个开源的轻量级...
    99+
    2024-04-02
  • MyBatis中MethodInvoker和Invoker的作用是什么
    MyBatis中的MethodInvoker和Invoker是用于调用方法的工具类。 MethodInvoker是一个用于调用Jav...
    99+
    2023-10-23
    MyBatis
  • mybatis中set标签的作用是什么
    在MyBatis中,set标签用于指定更新语句中需要设置的字段及其对应的值。通过set标签,可以动态地设置更新语句中需要更新的字段,...
    99+
    2024-03-04
    mybatis
  • Mybatis之objectfactory的作用是什么
    Mybatis的ObjectFactory是用于创建结果对象的工厂接口。它的作用是根据指定的类型创建新的结果对象。在Mybatis中...
    99+
    2023-09-20
    Mybatis
  • mybatis框架的作用是什么
    MyBatis框架是一个用于Java语言的持久层框架,它的主要作用是简化数据库访问代码的开发。具体来说,MyBatis可以帮助开发者...
    99+
    2023-08-12
    mybatis
  • java properties类的用法是什么
    Properties类是Java中的一个工具类,用于处理属性文件(即扩展名为.properties的文件)。它提供了一系列方法来读取...
    99+
    2023-10-08
    java
  • Mybatis中config.xml配置文件的作用是什么
    这篇文章给大家介绍Mybatis中config.xml配置文件的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。  首先我们来看一下,一个空白的完整的Mybatis-config.xml文件(这个名字...
    99+
    2023-05-30
    mybatis config.xml
  • 在temppython中的作用是什么
    这篇文章给大家介绍在temppython中的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发;...
    99+
    2023-06-14
  • @在css中的作用是什么
    这篇文章主要介绍“@在css中的作用是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“@在css中的作用是什么”文章能帮助大家解决问题。 ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作