use of com.albedo.java.plugins.database.mybatis.conditions.Wraps in project albedo by somowhere.
the class ApplicationServiceImpl method getByClient.
@Override
public ApplicationDo getByClient(String clientId, String clientSecret) {
LbqWrapper<ApplicationDo> wrapper = Wraps.<ApplicationDo>lbQ().select(ApplicationDo::getId).eq(ApplicationDo::getClientId, clientId).eq(ApplicationDo::getClientSecret, clientSecret);
Function<CacheKey, Object> loader = k -> super.getObj(wrapper, Convert::toLong);
CacheKey cacheKey = new ApplicationClientCacheKeyBuilder().key(clientId, clientSecret);
return getByKey(cacheKey, loader);
}
use of com.albedo.java.plugins.database.mybatis.conditions.Wraps in project albedo by somowhere.
the class ParameterServiceImpl method getValue.
@Override
public String getValue(String key, String defVal) {
if (StrUtil.isEmpty(key)) {
return defVal;
}
Function<CacheKey, String> loader = k -> {
ParameterDo parameterDo = getOne(Wraps.<ParameterDo>lbQ().eq(ParameterDo::getKey, key));
return parameterDo == null ? defVal : parameterDo.getValue();
};
CacheKey cacheKey = new ParameterKeyCacheKeyBuilder().key(key);
return cacheOps.get(cacheKey, loader);
}
use of com.albedo.java.plugins.database.mybatis.conditions.Wraps in project albedo by somowhere.
the class TenantServiceImpl method getByCode.
/**
* tenant_name:{tenantCode} -> id 只存租户的id,然后根据id再次查询缓存,这样子的好处是,删除或者修改租户信息时,只需要根据id淘汰缓存即可
* 缺点就是 每次查询,需要多查一次缓存
*
* @param tenant
* @return
*/
@Override
public Tenant getByCode(String tenant) {
Function<CacheKey, Object> loader = (k) -> getObj(Wraps.<Tenant>lbQ().select(Tenant::getId).eq(Tenant::getCode, tenant), Convert::toLong);
CacheKey cacheKey = new TenantCodeCacheKeyBuilder().key(tenant);
return getByKey(cacheKey, loader);
}
Aggregations