Maison > Questions et réponses > le corps du texte
spring mvc当中有没有全局变量,类似我设置项目的路径base = "/rs" 或者base="http://192.168.0.1/rs"
然后在页面使用el表达式获取${base} 引入js或者css
因为网站部署在内网的机器如192.168.1.1 tomcat根目录 外网访问只能通过61.11.11.11:1002/project 这样进行访问,request.getContextPath()只能获取根目录。
高洛峰2017-04-18 09:32:24
Voici comment accéder au réseau internehttp://192.168.1.1/rs
, et voici comment accéder au réseau externe :http://61.11.11.11:1002/project/rs
?
Je ne comprends pas la problématique du reverse proxy, mais cela ne peut-il pas suffire si l’on rend les chemins des réseaux internes et externes identiques ?
巴扎黑2017-04-18 09:32:24
Créez un nouveau fichier configure.properties sous le chemin de classe avec le contenu suivant :
web.base=root
Configurez ensuite le fragment XML suivant dans spring-mvc-servlet.xml. Notez qu'il doit être dans le fichier de configuration Spring MVC.
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:configure.properties</value>
</list>
</property>
</bean>
Utilisez ensuite @Value pour injecter la valeur configurée dans le contrôleur
@Value("${web.base}")
private String base;
黄舟2017-04-18 09:32:24
Cela n'a rien à voir avec la situation globale. Cette valeur doit être obtenue par vous-même, et non définie par vous.
迷茫2017-04-18 09:32:24
Écrivez un fichier de configuration spécifiquement pour stocker toutes les variables globales dont vous avez besoin et construisez une méthode pour lire dynamiquement la configuration, qui peut être directement introduite par le frontend. (une idée)
迷茫2017-04-18 09:32:24
Spring lui-même peut configurer des variables globales similaires en XML, telles que la configuration de variables fixes dans ./application.propertites, puis lire
Votre problème doit être lié au transfert du mappage d'URL du réseau interne vers le réseau externe. Configurez-le sur la machine du réseau public
.PHPz2017-04-18 09:32:24
En dernière analyse, cela est dû au nom du projet. Si le projet est directement placé sous webApps->ROOT
et que le nom du dossier est en majuscule, le nom du projet ne sera pas nécessaire.
Présentez css
et js
directement /
et c'est tout