target_type
target_type |
意义 |
Org |
机构,代表机构类型的覆盖 |
Role |
角色,覆盖到某类角色 |
User |
个人,覆盖到某个人 |
Time |
地理空间,描述当前资源覆盖的空间范围,比如:长江中下游 |
RSD |
工作空间,覆盖到某个资源的工作空间,其标识的字符串为Workspace |
Debug |
用于测试,用于测试数据的隔离 |
Service |
对于提供服务的标识 |
PB |
公共库 |
App |
对于应用进行资源隔离 |
Class |
对于班级进行资源隔离 |
strategy |
意义 |
SHAREING |
分享,只此资源分享给某个个人或者机构 |
REPORTING |
上报,下级上报给上级机构的资源 |
OWNER |
所属,一个资源所属范围,比如属于个人的,属于某个机构的。只允许有一个宿主范围 |
ASSEMBLE |
包含,在宿主资源域中资源,可以被包含在当前资源中。此类资源只能在当前资源被激活的情况下可用 |
ASSEMBLE |
包含,在宿主资源域中资源,可以被包含在当前资源中。此类资源只能在当前资源被激活的情况下可用 |
FAVORITE |
收藏,用户喜欢的资源可以进行收藏进自己的收藏夹 |
INITTAMPLATE |
初始化模板,在编辑器中存储编辑器用到的初始化模板 |
TEST |
测试,测试数据的隔离 |
SUPPORT |
提供服务支持 |
resource_categories表
维度表
字段 |
意义 |
taxOncode |
都可以在维度表找到相应的值 |
taxOnName |
分类中细分的名字 |
category_code |
维度数据第一个层 |
category_name |
应的是这个分类的名称 |
taxOnPath |
K12/学段/年级/学科/版本/子版本 |
根据某个值从数据库中取值,比如知道category_datas中的nd_code求出这个对应的科目名称
private String accordingCodeFindCodeName(String sourceString) {
String name = null;
CategoryData cData = new CategoryData(); // 根据grade来查找中文名称
cData.setNdCode(sourceString);
try {
cData = categoryDataRepository.getByExample(cData);
if (cData == null) {
return "";
}
name = cData.getTitle();
catch (EspStoreException e) {
throw new LifeCircleException(HttpStatus.INTERNAL_SERVER_ERROR,
LifeCircleErrorMessageMapper.StoreSdkFail.getCode(),
e.getMessage());
}
return name;
}
就是把sourceString从和数据库对应的pojo对象中,再从这个对应的Repository中getByExample(cData),再从得到的对象中取值
sql查询的时候要防止注入
Map<String, Object> params = new HashMap<String, Object>();
params.put("schoolId", schoolId);
if (StringUtils.hasText(resType)) {
params.put("resType", resType);
}
if (StringUtils.hasText(queryDate)) {
params.put("queryDate", queryDate);
}
String querySql = sqlStringBuffer.toString();
LOG.info("sql语句为" + querySql);
final List<HourDataModel> resultList = new ArrayList<HourDataModel>();
NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(
defaultJdbcTemplate);
namedJdbcTemplate.query(querySql, params, new RowMapper<String>() {
@Override
public String mapRow(ResultSet rs, int rowNum) throws SQLException {
HourDataModel hdm = new HourDataModel();
hdm.setHour(rs.getString("hour"));
hdm.setData(rs.getInt("data"));
resultList.add(hdm);
return null;
}
});
用NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(
defaultJdbcTemplate);来做