code: public static void run(Object refer, Runnable atom) {
          if (null != atom) {
              if (log.isTraceEnabled())
                  log.tracef("TableName.run: [%s]->[%s]", object, object.get());
  
              Object old = get();
              set(refer);
              try {
                  atom.run();
              }
              catch (Exception e) {
                  throw Lang.wrapThrow(e);
              }
              finally {
                  set(old);
                  if (log.isTraceEnabled())
                      log.tracef("TableName.finally: [%s]->[%s]", object, object.get());
              }
          }
      }
docs: 代码模板，这个模板保证了，在 atom 中运行的 POJO 的动态表名，都会被参考对象所影响
  
  @param refer
  参考对象
  @param atom
  你的业务逻辑