Spring: So laden Sie eine Eigenschaftendatei mithilfe der @Value-Annotation

Dieses Beispiel zeigt, wie die Eigenschaftendateiwerte mithilfe der @Value-Annotation geladen werden. Der Zugriff auf die Eigenschaftendateiwerte in der Spring-Anwendung umfasst die folgenden Schritte:

  • Fügen Sie die Eigenschaftendateidetails zur Spring Bean-Konfigurationsdatei hinzu. Sie müssen das Präfix „classpath“ verwenden, wenn Sie die Dateien aus dem Klassenpfad laden möchten.
  • Erstellen Sie eine Eigenschaftendatei mit demselben Namen, der in der XML-Datei konfiguriert ist, und legen Sie sie in den Klassenpfadordnern ab. In den meisten Szenarien werden Quellordner standardmäßig im Klassenpfad gespeichert.
  • Verwenden Sie die Annotation @Value, um den Eigenschaftswert abzurufen. Die @Value-Annotation übernimmt den String-Parameter, der als „Schlüssel“ in der Eigenschaftendatei verwendet wird. Diese Annotation muss mit Variablen verwendet werden, um den Wert einzufügen.

Schauen wir uns den folgenden Beispielcode an:

1. Spring MVC-Konfigurationen

spring4-mvc-dispatcher-servlet.xml

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:websocket="http://www.springframework.org/schema/websocket"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/websocket
        http://www.springframework.org/schema/websocket/spring-websocket-4.0.xsd">

<context:component-scan base-package="com.javabeat.controller" />
<context:property-placeholder location="classpath:application.properties"/>
<bean
		 >
		<property name="prefix">
			<value>/WEB-INF/jsp/</value>
		</property>
		<property name="suffix">
			<value>.jsp</value>
		</property>
	</bean>

</beans>

2. Anwendungseigenschaftendatei

application.properties

msg=Spring Application Properties!!

3. Spring MVC-Controller

HelloController.java

package com.javabeat.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
@RequestMapping("/welcome")
public class HelloController {
	@Value("${msg}")
	private String msg;

	@RequestMapping(method = RequestMethod.GET)
	public String printWelcome(ModelMap model) {
		model.addAttribute("msg", this.msg);
		return "hello";

	}

}

4. Ansichten

hallo.jsp

<html>
<body>
	Your Message : ${msg}
</body>
</html>

5. Web-Bereitstellungsdeskriptor

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>Spring MVC 4.0 Web Application</display-name>
	<servlet>
		<servlet-name>spring4-mvc-dispatcher</servlet-name>
		<servlet-class>
			org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>spring4-mvc-dispatcher</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>
</web-app>

6. Demo

Wenn Sie das obige Beispiel ausführen, erhalten Sie die folgende Ausgabe.

Anmerkung zum Federwert

(wpdm_file id=82)

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen