Skip to content

Commit e8f30d6

Browse files
authored
Merge pull request #1139 from MouseJW/master
Improve Chinese translation
2 parents 361e497 + 9773ed1 commit e8f30d6

File tree

4 files changed

+62
-85
lines changed

4 files changed

+62
-85
lines changed

src/site/zh/xdoc/configuration.xml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262
<property name="username" value="dev_user"/>
6363
<property name="password" value="F2Fa3!33TYyg"/>
6464
</properties>]]></source>
65-
<p>其中的属性就可以在整个配置文件中使用来替换需要动态配置的属性值。比如:
65+
<p>然后其中的属性就可以在整个配置文件中被用来替换需要动态配置的属性值。比如:
6666
</p>
6767
<source><![CDATA[<dataSource type="POOLED">
6868
<property name="driver" value="${driver}"/>
@@ -146,7 +146,7 @@ SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environ
146146
cacheEnabled
147147
</td>
148148
<td>
149-
该配置影响的所有映射器中配置的缓存的全局开关
149+
全局地开启或关闭配置文件中的所有映射器已经配置的任何缓存
150150
</td>
151151
<td>
152152
true | false
@@ -375,7 +375,7 @@ SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environ
375375
某些驱动需要指定列的 JDBC 类型,多数情况直接用一般类型即可,比如 NULL、VARCHAR 或 OTHER。
376376
</td>
377377
<td>
378-
JdbcType enumeration. Most common are: NULL, VARCHAR and OTHER
378+
JdbcType 常量. 大多都为: NULL, VARCHAR and OTHER
379379
</td>
380380
<td>
381381
OTHER
@@ -389,7 +389,7 @@ SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environ
389389
指定哪个对象的方法触发一次延迟加载。
390390
</td>
391391
<td>
392-
A method name list separated by commas
392+
用逗号分隔的方法列表。
393393
</td>
394394
<td>
395395
equals,clone,hashCode,toString
@@ -403,7 +403,7 @@ SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environ
403403
指定动态 SQL 生成的默认语言。
404404
</td>
405405
<td>
406-
A type alias or fully qualified class name.
406+
一个类型别名或完全限定类名。
407407
</td>
408408
<td>
409409
org.apache.ibatis.scripting.xmltags.XMLLanguageDriver
@@ -414,10 +414,10 @@ SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environ
414414
defaultEnumTypeHandler
415415
</td>
416416
<td>
417-
Specifies the <code>TypeHandler</code> used by default for Enum. (Since: 3.4.5)
417+
指定 Enum 使用的默认 <code>TypeHandler</code> 。 (从3.4.5开始)
418418
</td>
419419
<td>
420-
A type alias or fully qualified class name.
420+
一个类型别名或完全限定类名。
421421
</td>
422422
<td>
423423
org.apache.ibatis.type.EnumTypeHandler
@@ -461,7 +461,7 @@ SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environ
461461
指定 MyBatis 增加到日志名称的前缀。
462462
</td>
463463
<td>
464-
Any String
464+
任何字符串
465465
</td>
466466
<td>
467467
Not set
@@ -529,8 +529,8 @@ SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environ
529529
configurationFactory
530530
</td>
531531
<td>
532-
指定一个提供<code>Configuration</code>实例的类.
533-
这个被返回的Configuration实例是用来加载被反序列化对象的懒加载属性值.
532+
指定一个提供<code>Configuration</code>实例的类
533+
这个被返回的Configuration实例用来加载被反序列化对象的懒加载属性值。
534534
这个类必须包含一个签名方法<code>static Configuration getConfiguration()</code>. (从 3.2.3 版本开始)
535535
</td>
536536
<td>
@@ -589,7 +589,7 @@ public class Author {
589589
...
590590
}
591591
]]></source>
592-
<p>已经为许多常见的 Java 类型内建了相应的类型别名。它们都是大小写不敏感的,需要注意的是由基本类型名称重复导致的特殊处理。</p>
592+
<p>这是一些为常见的 Java 类型内建的相应的类型别名。它们都是大小写不敏感的,需要注意的是由基本类型名称重复导致的特殊处理。</p>
593593
<table>
594594
<thead>
595595
<tr>
@@ -826,7 +826,7 @@ public class Author {
826826
都会用类型处理器将获取的值以合适的方式转换成 Java 类型。下表描述了一些默认的类型处理器。</p>
827827
<p>
828828
<span class="label important">NOTE</span>
829-
Since version 3.4.5, The MyBatis has been supported JSR-310(Date and Time API) by default.
829+
3.4.5 开始,MyBatis 默认支持 JSR-310(日期和时间 API)
830830
</p>
831831
<table>
832832
<thead>

src/site/zh/xdoc/getting-started.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,13 @@ try {
113113
</mapper>]]></source>
114114
<p>对于这个简单的例子来说似乎有点小题大做了,但实际上它是非常轻量级的。在一个 XML 映射文件中,你想定义多少个映射语句都是可以的,这样下来,XML 头部和文档类型声明占去的部分就显得微不足道了。文件的剩余部分具有很好的自解释性。在命名空间“org.mybatis.example.BlogMapper”中定义了一个名为“selectBlog”的映射语句,这样它就允许你使用指定的完全限定名“org.mybatis.example.BlogMapper.selectBlog”来调用映射语句,就像上面的例子中做的那样:</p>
115115
<source><![CDATA[Blog blog = (Blog) session.selectOne("org.mybatis.example.BlogMapper.selectBlog", 101);]]></source>
116-
<p>你可能注意到这和使用完全限定名调用 Java 对象的方法是相似的,之所以这样做是有原因的。这个命名可以直接映射到在命名空间中同名的 Mapper 类,并将已映射的 select 语句中的名字、参数和返回类型匹配成方法。这样你就可以向上面那样很容易地调用这个对应 Mapper 接口的方法。不过让我们再看一遍下面的例子:</p>
116+
<p>你可能注意到这和使用完全限定名调用 Java 对象的方法是相似的,之所以这样做是有原因的。这个命名可以直接映射到在命名空间中同名的 Mapper 类,并将已映射的 select 语句中的名字、参数和返回类型匹配成方法。这样你就可以像上面那样很容易地调用这个对应 Mapper 接口的方法。不过让我们再看一遍下面的例子:</p>
117117
<source><![CDATA[BlogMapper mapper = session.getMapper(BlogMapper.class);
118118
Blog blog = mapper.selectBlog(101);]]></source>
119119
<p>第二种方法有很多优势,首先它不是基于字符串常量的,就会更安全;其次,如果你的 IDE 有代码补全功能,那么你可以在有了已映射 SQL 语句的基础之上利用这个功能。</p>
120120
<hr/>
121121
<p><span class="label important">提示</span><strong>命名空间的一点注释</strong></p>
122-
<p><strong>命名空间(Namespaces)</strong>在之前版本的 MyBatis 中是可选的,容易引起混淆因此是没有益处的。现在的命名空间则是必须的,目的是希望能比只是简单的使用更长的完全限定名来更进一步区分语句。</p>
122+
<p><strong>命名空间(Namespaces)</strong>在之前版本的 MyBatis 中是可选的,这样容易引起混淆因此毫无益处。现在命名空间则是必须的,且意于简单地用更长的完全限定名来隔离语句。</p>
123123
<p>命名空间使得你所见到的接口绑定成为可能,尽管你觉得这些东西未必用得上,你还是应该遵循这里的规定以防哪天你改变了主意。出于长远考虑,使用命名空间,并将它置于合适的 Java 包命名空间之下,你将拥有一份更加整洁的代码并提高了 MyBatis 的可用性。</p>
124124
<p>
125125
<strong>命名解析:</strong>为了减少输入量,MyBatis 对所有的命名配置元素(包括语句,结果映射,缓存等)使用了如下的命名解析规则。
@@ -162,7 +162,7 @@ try {
162162
}]]></source>
163163
<p>在你的所有的代码中一致性地使用这种模式来保证所有数据库资源都能被正确地关闭。</p>
164164
<h4>映射器实例(Mapper Instances)</h4>
165-
<p>映射器是创建用来绑定映射语句的接口。映射器接口的实例是从 SqlSession 中获得的。因此从技术层面讲,映射器实例的最大作用域是和 SqlSession 相同的,因为它们都是从 SqlSession 里被请求的。尽管如此,映射器实例的最佳作用域是方法作用域。也就是说,映射器实例应该在调用它们的方法中被请求,用过之后即可废弃。并不需要显式地关闭映射器实例,尽管在整个请求作用域(request scope)保持映射器实例也不会有什么问题,但是很快你会发现,像 SqlSession 一样,在这个作用域上管理太多的资源的话会难于控制。所以要保持简单,最好把映射器放在方法作用域(method scope)内。下面的示例就展示了这个实践:</p>
165+
<p>映射器是一个你创建来绑定你映射的语句的接口。映射器接口的实例是从 SqlSession 中获得的。因此从技术层面讲,任何映射器实例的最大作用域是和请求它们的 SqlSession 相同的。尽管如此,映射器实例的最佳作用域是方法作用域。也就是说,映射器实例应该在调用它们的方法中被请求,用过之后即可废弃。并不需要显式地关闭映射器实例,尽管在整个请求作用域(request scope)保持映射器实例也不会有什么问题,但是很快你会发现,像 SqlSession 一样,在这个作用域上管理太多的资源的话会难于控制。所以要保持简单,最好把映射器放在方法作用域(method scope)内。下面的示例就展示了这个实践:</p>
166166
<source><![CDATA[SqlSession session = sqlSessionFactory.openSession();
167167
try {
168168
BlogMapper mapper = session.getMapper(BlogMapper.class);

src/site/zh/xdoc/java-api.xml

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -218,13 +218,12 @@ SqlSessionFactory factory = builder.build(configuration);</source>
218218

219219
<h4>SqlSessionFactory</h4>
220220
<p>
221-
SqlSessionFactory 有六个方法可以用来创建 SqlSession 实例。通常来说,如何决定是你
222-
选择下面这些方法时:
221+
SqlSessionFactory 有六个方法可以用来创建 SqlSession 实例。通常来说,当你选择如下的一个方法时你将要作出决定:
223222
</p>
224223
<ul>
225224
<li><strong>Transaction (事务)</strong>: 你想为 session 使用事务或者使用自动提交(通常意味着很多
226225
数据库和/或 JDBC 驱动没有事务)?</li>
227-
<li><strong>Connection (连接)</strong>: 你想 MyBatis 获得来自配置的数据源的连接还是提供你自己</li>
226+
<li><strong>Connection (连接)</strong>: 你想 MyBatis 获得来自配置的数据源的连接还是提供你自己的</li>
228227
<li><strong>Execution (执行)</strong>: 你想 MyBatis 复用预处理语句和/或批量更新语句(包括插入和 删除)?</li>
229228
</ul>
230229
<p>
@@ -245,7 +244,7 @@ Configuration getConfiguration();</source>
245244
</p>
246245
<ul>
247246
<li>会开启一个事务(也就是不自动提交)</li>
248-
<li>连接对象会从由活动环境配置的数据源实例中得到。</li>
247+
<li>将从由当前使用的环境配置的 DataSource 实例(数据源实例)获取中获取 Connection 对象(连接对象)</li>
249248
<li>事务隔离级别将会使用驱动或数据源的默认设置。</li>
250249
<li>预处理语句不会被复用,也不会批量处理更新。</li>
251250
</ul>
@@ -290,8 +289,7 @@ BLE)
290289

291290
<h5>语句执行方法</h5>
292291
<p>
293-
这些方法被用来执行定义在 SQL 映射的 XML 文件中的 SELECT,INSERT,UPDA E
294-
T
292+
这些方法被用来执行定义在 SQL 映射的 XML 文件中的 SELECT,INSERT,UPDATE
295293
和 DELETE 语句。它们都会自行解释,每一句都使用语句的 ID 属性和参数对象,参数可以
296294
是原生类型(自动装箱或包装类)
297295
,JavaBean,POJO 或 Map。
@@ -304,11 +302,7 @@ int update(String statement, Object parameter)
304302
int delete(String statement, Object parameter)]]></source>
305303
<p>
306304
selectOne 和 selectList 的不同仅仅是 selectOne 必须返回一个对象。
307-
如果多余一个,
308-
或者
309-
没有返回
310-
(或返回了 null) 那么就会抛出异常。
311-
,
305+
如果多于一个,或者没有返回(或返回了 null) 那么就会抛出异常。
312306
如果你不知道需要多少对象,
313307
使用 selectList。
314308
</p>
@@ -342,7 +336,7 @@ int limit = 25;
342336
RowBounds rowBounds = new RowBounds(offset, limit);</source>
343337

