mybatis怎么读取oracle xmltype类型的数据
发布网友
发布时间:2022-05-01 17:22
我来回答
共2个回答
懂视网
时间:2022-05-01 21:44
SqlMapConfig.xml是Mybatis的全局配置参数,关于他的具体用的有专门的MyBatis - API文档,这里面讲的非常清楚,所以我这里就挑几个讲下:
他的主要配置的属性有如下:
1.properties 属性
这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递。
1 <!-- 加载属性文件 -->
2 <properties resource="db.properties">
3 <!-- 可以在配置相关的其他事项 -->
4 <!-- <property name="jdbc.driver" value="com.mysql.jdbc.Driver"/> -->
5 </properties>
6 <!-- 这里如果在db.properties和 name=""都配置了jdbc.driver那么优先执行name中的-->
7 <!-- 配置全局的参数信息 -->
如果属性在不只一个地方进行了配置,那么 MyBatis 将按照下面的顺序来加载:
在 properties 元素体内指定的属性首先被读取。
然后根据 properties 元素中的 resource 属性读取类路径下属性文件或根据 url 属性指定的路径读取属性文件,并覆盖已读取的同名属性。
最后读取作为方法参数传递的属性,并覆盖已读取的同名属性。
因此,通过方法参数传递的属性具有最高优先级,resource/url 属性中指定的配置文件次之,最低优先级的是 properties 属性中指定的属性。
2.settings全局的参数配置
这是 MyBatis 中极为重要的调整设置,它们会改变 MyBatis 的运行时行为。
具体的就不写了只写一个表达式:
<!-- 配置全局的参数信息 -->
<settings>
<setting name="" value=""/>
</settings>
3.typeAliases(别名)
制定别名最大的一个优势就是方便我们的开发,因为我们如果没有设置别名的情况下,在mapper.xml中
定义了很多Statement ,Statement需要parameterType指定输入参数的类型或者指定输出结果的类型比如:
<!-- 根据id查询用户信息 -->
<select id="findUserById" parameterType="int" resultType="com.study.model.User">
SELECT * FROM USER WHERE id= #{id}
</select>
这里的resultType如果是对象一定要类的全名称,那我们能不能只写了user就能达到同样的效果,这样是不是就有利于简便我们的开发
有两种方法:
1.单个别名的定义
1 <typeAliases>
2 <!--
3 单个别名的定义
4 alias:别名,type:别名映射的类型 -->
5 <!-- <typeAlias type="com.study.model.User" alias="user"/> -->
6 </typeAliases>
7 <!--这样的话只需输入user就能起到一样效果-->
2.批量定义别名(常用)
1 <typeAliases>
2 <!-- 批量别名定义
3 指定包路径,自动扫描包下边的pojo,定义别名,别名默认为类名(首字母小写或大写)
4 -->
5 <package name="com.study.model"/>
6 </typeAliases>
4.mappers(映射配置)
1.通过resource加载单个映射文件
1 <!-- 加载映射文件 -->
2 <mappers>
3 <mapper resource="sqlmap/User.xml" />
4 </mappers>
2.通过mapper接口加载单个mapper
1 <mappers>
2 <!-- 通过mapper接口 加载单个映射文件 必须遵循一些规范: 需要将mapper接口和mapper.xml映射文件 文件名必须一致 并且在同一个目录下 -->
3 <mapper class="com.study.mapper.UserMapper" />
4 </mappers>
3.批量加载mapper(推荐使用)
1 <mappers>
2 <!--
3 指定mapper接口的包名 mybatis会自动扫描这个包下所有的mapper接口 然后执行加载
4 -->
5 <package name="com.study.mapper"/>
6 </mappers>
其他的我就不讲了,要详细的可以找api,非常的详细,欢迎大家指点,谢谢!
mybatis系列笔记(3)---SqlMapConfig.xml解析
标签:config 名称 jdbc 顺序 全局配置 api文档 code 不能 对象
热心网友
时间:2022-05-01 18:52
<!--sqlMapConfig.xml-->
<typeHandler javaType="org.w3c.dom.Document" jdbcType="XMLTYPE" callback="project.callback.XMLTypeHandlerCallback"/>
<!--sqlMap.xml-->
<resultMap id="PurchaseOrderMap" class="project.dto.PurchaseOrder" >
<result property="orderInfo" jdbcType="XMLTYPE"/>
</resultMap>
mybatis怎么读取oracle xmltype类型的数据
<!--sqlMapConfig.xml--> <typeHandler javaType="org.w3c.dom.Document" jdbcType="XMLTYPE" callback="project.callback.XMLTypeHandlerCallback"/> <!--sqlMap.xml--> <resultMap id="PurchaseOrderMap" class="project.dto.PurchaseOrder" > <result property="orderInfo" jdbcType="XMLTYPE"/>...
如何在springboot+mybatis动态连接oracle和mysql中
为了在Spring Boot + MyBatis 动态连接 Oracle 和 MySQL 数据库,我们首先要确保在项目配置中引入必要的依赖。在 pom.xml 或 build.gradle 文件中,添加 Spring Boot 数据源和 MyBatis 相关依赖。接下来,我们需要在 application.properties 或 application.yml 文件中配置两个数据源,分别用于 Oracle 和...
mybatis怎么读写oracle 中long类型的数据
InputStream is = rs.getBinaryStream("kppic");File file = new File("D:/e.bmp");OutputStream os = new FileOutputStream(file);byte [] bt = new byte[1024];int len;while ((len = is.read(bt)) != -1) { os.write(bt, 0, len);} os.close();is.close();
mybatis 如何读取ORACLE中long类型的数据?
jdbcType="VARBINARY" javaType="String"
mybatis操作oracle需要哪些jar包
mybatis操作oracle只需要oracle的驱动jar包就可以了。ojdbc14.jar就是常用的jdbc连接数据库的jar。下载方法:百度搜索:Oracle jdbc驱动jar mybatis中连接oracle的配置如下:configuration.xml <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0...
mybatise怎样调用存储过程
如何使用Mybaits调用数据库中的存储过程,下面以Oracle数据库的为例: 1.在数据库中创建以下的存储过程: 2.编写SQL映射文件WxclDAO.xml: 其中statementType="CALLABLE"表示要调用存储过程,parameterType参数类型; jdbcType对应数据库中的...
java中用mybatis将数组插入oracle数据库blob类型中的一个问题,困扰啊啊...
数据类型 对不对 messFis,jdbcType=BLOB 这个..
mybatis怎么实现两种数据库的兼容
" 1)首选获得单个sqlmap文件的位置,如 sqlmap主目录\XXX.xml;2)依据上面设置的DBProductName属性值获得数据库类型;3)将sqlmap的文件路径重定位到运行数据库类型文件下。如 sqlmap主目录\mysql\XXX.xml,代表程序当前运行于msql数据库上,并加载系统mysql数据库对应的 sqlmap文件"4、ok,现在ibatis...
mybatis里的xml中的写添加的sql语句,怎么使用oracle数据库的序列
-- Oracle SEQUENCE 序列语法:CREATE SEQUENCE 序列名 [INCREMENT BY n] [START WITH n] [{MAXVALUE/ MINVALUE n|NOMAXVALUE}] [{CYCLE|NOCYCLE}] [{CACHE n|NOCACHE}]; 示例:CREATE SEQUENCE sq_test -- 序列名INCREMENT BY 1 -- 每次加几个 START WITH 1 -- 从1开始计数 MAX...
oracle 通过jdbc 怎么把字段的数据类型准确的转换为java类型
/** * 用的是MyBatis Generator。 * 继承JavaTypeResolverDefaultImpl这个类 * 大致这么个意思,里面的长度自己改改吧,我这里的不太对。 * @param introspectedColumn * @return */@Overridepublic FullyQualifiedJavaType calculateJavaType(IntrospectedColumn introspectedColumn) { FullyQualifiedJava...