Properties属性文件中的值有等号有换行的小问题
Spring配置Shiro的过滤器时,有个filterChainDefinitions属性,值中有等号有换行,尝试写到Properties属性文件中遇到问题
<!-- 配置shiro过滤器 --> <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean"> <!-- 表示现在要配置的是一个安全管理器 --> <property name="securityManager" ref="securityManager"/> <!-- 出现错误之后的跳转路径的配置 --> <property name="loginUrl" value="/login.html"/> <!-- 认证失败之后的跳转路径页面 --> <property name="unauthorizedUrl" value="/login.html"/> <!-- 登录成功之后的跳转访问路径 --> <property name="successUrl" value="/pages/welcome.jsp"/> <property name="filterChainDefinitions"> <value> /admin=authc /logout=logout /xxxxxx=user </value> </property> </bean>
Properties属性文件可以这样写:
shiro.loginUrl=/login.html shiro.unauthorizedUrl=/login.html shiro.successUrl=/pages/welcome.jsp shiro.filterChainDefinitions=/admin=authc \n\ /logout=logout \n\ /info=authc
后面的等号不需要转义,\n表示值中的换行,再加个转义符\表示值还没结束,这样就没问题了
<bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean"> <property name="securityManager" ref="securityManager"/> <property name="loginUrl" value="${shiro.loginUrl}"/> <property name="unauthorizedUrl" value="${shiro.unauthorizedUrl}"/> <property name="successUrl" value="${shiro.successUrl}"/> <property name="filterChainDefinitions"> <value>${shiro.filterChainDefinitions}</value> </property> </bean>