使用MyBatis进行数据库映射的方式

  

在Java中,MyBatis是1个支持自定义SQL的持久层框架,它可以存储过程和高级的映射。

  

在正式介绍之前,我们首先通过mvn进行安装,我们将下面的内容添加到砰的一声。xml配置文件中:

        & lt; dependency>   & lt; groupId> org.mybatis   & lt; artifactId> mybatis   & lt; version> 3.4.5   & lt;/dependency>      

上述操作完成后,我们首先新建1个MyBatis的配置文件,使用XML的格式进行编写:

        & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; !DOCTYPE配置公共”——//mybatis.org//DTD配置3.0//EN”“http://mybatis.org/dtd/mybatis-3-config.dtd”的在   & lt; configuration>   & lt;属性资源=" db.properties "祝辞& lt;/properties>   & lt;环境默认=癿y-config”比;   & lt;环境id=癿y-config”比;   & lt; transactionManager类型=癑DBC/比;   & lt;数据源类型=盎慵北?   & lt;属性名="司机" value=" https://www.yisu.com/zixun/${司机}"祝辞& lt;/property>   & lt;属性名=" url " value=" https://www.yisu.com/zixun/$ {url} "祝辞& lt;/property>   & lt;属性名="用户名" value=" https://www.yisu.com/zixun/$ {user} "祝辞& lt;/property>   & lt;属性名="密码" value=" https://www.yisu.com/zixun/$ {pwd} "祝辞& lt;/property>   & lt;/dataSource>   & lt;/environment>   & lt;/environments>   & lt; mappers>   & lt;资源映射器="映射。xml”/比;   & lt;/mappers>   & lt;/configuration>      

我们将上述的内容写入到配置。xml文件中。其中环境是配置的环境,其中的环境用于对应的环境的配置。这里,我们默认使用的环境是my-config,其使用JDBC的方式进行连接,数据源的方式为连接池,其中,数据源可以使用:

  
      <李>未共享,每次请求时打开和关闭连接李   <李>汇集,连接池李   <李> JNDI,主要用于EJB或应用服务器中使用李   
  

而环境通过对db。中属性的内容进行配置,其内容如下:

        url=jdbc: oracle:薄:@xxx.xxx.xxx.xx: 1521/orcl   用户=xxx   pwd=xxx   司机=oracle.jdbc.driver.OracleDriver      

更多关于MyBatis的配置,可以参考。其中包括别名,类型处理器typeHandler的说明,这里就不一一叙述了。

  

最后,我们还设置了1个匹配的资源,其支持4种方式:

  

资源,使用相对于类路径的资源引用

  

url,使用完全限定资源定位符

  

类,使用映射器接口实现类的完全限定类名

  

名称,将包内的映射器接口实现全部注册为映射器

  

在这里我们使用资源的方式指定匹配的文件的名称。其内容如下:

        & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; !DOCTYPE mapper公共   “-//mybatis.org//DTD Mapper 3.0//EN”   “http://mybatis.org/dtd/mybatis-3-mapper.dtd”在   & lt;映射器命名空间="用户"比;   & lt;选择id=" es_temp " fetchSize=" 10 " resultType=癹ava.util.LinkedHashMap”比;   选择ENTNAME UNISCID、行业、地区OPSTATE, ESTYEAR,规模从xxx rownum & lt; ! [CDATA [& lt;=]]比;20.   & lt;/select>   & lt;/mapper>      

由于在XML中,括号具有单独的意义,因此如果我们使用尖括号会出现解析错误,此时我们可以使用HTML实体转义编码,如,lt;来进行处理,或者直接使用<代码> & lt; ! [CDATA [xxxx]]比;进行实际符号的处理。

  

我们通过mapper标签中的名称空间定义了映射的命名空间,其中的id用于对应语句的匹配,方便进行命名解析。

  

接着是对应的Java代码的编写:

        进口java.io.Reader;   进口java.util。*;   进口com.alibaba.fastjson。*;   进口org.apache.ibatis.io.Resources;   进口org.apache.ibatis.session。*;   公开课演示{   公共静态SqlSessionFactory sessionFactory;   公共静态void main (String [] args) {   尝试{   读者读者=Resources.getResourceAsReader (“config . xml”);   sessionFactory=new SqlSessionFactoryBuilder () .build(读者);   SqlSession会话=sessionFactory.openSession ();   List使用MyBatis进行数据库映射的方式