/*
* Copyright 2009-2011 The MyBatis Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.ibatis.executor;
import domain.blog.*;
import org.apache.ibatis.builder.StaticSqlSource;
import org.apache.ibatis.builder.xml.dynamic.DynamicSqlSource;
import org.apache.ibatis.builder.xml.dynamic.TextSqlNode;
import org.apache.ibatis.cache.Cache;
import org.apache.ibatis.cache.decorators.LoggingCache;
import org.apache.ibatis.cache.decorators.ScheduledCache;
import org.apache.ibatis.cache.decorators.SerializedCache;
import org.apache.ibatis.cache.decorators.SynchronizedCache;
import org.apache.ibatis.cache.impl.PerpetualCache;
import org.apache.ibatis.executor.keygen.Jdbc3KeyGenerator;
import org.apache.ibatis.executor.keygen.SelectKeyGenerator;
import org.apache.ibatis.mapping.*;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.type.JdbcType;
import org.apache.ibatis.type.TypeHandlerRegistry;
import java.util.*;
public class ExecutorTestHelper {
public static final Cache authorCache;
static {
authorCache =
new SynchronizedCache(
new SerializedCache(
new LoggingCache(
new ScheduledCache(
new PerpetualCache("author_cache")))));
}
public static MappedStatement prepareInsertAuthorMappedStatement(final Configuration config) {
final TypeHandlerRegistry registry = config.getTypeHandlerRegistry();
MappedStatement ms = new MappedStatement.Builder(config, "insertAuthor", new StaticSqlSource(config,"INSERT INTO author (id,username,password,email,bio,favourite_section) values(?,?,?,?,?,?)"), SqlCommandType.INSERT)
.parameterMap(
new ParameterMap.Builder(
config, "defaultParameterMap", Author.class,
new ArrayList<ParameterMapping>() {
{
add(new ParameterMapping.Builder(config, "id", registry.getTypeHandler(int.class)).build());
add(new ParameterMapping.Builder(config, "username", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "password", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "email", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "bio", registry.getTypeHandler(String.class)).jdbcType(JdbcType.VARCHAR).build());
add(new ParameterMapping.Builder(config, "favouriteSection", registry.getTypeHandler(Section.class)).jdbcType(JdbcType.VARCHAR).build());
}
}).build())
.cache(authorCache).build();
return ms;
}
public static MappedStatement prepareInsertAuthorMappedStatementWithAutoKey(final Configuration config) {
final TypeHandlerRegistry registry = config.getTypeHandlerRegistry();
MappedStatement ms = new MappedStatement.Builder(config, "insertAuthor", new StaticSqlSource(config,"INSERT INTO author (username,password,email,bio,favourite_section) values(?,?,?,?,?)"), SqlCommandType.INSERT)
.parameterMap(
new ParameterMap.Builder(config, "defaultParameterMap", Author.class, new ArrayList<ParameterMapping>() {
{
add(new ParameterMapping.Builder(config, "username", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "password", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "email", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "bio", registry.getTypeHandler(String.class)).jdbcType(JdbcType.VARCHAR).build());
add(new ParameterMapping.Builder(config, "favouriteSection", registry.getTypeHandler(Section.class)).jdbcType(JdbcType.VARCHAR).build());
}
}).build())
.cache(authorCache)
.keyGenerator(new Jdbc3KeyGenerator())
.keyProperty("id")
.build();
return ms;
}
public static MappedStatement prepareInsertAuthorProc(final Configuration config) {
final TypeHandlerRegistry registry = config.getTypeHandlerRegistry();
MappedStatement ms = new MappedStatement.Builder(config, "insertAuthorProc", new StaticSqlSource(config,"{call insertAuthor(?,?,?,?)}"), SqlCommandType.INSERT)
.parameterMap(new ParameterMap.Builder(config, "defaultParameterMap", Author.class,
new ArrayList<ParameterMapping>() {
{
add(new ParameterMapping.Builder(config, "id", registry.getTypeHandler(int.class)).build());
add(new ParameterMapping.Builder(config, "username", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "password", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "email", registry.getTypeHandler(String.class)).build());
}
}).build())
.cache(authorCache).build();
return ms;
}
public static MappedStatement prepareUpdateAuthorMappedStatement(final Configuration config) {
final TypeHandlerRegistry registry = config.getTypeHandlerRegistry();
MappedStatement ms = new MappedStatement.Builder(config, "updateAuthor", new StaticSqlSource(config,"UPDATE author SET username = ?, password = ?, email = ?, bio = ? WHERE id = ?"), SqlCommandType.UPDATE)
.parameterMap(new ParameterMap.Builder(config, "defaultParameterMap", Author.class,
new ArrayList<ParameterMapping>() {
{
add(new ParameterMapping.Builder(config, "username", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "password", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "email", registry.getTypeHandler(String.class)).build());
add(new ParameterMapping.Builder(config, "bio", registry.getTypeHandler(String.class)).jdbcType(JdbcType.VARCHAR).build());
add(new ParameterMapping.Builder(config, "id", registry.getTypeHandler(int.class)).build());
}
}).build())
.cache(authorCache).build();
return ms;
}
public static MappedStatement prepareDeleteAuthorMappedStatement(final Configuration config) {
final TypeHandlerRegistry registry = config.getTypeHandlerRegistry();
MappedStatement ms = new MappedStatement.Builder(config, "deleteAuthor", new StaticSqlSource(config,"DELETE FROM author WHERE id = ?"), SqlCommandType.DELETE)
.parameterMap(new ParameterMap.Builder(config, "defaultParameterMap", Author.class,
new ArrayList<ParameterMapping>() {
{
add(new ParameterMapping.Builder(config, "id", registry.getTypeHandler(int.class)).build());
}
}).build())
.cache(authorCache)
.build();
return ms;
}
public static MappedStatement prepareSelectOneAuthorMappedStatement(final Configuration config) {
final TypeHandlerRegistry registry = config.getTypeHandlerRegistry();
final ResultMap rm = new ResultMap.Bui
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
mybatis-3-mybatis-3.1.0.zip (1261个子文件)
site.css 622B
sql-map-2.dtd 14KB
mybatis-3-mapper.dtd 6KB
mybatis-3-config.dtd 2KB
sql-map-config-2.dtd 2KB
dao-2.dtd 1KB
ICLA 7KB
ExecutorTestHelper.java 37KB
NestedIterateTest.java 33KB
StatementTest.java 31KB
FastResultSetHandler.java 31KB
SqlSessionTest.java 30KB
SPTest.java 27KB
Configuration.java 24KB
MapperAnnotationBuilder.java 22KB
SqlSessionManagerTest.java 20KB
SqlMapDaoTemplate.java 20KB
XmlSqlMapParser.java 20KB
BindingTest.java 20KB
BaseExecutorTest.java 19KB
PooledDataSource.java 18KB
MapperBuilderAssistant.java 18KB
BeanIntrospector.java 17KB
XMLMapperBuilder.java 16KB
XMLStatementBuilder.java 15KB
XMLConfigBuilder.java 15KB
Reflector.java 15KB
NestedResultSetHandler.java 15KB
SqlMapExecutor.java 14KB
XmlDaoManagerBuilder.java 13KB
ClassIntrospector.java 13KB
BaseExecutor.java 13KB
ResourcesTest.java 12KB
BatchTest.java 12KB
SqlMapSessionImpl.java 12KB
TypeHandlerCallbackAdapter.java 12KB
TypeHandlerRegistry.java 11KB
DynamicSqlSourceTest.java 11KB
SerializableProxyTest.java 11KB
CacheStatementTest.java 11KB
SqlSessionManager.java 10KB
DefaultVFS.java 10KB
XmlSqlStatementParser.java 10KB
ParameterSetter.java 10KB
InlineParameterMapParser.java 10KB
ResolverUtil.java 9KB
ResultObjectProxy.java 9KB
SqlSession.java 9KB
MapperMethod.java 9KB
XNode.java 9KB
XmlSqlMapConfigParser.java 9KB
SqlMapClient.java 9KB
XPathParser.java 9KB
Resources.java 9KB
IterateContext.java 9KB
MetaObjectTest.java 9KB
DynamicTest.java 8KB
Resources.java 8KB
DefaultSqlSession.java 8KB
ScriptRunner.java 8KB
ResultGetter.java 8KB
SqlRunner.java 8KB
AutomaticLazyLoadingTest.java 8KB
MappedStatement.java 8KB
PaginatedArrayListTest.java 8KB
SqlBuilder.java 7KB
DynamicSql.java 7KB
Order.java 7KB
VFS.java 7KB
Order.java 7KB
PaginatedDataList.java 7KB
PooledConnection.java 7KB
ColumnPrefixTest.java 7KB
CacheBuilder.java 7KB
SqlSourceBuilder.java 7KB
DynamicPrependTest.java 6KB
BeanWrapper.java 6KB
IterateTest.java 6KB
SqlTagContext.java 6KB
NodeEventParser.java 6KB
CglibNPETest.java 6KB
ResultMapping.java 6KB
Stopwatch.java 6KB
BaseSqlMapTest.java 6KB
ForceFlushOnSelectTest.java 6KB
UnpooledDataSource.java 6KB
ConditionalTagHandler.java 6KB
NotNullColumnTest.java 6KB
XmlExternalRefTest.java 6KB
ComplexColumnTest.java 6KB
ClassLoaderWrapper.java 6KB
SimpleDataSource.java 6KB
JBoss6VFS.java 6KB
MetaObject.java 6KB
ForEachSqlNode.java 6KB
ResourcesTest.java 6KB
TypeAliasRegistry.java 6KB
CachingExecutor.java 6KB
PaginatedArrayList.java 6KB
BatchExecutor.java 6KB
共 1261 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
段子手-168
- 粉丝: 1628
- 资源: 1970
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功