创新互联MyBatis教程:MyBatis3XML配置-属性

属性(properties)

这些属性可以在外部进行配置,并可以进行动态替换。你既可以在典型的 Java 属性文件中配置这些属性,也可以在properties元素的子元素中设置。例如:

成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计制作、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的龙马潭网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!


  
  

设置好的属性可以在整个配置文件中用来替换需要动态配置的属性值。比如:


  
  
  
  

这个例子中的 ​username和 ​password将会由 ​properties元素中设置的相应值来替换。 ​driver和 ​url属性将会由 ​config.properties​ 文件中对应的值来替换。这样就为配置提供了诸多灵活选择。

也可以在 ​SqlSessionFactoryBuilder.build() ​方法中传入属性值。例如:

SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, props);

// ... 或者 ...

SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environment, props);

如果一个属性在不只一个地方进行了配置,那么,MyBatis 将按照下面的顺序来加载:

  1. 首先读取在 ​properties元素体内指定的属性。
  2. 然后根据 ​properties元素中的resource属性读取类路径下属性文件,或根据 url属性指定的路径读取属性文件,并覆盖之前读取过的同名属性。
  3. 最后读取作为方法参数传递的属性,并覆盖之前读取过的同名属性。

因此,通过方法参数传递的属性具有最高优先级,​resource/url​ 属性中指定的配置文件次之,最低优先级的则是 ​properties元素中指定的属性。

从 MyBatis 3.4.2 开始,你可以为占位符指定一个默认值。例如:


  
   

这个特性默认是关闭的。要启用这个特性,需要添加一个特定的属性来开启这个特性。例如:


  
   

如果你在属性名中使用了 ​":"​ 字符(如:​db:username​),或者在 SQL 映射中使用了 ​OGNL表达式的三元运算符(如:​ ${tableName != null ? tableName : 'global_constants'}​),就需要设置特定的属性来修改分隔属性名和默认值的字符。例如:


  
   

  
  

本文名称:创新互联MyBatis教程:MyBatis3XML配置-属性
网页地址:http://www.hantingmc.com/qtweb/news35/130035.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联