zoukankan      html  css  js  c++  java
  • 使用<c:set>标签配置项目路径

    写在前面的话:

      在java项目中,路径的配置是一项最基础也是最必不可少的工作,最初我们配置路径是根据<%=request.getContextPath()%>这个java代码块进行配置的,很繁琐又不方便,每一个引入文件都要重新写一遍,而且如果对路径的分工需要细化的时候(比如有游客登录路径,注册用户登录路径...),就很难快速精准的完成所需工作,下面介绍一种配置方法,在整合路径分工明确的项目时会经常使用,简洁而又方便。

      众所周知,jsp中的jstl标签是一个很强大的工具,实战中会经常用到,引入方法:

    <%@ taglib prefix="c"  uri="http://java.sun.com/jsp/jstl/core" %>
    其中一些标签诸如<c:if></c:if>等等功能强大,我在这里不再赘述,相信稍微有些经验的朋友都能够熟练使用,现在我想说的是jstl标签库中的<c:set></c:set>标签。
    一般情况下我们配置adminPath等路径,需要在xx.properties文件中配置好值,在需要的地方引入该配置文件,使用${adminPath}获取配置好的值,如果能不引入配置文件,直接在需要的页面上配置完成,会不会又省不少的事呢?答案是可以的。

    我们首先创建一个taglib.jsp文件,作为文件头,代码如下:
    <%@ taglib prefix="shiro" uri="/WEB-INF/tlds/shiros.tld" %>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
    <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
    <%@ taglib prefix="fns" uri="/WEB-INF/tlds/fns.tld" %>
    <%@ taglib prefix="fnc" uri="/WEB-INF/tlds/fnc.tld" %>
    <%@ taglib prefix="sys" tagdir="/WEB-INF/tags/sys" %>
    <%@ taglib prefix="act" tagdir="/WEB-INF/tags/act" %>
    <%@ taglib prefix="cms" tagdir="/WEB-INF/tags/cms" %>
    <c:set var="ctx" value="/com_sm_ssm/${fns:getAdminPath()}"/>
    <c:set var="ctxStatic" value="/com_sm_ssm/static"/>

    这个文件是要写我们在加载页面的时候所有需要引入的文件,诸如js,css等都可以放在这个文件中,只要在所有需要这些文件的页面的头部,使用如下代码块,将taglib.jsp引入页面中,那么所配置的路径就会生效了。

    <%@ include file="/WEB-INF/views/include/taglib.jsp"%>

    这样配置的好处是省时省力,页面简洁,新增一个路径只需要在taglib.jsp文件中多加入一个<c:set></c:set>标签即可,<c:set></c:set>标签中,var是需要的路径名称,value是该路径的值,在需要跳转或者使用Ajax异步调用的地方,直接是${ctxStatic}即可。

  • 相关阅读:
    107. Binary Tree Level Order Traversal II
    103. Binary Tree Zigzag Level Order Traversal
    102. Binary Tree Level Order Traversal
    690. Employee Importance
    1723. Find Minimum Time to Finish All Jobs
    LeetCode 329 矩阵中最长增长路径
    7.2 物理内存管理
    LeetCode 面试题 特定深度节点链表
    LeetCode 100 相同的树
    npm安装包命令详解,dependencies与devDependencies实际区别
  • 原文地址:https://www.cnblogs.com/fengwenzhee/p/7204474.html
Copyright © 2011-2022 走看看