Skip to content

update java-api.xml in zh doc #2559

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 15, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions src/site/zh/xdoc/java-api.xml
Original file line number Diff line number Diff line change
Expand Up @@ -388,8 +388,8 @@ try (SqlSession session = sqlSessionFactory.openSession()) {
       <td>复杂类型的单个属性映射。属性:
<code>select</code>,指定可加载合适类型实例的映射语句(也就是映射器方法)全限定名;
<code>fetchType</code>,指定在该映射中覆盖全局配置参数 <code>lazyLoadingEnabled</code>;
<code>resultMap</code>(3.5.5以上可用), which is the fully qualified name of a result map that map to a single container object from select result
<code>columnPrefix</code>(3.5.5以上可用),结果集的完全限定名,该结果映射到查询结果中的集合对象;
<code>resultMap</code>(3.5.5以上可用), 结果集的完全限定名,该结果映射到查询结果中的集合对象
<code>columnPrefix</code>(3.5.5以上可用),在嵌套的结果集中对所查询的列进行分组的列前缀。
<span class="label important">提示</span> 注解 API 不支持联合映射。这是由于 Java 注解不允许产生循环引用。</td>
</tr>
<tr>
Expand All @@ -398,7 +398,7 @@ try (SqlSession session = sqlSessionFactory.openSession()) {
<td><code>&lt;collection&gt;</code></td>
       <td>复杂类型的集合属性映射。属性:
<code>select</code>,指定可加载合适类型实例集合的映射语句(也就是映射器方法)全限定名;
<code>fetchType</code>,指定在该映射中覆盖全局配置参数 <code>lazyLoadingEnabled</code>
<code>fetchType</code>,指定在该映射中覆盖全局配置参数 <code>lazyLoadingEnabled</code>
<code>resultMap</code>(3.5.5以上可用),结果集的完全限定名,该结果映射到查询结果中的集合对象;
<code>columnPrefix</code>(3.5.5以上可用),在嵌套的结果集中对所查询的列进行分组的列前缀。
<span class="label important">提示</span> 注解 API 不支持联合映射。这是由于 Java 注解不允许产生循环引用。</td>
Expand Down Expand Up @@ -465,8 +465,8 @@ try (SqlSession session = sqlSessionFactory.openSession()) {
允许构建动态 SQL。这些备选的 SQL 注解允许你指定返回 SQL 语句的类和方法,以供运行时执行。(从 MyBatis 3.4.6 开始,可以使用 <code>CharSequence</code> 代替 <code>String</code> 来作为返回类型)。当执行映射语句时,MyBatis 会实例化注解指定的类,并调用注解指定的方法。你可以通过 <code>ProviderContext</code> 传递映射方法接收到的参数、"Mapper interface type" 和 "Mapper method"(仅在 MyBatis 3.4.5 以上支持)作为参数。(MyBatis 3.4 以上支持传入多个参数)
属性:<code>value</code>、<code>type</code>、<code>method</code>、<code>databaseId</code>。
<code>value</code> and <code>type</code> 属性用于指定类名
(The <code>type</code> attribute is alias for <code>value</code>, you must be specify either one.
But both attributes can be omit when specify the <code>defaultSqlProviderType</code> as global configuration)。
(<code>type</code> 属性是 <code>value</code> 的别名, 你必须指定任意一个。
但是你如果在全局配置中指定 <code>defaultSqlProviderType</code> ,两个属性都可以忽略)。
<code>method</code> 用于指定该类的方法名(从版本 3.5.1 开始,可以省略 <code>method</code> 属性,MyBatis 将会使用 <code>ProviderMethodResolver</code> 接口解析方法的具体实现。如果解析失败,MyBatis 将会使用名为 <code>provideSql</code> 的降级实现)。<span class="label important">提示</span> 接下来的“SQL 语句构建器”一章将会讨论该话题,以帮助你以更清晰、更便于阅读的方式构建动态 SQL。
<code>databaseId</code>(3.5.5以上可用), 如果有一个配置好的 <code>DatabaseIdProvider</code>,
MyBatis 会加载不带 <code>databaseId</code> 属性和带有匹配当前数据库 <code>databaseId</code> 属性的所有语句。如果同时存在带 <code>databaseId</code> 和不带 <code>databaseId</code> 属性的相同语句,则后者会被舍弃。
Expand Down Expand Up @@ -625,7 +625,7 @@ class UserSqlProvider implements ProviderMethodResolver {
}
}]]></source>

<p>这个例子展现了如何在声明注解时使用<code>databaseId</code>属性(3.5.5后可用):</p>
<p>这个例子展现了如何在声明注解时使用 <code>databaseId</code> 属性(3.5.5后可用):</p>
<source><![CDATA[
@Select(value = "SELECT SYS_GUID() FROM dual", databaseId = "oracle") // 如果 DatabaseIdProvider 提供的是 "oracle",使用这条语句
@Select(value = "SELECT uuid_generate_v4()", databaseId = "postgres") // 如果 DatabaseIdProvider 提供的是 "postgres",使用这条语句
Expand Down