344338
<p>不同的驱动会实现这方面的不同级别的效率。对于最佳的表现,使用结果集类型的
345-
SCROLL_SENSITIVE 或 SCROLL_INSENSITIVE(或句话说:不是 FORWARD_ONLY)。
339+
SCROLL_SENSITIVE 或 SCROLL_INSENSITIVE(换句话说:不是 FORWARD_ONLY)。
346340
</p>
347341
<p>
348342
ResultHandler 参数允许你按你喜欢的方式处理每一行。你可以将它添加到 List 中,创
@@ -509,7 +503,7 @@ try (SqlSession session = sqlSessionFactory.openSession()) {
509503
基础,也是新的基于注解配置的基础。注解提供了一种简单的方式来实现简单映射语句,而
510504
不会引入大量的开销。
511505
</p>
512-
<p><span class="label important">注意</span> 不幸的是,Java 注解限制了它们的表现和灵活。尽管很多时间都花调查,设计和
506+
<p><span class="label important">注意</span> 不幸的是,Java 注解限制了它们的表现和灵活。尽管很多时间都花在调查,设计和
513507
实验上,最强大的 MyBatis 映射不能用注解来构建,那并不可笑。C#属性(做示例)就没
514508
有这些限制,因此 MyBatis.NET 将会比 XML 有更丰富的选择。也就是说,基于 Java 注解
515509
的配置离不开它的特性。

0 commit comments

Comments
 (0)