`
weitao1026
  • 浏览: 1034597 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

mybatis的配置文件

阅读更多
只为成功找方法,不为失败找借口!

MyBatis学习总结(三)——优化MyBatis配置文件中的配置

一、连接数据库的配置单独放在一个properties文件中

  之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下:

复制代码
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
3 <configuration>
4     <environments default="development">
5         <environment id="development">
6             <transactionManager type="JDBC" />
7             <!-- 配置数据库连接信息 -->
8             <dataSource type="POOLED">
9                 <property name="driver" value="com.mysql.jdbc.Driver" />
10                 <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
11                 <property name="username" value="root" />
12                 <property name="password" value="XDP" />
13             </dataSource>
14         </environment>
15     </environments>
16    
17 </configuration>
复制代码
  其实我们完全可以将数据库的连接配置信息写在一个properties文件中,然后在conf.xml文件中引用properties文件,具体做法如下:

  1、在src目录下新建一个db.properties文件,如下图所示:

  

  在db.properties文件编写连接数据库需要使用到的数据库驱动,连接URL地址,用户名,密码,如下:

1 driver=com.mysql.jdbc.Driver
2 url=jdbc:mysql://localhost:3306/mybatis
3 name=root
4 password=XDP
  2、在MyBatis的conf.xml文件中引用db.properties文件,如下:

复制代码
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
3 <configuration>
4
5     <!-- 引用db.properties配置文件 -->
6     <properties resource="db.properties"/>
7     <!--
8         development : 开发模式
9         work : 工作模式
10      -->
11     <environments default="development">
12         <environment id="development">
13             <transactionManager type="JDBC" />
14             <!-- 配置数据库连接信息 -->
15             <dataSource type="POOLED">
16                 <!-- value属性值引用db.properties配置文件中配置的值 -->
17                 <property name="driver" value="${driver}" />
18                 <property name="url" value="${url}" />
19                 <property name="username" value="${name}" />
20                 <property name="password" value="${password}" />
21             </dataSource>
22         </environment>
23     </environments>
24    
25 </configuration>
复制代码
二、为实体类定义别名,简化sql映射xml文件中的引用

  之前,我们在sql映射xml文件中的引用实体类时,需要写上实体类的全类名(包名+类名),如下:

<!-- 创建用户(Create) -->
<insert id="addUser" parameterType="me.gacl.domain.User">
    insert into users(name,age) values(#{name},#{age})
</insert>
  parameterType="me.gacl.domain.User"这里写的实体类User的全类名me.gacl.domain.User,每次都写这么一长串内容挺麻烦的,而我们希望能够简写成下面的形式

<insert id="addUser2" parameterType="_User">
    insert into users(name,age) values(#{name},#{age})
</insert>
  parameterType="_User"这样写就简单多了,为了达到这种效果,我们需要在conf.xml文件中为实体类="me.gacl.domain.User"定义一个别名为"_User",具体做法如下:
  在conf.xml文件中<configuration></configuration>标签中添加如下配置:

<typeAliases>
    <typeAlias type="me.gacl.domain.User" alias="_User"/>
</typeAliases>
  这样就可以为me.gacl.domain.User类定义了一个别名为_User,以后_User就代表了me.gacl.domain.User类,这样sql映射xml文件中的凡是需要引用me.gacl.domain.User类的地方都可以使用_User来代替,这就达到了一个简化实体类引用的目的。

  除了可以使用<typeAlias type="me.gacl.domain.User" alias="_User"/>这种方式单独为某一个实体类设置别名之外,我们还可以使用如下的方式批量为某个包下的所有实体类设置别名,如下:

复制代码
<!-- 配置实体类的别名,配置实体类别名的目的是为了在引用实体类时可以使用实体类的别名来代替实体类,达到简写的目的 -->
    <typeAliases>
        <!-- 为实体类me.gacl.domain.User配置一个别名_User -->
        <!-- <typeAlias type="me.gacl.domain.User" alias="_User"/> -->
        <!-- 为me.gacl.domain包下的所有实体类配置别名,MyBatis默认的设置别名的方式就是去除类所在的包后的简单的类名
        比如me.gacl.domain.User这个实体类的别名就会被设置成User
         -->
        <package name="me.gacl.domain"/>
    </typeAliases>
复制代码
  <package name="me.gacl.domain"/>就表示为这个包下面的所有实体类设置别名。MyBatis默认的设置别名的方式就是去除类所在的包后的简单的类名,比如me.gacl.domain.User这个实体类的别名就会被设置成User。
分享到:
评论

相关推荐

    Springboot的mybatis配置文件

    Springboot用的Mybatis配置文件,配置了几个简单规则

    mybatis配置文件

    mybatis配置文件,用于SSM框架项目中的mybatis配置文件

    mybatis配置文件以及日志文件Log4j

    在"mybatis-3.4.5.zip"中,你将找到MyBatis的核心库,包括主配置文件(mybatis-config.xml)和其他相关配置文件。这些配置文件是MyBatis运行的关键,它们定义了数据源、事务管理器、映射文件的位置等信息。具体来说...

    springboot配置文件和整合mybatis配置文件

    springboot配置文件模板:包括多环境开发布置,端口号配置,全局jackson配置,mysql数据库配置,oracle数据库配置,连接池配置,redis配置,redis链接池的配置,设置上传文件大小限制配置,全局格式化时间配置,https证书配置...

    Mybatis-generator 生成Mybatis配置文件

    【Mybatis-generator 生成Mybatis配置文件】 Mybatis Generator 是一款强大的工具,它能够自动根据数据库表结构生成MyBatis的映射文件、实体类以及Mapper接口,极大地提高了开发效率。在项目开发过程中,手动编写...

    Mybatis配置文件

    Mybatis配置文件

    spring-mybatis配置文件

    引入属性文件,注解扫描包,配置阿里数据连接池,性能配置,配置sqlSessionFactory,将spring与mybatis结合,指定mybatis核心控制文件,事务控制

    mybatis配置文件.zip

    本压缩包包含了一个基本的MyBatis配置文件模板,用于帮助开发者快速搭建MyBatis环境。 在MyBatis的核心配置文件(通常命名为`mybatis-config.xml`)中,包含了以下几个关键部分: 1. **全局配置**:这是MyBatis...

    Mybatis配置文件深入开源架构源码2021.pdf

    《Mybatis配置文件深入开源架构源码2021》主要涵盖了Mybatis框架的核心配置以及在实际应用中的使用方法。以下是对Mybatis配置文件及源码解析的关键知识点的详细阐述: 1. **SqlMapConfig.xml配置文件** - **...

    ProjectBidInfoMapper的Mybatis配置文件

    ProjectBidInfoMapper的Mybatis配置文件,用于Mybatis的配置使用。

    db2 mybatis 配置文件

    E:\mybatis-generator-core-1.3.2\mybatis-generator-core-1.3.2\lib&gt;java -jar mybat is-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite MyBatis Generator finished successfully.

    MyBatis 基本配置文件

    MyBatis配置文件中大标签configuration下子标签包括: configuration |--- properties |--- settings |--- typeAliases |--- typeHandlers |--- objectFactory |--- plugins |--- environments |--- |--- ...

    Mybatis配置文件解析.pdf

    Mybatis配置文件解析,SqlSessionFactoryBuilder的build方法接受Reader/InputStream/Configuration作为配置源,创建SqlSessionFactory实例。在接受Reader/InputStream作为配置源时,创建了XMLConfigBuilder实例来...

    第三章 MyBatis的核心配置.docx

    MyBatis的配置文件是xml文件,主要元素包括: * &lt;configuration&gt;:根元素,所有元素都在根元素里配置 * &lt;properties&gt;:通过外部的配置来动态替换内部定义的属性 * &lt;settings&gt;:配置MyBatis的全局参数,如...

    Mybatis配置文件解析组件.pdf

    Mybatis配置文件解析组件,SqlSessionFactoryBuilder的build方法接受Reader/InputStream/Configuration作为配置源,创建SqlSessionFactory实例。在接受Reader/InputStream作为配置源时,创建了XMLConfigBuilder实例...

    可以从Jar外部加载JDBC.properties的Spring-mybatis配置文件

    可以从Jar外部加载JDBC.properties的Spring-mybatis配置文件,直接可以用,适合部署可执行jar时,从外部配置数据库

Global site tag (gtag.js) - Google Analytics