插件开启自动加载数据表的信息
#### 使用场景
比如有的站点开启了cnzz统计,有的站点没有开启cnzz统计,那么在项目启动后,需要将每个网站以及是否开启了cnzz统计的信息,从数据库中读出来,进行持久缓存。此便是只需要写一个SQL语句,便可以自动将信息从数据库中取出进行缓存。
## 创建插件示例
#### 1. 创建一个类 Plugin.java
````
import com.xnx3.wangmarket.admin.pluginManage.interfaces.AutoLoadSimpleSitePluginTableDateInterface;
public class Plugin implements AutoLoadSimpleSitePluginTableDateInterface{
@Override
public String autoLoadSimpleSitePluginTableDate() {
return "SELECT id AS siteid, money FROM plugin_resourcestatistics_cost WHERE money < -100";
}
}
````
如此,项目启动完成后会自动将数据从数据库取出,进行持久缓存。
注意的点:
1. 要实现 com.xnx3.wangmarket.admin.pluginManage.interfaces.AutoLoadSimpleSitePluginTableDateInterface 接口
2. return 的sql语句,其中一定要有一列是站点编号,也就是有一列是 siteid 这样才会将每行的数据自动对应到相应的站点上去
#### 如何使用持久缓存的数据
````
//根据siteid,取这个站点的resourceStatistics插件持久缓存的数据
Map map = PluginCache.getPluginMap(simpleSite.getSiteid(), "resourceStatistics");
if(map == null){
//为空,则是没有
return;
}
if(map.get("money") != null && map.get("money").toString().length() > 0){
//如此,便得到了这个站点的余额 money
}
````