类 ClasspathResourceLoader

java.lang.Object
org.beetl.core.resource.ClasspathResourceLoader
所有已实现的接口:
Closeable, Serializable, AutoCloseable, ResourceLoader<String>

public class ClasspathResourceLoader extends Object implements ResourceLoader<String>
ClassPath加载器,如果不指定classLoader,则使用加载beetl.jar的classloader,如果不指定root,则是默认的根路径, 如果不指定模板字符集,则采用配置文件的resource.charset 配置 注意,采用加载方式是classloader.getClass().getResource() 而不是classloader,如果需要采用classloader,请参考源代码
作者:
xiandafu
另请参阅:
  • 字段详细资料

    • charset

      protected String charset
  • 构造器详细资料

    • ClasspathResourceLoader

      public ClasspathResourceLoader()
      使用加载beetl.jar的classloader,以及默认root为根目录
    • ClasspathResourceLoader

      public ClasspathResourceLoader(ClassLoader classLoader)
      使用指定的classloader
    • ClasspathResourceLoader

      public ClasspathResourceLoader(ClassLoader classLoader, String root)
      使用指定的classloader和root
      参数:
      root - 模板路径,如/com/templates/
    • ClasspathResourceLoader

      public ClasspathResourceLoader(ClassLoader classLoader, String root, String charset)
    • ClasspathResourceLoader

      public ClasspathResourceLoader(String root)
      参数:
      root - ,/com/templates/如其后的resourceId对应的路径是root+"/"+resourceId
    • ClasspathResourceLoader

      public ClasspathResourceLoader(String root, String charset)
  • 方法详细资料

    • getResource

      public Resource getResource(String key)
      从接口复制的说明: ResourceLoader
      根据key获取Resource
      指定者:
      getResource 在接口中 ResourceLoader<String>
      参数:
      key - 根据 key 可以查找到对应的资源
      返回:
      key 所对应的资源
    • close

      public void close()
      从接口复制的说明: ResourceLoader
      关闭 ResourceLoader,通常是 GroupTemplate 关闭的时候也关闭对应的 ResourceLoader
      指定者:
      close 在接口中 AutoCloseable
      指定者:
      close 在接口中 Closeable
      指定者:
      close 在接口中 ResourceLoader<String>
    • isModified

      public boolean isModified(Resource key)
      从接口复制的说明: ResourceLoader
      检测模板是否更改,每次渲染模板前,都需要调用此方法,所以此方法不能占用太多时间,否则会影响渲染功能
      指定者:
      isModified 在接口中 ResourceLoader<String>
      参数:
      key - 根据 key 可以查找到对应的资源
      返回:
      true 表示已更改,false 表示未更改
    • isAutoCheck

      public boolean isAutoCheck()
    • setAutoCheck

      public void setAutoCheck(boolean autoCheck)
    • getRoot

      public String getRoot()
    • init

      public void init(GroupTemplate gt)
      从接口复制的说明: ResourceLoader
      初始化操作
      指定者:
      init 在接口中 ResourceLoader<String>
    • exist

      public boolean exist(String key)
      从接口复制的说明: ResourceLoader
      返回是否存在 key 所对应的资源
      指定者:
      exist 在接口中 ResourceLoader<String>
      参数:
      key - 根据 key 可以查找到对应的资源
      返回:
      true 表示存在,false 表示不存在
    • getCharset

      public String getCharset()
    • setCharset

      public void setCharset(String charset)
    • getResourceId

      public String getResourceId(Resource resource, String id)
      从接口复制的说明: ResourceLoader
      用于 include,layout 等根据相对路径计算资源实际的位置
      指定者:
      getResourceId 在接口中 ResourceLoader<String>
      参数:
      resource - 当前资源
      id - 目标资源所对应的键
      返回:
      计算出来的目标资源的位置
    • getClassLoader

      public ClassLoader getClassLoader()
    • setClassLoader

      public void setClassLoader(ClassLoader classLoader)
    • getInfo

      public String getInfo()
      从接口复制的说明: ResourceLoader
      获取资源加载器的信息,用于获取不到资源的时候输出提示信息
      指定者:
      getInfo 在接口中 ResourceLoader<String>
      返回:
      资源加载器的信息
    • checkRoot

      protected String checkRoot(String path)
      检查classpath路径
    • getChildPath

      protected String getChildPath(String path, String child)