java – Spring:如何在Spring配置中注入ENUM?

前端之家收集整理的这篇文章主要介绍了java – Spring:如何在Spring配置中注入ENUM?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个ENUM作为
  1. package com.myorg.sparrow.s3Environment;
  2.  
  3. import javax.annotation.Nonnull;
  4.  
  5. public enum DocumentType {
  6. Document("document/",".xml.gz","binary/octet-stream","gzip",true);
  7.  
  8. private final String path;
  9. private final String suffix;
  10. private final String contentType;
  11. private final String contentEncoding;
  12. private final Boolean compress;
  13.  
  14. private DocumentType(@Nonnull final String path,@Nonnull final String suffix,@Nonnull final String contentType,@Nonnull final String contentEncoding,@Nonnull final Boolean compress) {
  15. this.path = path;
  16. this.suffix = suffix;
  17. this.contentType = contentType;
  18. this.contentEncoding = contentEncoding;
  19. this.compress = compress;
  20. }
  21.  
  22. @Nonnull
  23. public String getPath() {
  24. return path;
  25. }
  26.  
  27. @Nonnull
  28. public String getSuffix() {
  29. return suffix;
  30. }
  31.  
  32. @Nonnull
  33. public String getContentType() {
  34. return contentType;
  35. }
  36.  
  37. @Nonnull
  38. public String getContentEncoding() {
  39. return contentEncoding;
  40. }
  41.  
  42. @Nonnull
  43. public Boolean isCompress() {
  44. return compress;
  45. }
  46. }

我想在Spring配置文件中注入DocumentType.Document的这个值

  1. <bean id="s3Service" class="com.myorg.sparrow.business.xml.persist.S3Service">
  2. <constructor-arg ref="awsCredentials" />
  3. <constructor-arg value="**DocumentType.DOCUMENT**" /> // how do I inject it here?
  4. <constructor-arg value="${com.myorg.sparrow.s3EnvironmentConfiguration.S3EnvironmentConfigurator-destBucketName}" />
  5. </bean>

我如何注入此值

  1. <constructor-arg value="**DocumentType.DOCUMENT**" /> // how do I inject it here?

我是Spring框架的新手,不知道如何实现这一点

谢谢

解决方法

  1. <bean id="s3Service" class="com.myorg.sparrow.business.xml.persist.S3Service">
  2. <constructor-arg ref="awsCredentials" />
  3. <constructor-arg value="Document" /> // We love Spring because it is simpler than we expect
  4. <constructor-arg value="${com.myorg.sparrow.s3EnvironmentConfiguration.S3EnvironmentConfigurator-destBucketName}" />
  5. </bean>

猜你在找的Java相关文章