首頁  >  問答  >  主體

java - spring 註解動態參數

@SuppressWarnings("serial")
@WebServlet(urlPatterns = "/druid/*",
        initParams = {
                @WebInitParam(name = "allow", value = "127.0.0.1"),// IP白名单 (没有配置或者为空,则允许所有访问)
                @WebInitParam(name = "deny", value = ""),// IP黑名单 (存在共同时,deny优先于allow)
                @WebInitParam(name = "loginUsername", value = "root"),// 用户名
                @WebInitParam(name = "loginPassword", value = "password"),// 密码
                @WebInitParam(name = "resetEnable", value = "false")// 禁用HTML页面上的“Reset All”功能
        })
public class DruidStatViewServlet extends StatViewServlet {
    private static final long serialVersionUID = 1L;
}

類似上面的程式碼。

 @WebInitParam(name = "allow", value = "127.0.0.1"),// IP白名单 (没有配置或者为空,则允许所有访问)
 @WebInitParam(name = "deny", value = ""),// IP黑名单 (存在共同时,deny优先于allow)
 @WebInitParam(name = "loginUsername", value = "root"),// 用户名
 @WebInitParam(name = "loginPassword", value = "password"),// 密码
 @WebInitParam(name = "resetEnable", value = "false")// 禁用HTML页面上的“Reset All”功能

這些參數如何能從設定檔中讀出賦值?

给我你的怀抱给我你的怀抱2702 天前753

全部回覆(3)我來回復

  • PHPz

    PHPz2017-05-27 17:42:04

    目前Spring Boot 沒有resolve Servlet 3.0 API 中 @WebServlet 中的屬性值,如果樓主需要的話,可以定義 @Bean ServletRegistrationBean 取得Environment 裡面的值即可。

    回覆
    0
  • PHP中文网

    PHP中文网2017-05-27 17:42:04

    為啥不在設定檔裡寫?

    <init-param>
       <param-name>aaa</param-name>
       <param-value>
      bb
       </param-value>
      </init-param>
    

    註解就是為了省去配置文件,你這用了註解,又要返回配置文件,有點不理解啊

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-27 17:42:04

    註解和設定檔2選一,看你這裡設定的是druid的監控servlet,相同的內容可以透過設定web.xml,可以參考druid的設定文件。百度一下吧,不貼設定檔了.

    回覆
    0
  • 取消回覆