[SPRING] 봄 MVC 응용 프로그램에서 JSP로 속성 파일의 값을 표시하는 방법
SPRING봄 MVC 응용 프로그램에서 JSP로 속성 파일의 값을 표시하는 방법
app-servlet.xml에서 다음과 같은 bean을 사용하여 속성을 설정합니다.
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="/WEB-INF/my.properties"></property>
</bean>
대부분 내 컨트롤러 나 다른 클래스의 속성에 다음과 같이 액세스합니다.
@Value("${dbtype}")
public String dbType;
하지만 JSP 파일에서 속성을 사용하고 컨트롤러를 우회하려면 어떻게해야합니까? 의미는 컨트롤러에서 JSP로 모델 속성으로 전달되는 값 유형을 원하지 않는다는 의미입니다.
jsp에서 직접 속성에 액세스하는 방법이 있습니까?
해결법
-
==============================
1.봄 설정
봄 설정
<util:properties id="propertyConfigurer" location="classpath:yourPropertyFileClasspathHere "/> <context:property-placeholder properties-ref="propertyConfigurer" />
JSP로
<spring:eval expression="@propertyConfigurer.getProperty('propertyNameHere')" />
-
==============================
2.당신이 할 수있는 일은 단일 속성 자리 표시 자에서 속성을 찾는 것에 묶이지 않거나 java config를 사용하고 PropertySourcesPlaceholderConfigurer를 인스턴스화하는 것이 환경 객체를 사용하는 경우에 당신을 묶을 수 없습니다.
당신이 할 수있는 일은 단일 속성 자리 표시 자에서 속성을 찾는 것에 묶이지 않거나 java config를 사용하고 PropertySourcesPlaceholderConfigurer를 인스턴스화하는 것이 환경 객체를 사용하는 경우에 당신을 묶을 수 없습니다.
<spring:eval expression="@environment.getProperty('application_builtBy')" />
-
==============================
3.
<bean class="org.springframework.context.support.ReloadableResourceBundleMessageSource" id="messageSource" p:basenames="WEB-INF/i18n/site" p:fallbackToSystemLocale="false"/>
이제 이것이 당신의 Properties 파일입니다.
site.name=Cool Bananas
그리고 여기에 JSP가 있습니다.
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %> <html> <head> <title><spring:message code="site.name"/></title> </head> <body> </body> </html>
-
==============================
4.문맥에서 다만 이것을하십시오 :
문맥에서 다만 이것을하십시오 :
<util:properties id="propertyConfigurer" location="classpath:yourPropertyFileClasspathHere" /> <context:property-placeholder properties-ref="propertyConfigurer" />
Properties bean을 생성하기 위해 (그의 대답에서 @ nkjava.blogspot.com과 동일). 그러나 이것이 모든 일이해야 할 필요는 없습니다.
이제이 빈을 JSP에 노출시켜야한다. 이를 수행하는 방법은 거의 없으며보기 확인자의 유형에 따라 다릅니다. InternalResourceViewResolver에 대한 해결책이 있습니다 - "exposeContextBeansAsAttributes"를 true로 설정하고 "exposedContextBeanNames"를 필수 빈의 목록으로 채워야합니다.
타일의 경우도 해결책입니다.
JSP에서이 bean을 간단하게 사용할 수 있습니다. EL을 통해 예를 들면 :
${propertyConfigurer['my.string.from.prop.file']}
from https://stackoverflow.com/questions/15111260/how-to-show-values-from-property-file-in-jsp-in-a-spring-mvc-app by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] LDAP : 연결 세부 정보로 사용자를 인증하는 방법 (0) | 2018.12.30 |
---|---|
[SPRING] @RequestMapping 사용자 지정 속성을 구현하는 방법 (0) | 2018.12.30 |
[SPRING] Spring JPA와 persistence.xml (0) | 2018.12.30 |
[SPRING] Spring과 Hibernate로 작업 할 때 persistence.xml이 필요합니까? (0) | 2018.12.30 |
[SPRING] Junit을 사용하여 Spring 테스트 세션 범위 bean (0) | 2018.12.30 |