feat: 清理代码

This commit is contained in:
wangyu 2024-07-11 17:57:48 +08:00
parent a2ebeb1526
commit 3bd0119fbf
2 changed files with 0 additions and 124 deletions

View File

@ -1,80 +0,0 @@
package dev.flyfish.framework.r2dbc.config;
import dev.flyfish.framework.r2dbc.operations.R2dbcFluentOperations;
import group.flyfish.fluent.chain.common.ExecutableSql;
import group.flyfish.fluent.entity.SQLEntity;
import group.flyfish.fluent.operations.FluentSQLOperations;
import lombok.RequiredArgsConstructor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.r2dbc.core.DatabaseClient;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
/**
* fluent风格的sql编写支持
* 基于fluent sql
*
* @author wangyu
*/
@ConditionalOnClass(FluentSQLOperations.class)
@ConditionalOnBean(DatabaseClient.class)
class FluentR2dbcAutoConfiguration {
@Bean
@ConditionalOnMissingBean
public R2dbcFluentOperations r2dbcFluentOperations(DatabaseClient databaseClient) {
return new DefaultFluentOperations(databaseClient);
}
/**
* 默认的实现
*
* @author wangyu
*/
@RequiredArgsConstructor
private static class DefaultFluentOperations implements R2dbcFluentOperations {
private final DatabaseClient databaseClient;
@Override
public <T> Mono<T> findOne(ExecutableSql sql) {
SQLEntity entity = new SQLEntity();
DatabaseClient.GenericExecuteSpec spec = databaseClient.sql(entity::getSql);
Object[] bindings = entity.getParameters();
for (int i = 0; i < bindings.length; i++) {
spec.bind(i, bindings[i]);
}
return spec.mapValue()
}
@Override
public <T> Flux<T> find(ExecutableSql sql) {
return null;
}
@Override
public <T> Mono<Page<T>> find(ExecutableSql sql, Pageable pageable) {
return null;
}
@Override
public <T> Mono<T> findOne(ExecutableSql sql, Class<T> resultType) {
return null;
}
@Override
public <T> Flux<T> find(ExecutableSql sql, Class<T> resultType) {
return null;
}
@Override
public <T> Mono<Page<T>> find(ExecutableSql sql, Pageable pageable, Class<T> resultType) {
return null;
}
}
}

View File

@ -1,44 +0,0 @@
package dev.flyfish.framework.r2dbc.operations;
import group.flyfish.fluent.chain.common.ExecutableSql;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
/**
* 我们为实际开发提供了响应式链避免写sql
*
* @author wangyu
*/
public interface R2dbcFluentOperations {
/**
* 查询单个
*
* @param sql 可执行sql
* @param resultType 结果类型
* @param <T> 泛型
* @return 结果
*/
<T> Mono<T> findOne(ExecutableSql sql, Class<T> resultType);
/**
* 查询单个
*
* @param sql 可执行sql
* @param resultType 结果类型
* @param <T> 泛型
* @return 结果
*/
<T> Flux<T> find(ExecutableSql sql, Class<T> resultType);
/**
* 查询分页对象
*
* @param sql 可执行sql
* @param <T> 泛型
* @return 结果
*/
<T> Mono<Page<T>> find(ExecutableSql sql, Pageable pageable, Class<T> resultType);
}