本文整理汇总了Java中org.seasar.doma.jdbc.dialect.Dialect类的典型用法代码示例。如果您正苦于以下问题:Java Dialect类的具体用法?Java Dialect怎么用?Java Dialect使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Dialect类属于org.seasar.doma.jdbc.dialect包,在下文中一共展示了Dialect类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setUpDatabase
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
@BeforeClass
public static void setUpDatabase() throws Exception {
config = new Config() {
final Dialect dialect = new H2Dialect();
@Override
public Dialect getDialect() {
return dialect;
}
@Override
public DataSource getDataSource() {
return database.getDataSource();
}
};
}
示例2: config1
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
@Bean
@Foo
Config config1() {
return new Config() {
@Override
public String getDataSourceName() {
return "foo";
}
@Override
public Dialect getDialect() {
return new StandardDialect();
}
@Override
public DataSource getDataSource() {
return new SimpleDataSource();
}
};
}
示例3: config2
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
@Bean
@Bar
Config config2() {
return new Config() {
@Override
public String getDataSourceName() {
return "bar";
}
@Override
public Dialect getDialect() {
return new StandardDialect();
}
@Override
public DataSource getDataSource() {
return new SimpleDataSource();
}
};
}
示例4: getSqlFile
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
@Override
public final SqlFile getSqlFile(Method method, String path, Dialect dialect) {
if (method == null) {
throw new DomaNullPointerException("method");
}
if (path == null) {
throw new DomaNullPointerException("path");
}
if (!path.startsWith(Constants.SQL_PATH_PREFIX)) {
throw new DomaIllegalArgumentException("path",
"The path does not start with '"
+ Constants.SQL_PATH_PREFIX + "'");
}
if (!path.endsWith(Constants.SQL_PATH_SUFFIX)) {
throw new DomaIllegalArgumentException("path",
"The path does not end with '" + Constants.SQL_PATH_SUFFIX
+ "'");
}
if (dialect == null) {
throw new DomaNullPointerException("dialect");
}
return getSqlFileWithCacheControl(method, path, dialect);
}
示例5: populateValues
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
public void populateValues(E entity,
List<EntityPropertyType<E, ?>> targetPropertyTypes,
EntityPropertyType<E, ?> versionPropertyType, SqlContext context) {
Dialect dialect = config.getDialect();
Naming naming = config.getNaming();
for (EntityPropertyType<E, ?> propertyType : targetPropertyTypes) {
Property<E, ?> property = propertyType.createProperty();
property.load(entity);
context.appendSql(propertyType.getColumnName(naming::apply,
dialect::applyQuote));
context.appendSql(" = ");
context.appendParameter(property.asInParameter());
if (propertyType.isVersion() && !versionIgnored) {
context.appendSql(" + 1");
}
context.appendSql(", ");
}
context.cutBackSql(2);
}
示例6: execute
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
@Override
public RESULT execute() {
Connection connection = JdbcUtil.getConnection(query.getConfig()
.getDataSource());
try {
CallableStatement callableStatement = JdbcUtil.prepareCall(
connection, sql);
try {
log();
setupOptions(callableStatement);
bindParameters(callableStatement);
return executeInternal(callableStatement);
} catch (SQLException e) {
Dialect dialect = query.getConfig().getDialect();
throw new SqlExecutionException(query.getConfig()
.getExceptionSqlLogType(), sql, e,
dialect.getRootCause(e));
} finally {
JdbcUtil.close(callableStatement, query.getConfig()
.getJdbcLogger());
}
} finally {
JdbcUtil.close(connection, query.getConfig().getJdbcLogger());
}
}
示例7: prepareStatement
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
protected PreparedStatement prepareStatement(Connection connection,
PreparedSql sql) {
if (query.isAutoGeneratedKeysSupported()) {
Config config = query.getConfig();
Dialect dialect = config.getDialect();
switch (dialect.getAutoGeneratedKeysType()) {
case FIRST_COLUMN:
return JdbcUtil
.prepareStatementForAutoGeneratedKeysOfFirstColumn(
connection, sql);
case DEFAULT:
return JdbcUtil.prepareStatementForAutoGeneratedKeys(connection,
sql);
}
}
return JdbcUtil.prepareStatement(connection, sql);
}
示例8: validateRows
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
protected void validateRows(PreparedStatement preparedStatement,
PreparedSql sql, int[] rows) throws SQLException {
Dialect dialect = query.getConfig().getDialect();
if (dialect.supportsBatchUpdateResults()) {
if (!query.isOptimisticLockCheckRequired()) {
return;
}
for (int i = 0; i < rows.length; ++i) {
if (rows[i] != 1) {
throw new BatchOptimisticLockException(query.getConfig()
.getExceptionSqlLogType(), sql);
}
}
} else if (preparedStatement.getUpdateCount() == rows.length) {
Arrays.fill(rows, 1);
} else {
if (!query.isOptimisticLockCheckRequired()) {
return;
}
throw new BatchOptimisticLockException(query.getConfig()
.getExceptionSqlLogType(), sql);
}
}
示例9: config
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
@Bean
public Config config() {
return new Config() {
@Override
public Dialect getDialect() {
return dialect();
}
@Override
public DataSource getDataSource() {
return dataSource();
}
@Override
public SqlFileRepository getSqlFileRepository() {
return sqlFileRepository();
}
};
}
示例10: expandColumns
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
protected List<String> expandColumns(ExpandNode node) {
if (entityType == null) {
SqlLocation location = node.getLocation();
throw new JdbcException(Message.DOMA2144, location.getSql(), location.getLineNumber(),
location.getPosition());
}
Naming naming = config.getNaming();
Dialect dialect = config.getDialect();
return entityType.getEntityPropertyTypes().stream()
.map(p -> p.getColumnName(naming::apply, dialect::applyQuote)).collect(Collectors.toList());
}
示例11: domaConfig
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
@Bean
public Config domaConfig() {
return new DomaAbstractConfig() {
@Override
public Dialect getDialect() {
return dialect();
}
@Override
public DataSource getDataSource() {
return new TransactionAwareDataSourceProxy(dataSource());
}
};
}
示例12: validateGenerationStrategy
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
/**
* 識別子の生成方法を検証します。
*
* @param config
* 識別子の生成に関する設定
*/
public void validateGenerationStrategy(IdGenerationConfig config) {
Dialect dialect = config.getDialect();
GenerationType generationType = idGenerator.getGenerationType();
if (!isGenerationTypeSupported(generationType, dialect)) {
EntityType<?> entityType = config.getEntityType();
throw new JdbcException(Message.DOMA2021, entityType.getName(),
name, generationType.name(), dialect.getName());
}
}
示例13: isGenerationTypeSupported
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
/**
* 識別子を生成する方法がサポートされているかどうかを返します。
*
* @param generationType
* 識別子の生成方法
* @param dialect
* 方言
* @return サポートされている場合 {@code true}
*/
protected boolean isGenerationTypeSupported(GenerationType generationType,
Dialect dialect) {
switch (generationType) {
case IDENTITY:
return dialect.supportsIdentity();
case SEQUENCE:
return dialect.supportsSequence();
default:
return true;
}
}
示例14: prepareSql
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
protected void prepareSql() {
Naming naming = config.getNaming();
Dialect dialect = config.getDialect();
PreparedSqlBuilder builder = new PreparedSqlBuilder(config,
SqlKind.BATCH_INSERT, sqlLogType);
builder.appendSql("insert into ");
builder.appendSql(entityType.getQualifiedTableName(naming::apply,
dialect::applyQuote));
builder.appendSql(" (");
for (EntityPropertyType<ENTITY, ?> p : targetPropertyTypes) {
builder.appendSql(p.getColumnName(naming::apply,
dialect::applyQuote));
builder.appendSql(", ");
}
builder.cutBackSql(2);
builder.appendSql(") values (");
for (EntityPropertyType<ENTITY, ?> propertyType : targetPropertyTypes) {
Property<ENTITY, ?> property = propertyType.createProperty();
property.load(currentEntity);
builder.appendParameter(property.asInParameter());
builder.appendSql(", ");
}
builder.cutBackSql(2);
builder.appendSql(")");
PreparedSql sql = builder.build(this::comment);
sqls.add(sql);
}
示例15: expandColumns
import org.seasar.doma.jdbc.dialect.Dialect; //导入依赖的package包/类
protected List<String> expandColumns(ExpandNode node) {
if (entityType == null) {
SqlLocation location = node.getLocation();
throw new JdbcException(Message.DOMA2144, location.getSql(),
location.getLineNumber(), location.getPosition());
}
Naming naming = config.getNaming();
Dialect dialect = config.getDialect();
return entityType.getEntityPropertyTypes().stream()
.map(p -> p.getColumnName(naming::apply, dialect::applyQuote))
.collect(Collectors.toList());
}