SpringBoot(五):自定義屬性獲取
目錄
一.全域性配置檔案配置屬性
二.獲取單一屬性
三.對映Bean屬性
四.測試
一.全域性配置檔案配置屬性
在src/main/resources目錄下,找到一個名為application-dev.properties的全域性配置檔案,可對一些預設配置的配置值進行修改。
ps:本次目錄結構
配置資訊如下
自定義屬性值
server.port=8080
#測試屬性值
yjgithub.name=cyj
yjgithub.email=yigithub@163.com
yjgithub.sex=man
二.獲取單一屬性
建立以下檔案
/com/citydata/config/YjgithubConfig.java
ps:
1.需要加@Component註解
[email protected]("${yjgithub.name}") 獲取到你所需要的對應值
package com.citydata.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
/**
* @Author yjgithub
* @Date 2018/5/29
* @Description 測試配置檔案資訊
*/
@Component
public class YjgithubConfig {
// name
public static String name;
@Value("${yjgithub.name}")
public void setName(String $name) {
this.name = $name;
}
}
三.對映Bean屬性
3.1新增依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId >spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
3.2 定義一個bean(YjgithubBean) 匹配你所對應的屬性值
在以下路徑建立該bean
/com/citydata/bean/YjgithubConfig.java
ps:
1.需要加@ConfigurationProperties(prefix="yjgithub") 註解匹配上配置檔案中的屬性值
package com.citydata.bean;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
* Created by yjgithub on 2018/5/29.
* name
* email
* sex
*/
@ConfigurationProperties(prefix="yjgithub")
public class YjgithubBean {
private String name;
private String email;
private String sex;
@Override
public String toString() {
return "yjgithub{" +
"name='" + name + '\'' +
", email='" + email + '\'' +
", sex='" + sex + '\'' +
'}';
}
public YjgithubBean(String name, String email, String sex) {
this.name = name;
this.email = email;
this.sex = sex;
}
public YjgithubBean() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
3.3在啟動類(CitydataApplication)中加入該bean
ps:
@EnableConfigurationProperties({YjgithubBean.class})
package com.citydata;
import com.citydata.bean.YjgithubBean;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
@EnableConfigurationProperties({YjgithubBean.class})
@SpringBootApplication
public class CitydataApplication {
public static void main(String[] args) {
SpringApplication.run(CitydataApplication.class, args);
}
}
四.測試
4.1 編寫測試類(service,impl,TestController)
service
package com.citydata.service;
import com.citydata.response.ReturnData;
/**
*
* Created by yjgithub on 2018/5/28.
*/
public interface TestService {
public ReturnData test(String str);
public ReturnData exception();
public ReturnData getSingleValue();
public ReturnData getBeanValue();
}
impl
package com.citydata.service.impl;
import com.citydata.bean.YjgithubBean;
import com.citydata.config.YjgithubConfig;
import com.citydata.constant.ResponseCode;
import com.citydata.response.ReturnData;
import com.citydata.service.TestService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* Created by yjgithub on 2018/5/28.
*/
@Service
public class TestImpl implements TestService {
@Override
public ReturnData test(String str) {
ReturnData rd = new ReturnData(ResponseCode.OPERATION_SUCCESS.getStatus(),ResponseCode.OPERATION_SUCCESS.getMsg(),str);
return rd;
}
@Override
public ReturnData exception() {
int[] arr = {1,2,3};
System.out.println(arr[4]);
ReturnData rd = new ReturnData(ResponseCode.OPERATION_SUCCESS.getStatus(),ResponseCode.OPERATION_SUCCESS.getMsg());
return rd;
}
@Override
public ReturnData getSingleValue() {
String name = YjgithubConfig.name;
ReturnData rd = new ReturnData(ResponseCode.OPERATION_SUCCESS.getStatus(),ResponseCode.OPERATION_SUCCESS.getMsg(),"獲取單一屬性name:"+name);
return rd;
}
@Autowired
private YjgithubBean yjgithubBean;
@Override
public ReturnData getBeanValue() {
String allInfo = yjgithubBean.toString();
ReturnData rd = new ReturnData(ResponseCode.OPERATION_SUCCESS.getStatus(),ResponseCode.OPERATION_SUCCESS.getMsg(),"獲取全部屬性:"+allInfo);
return rd;
}
}
TestController
package com.citydata.controller;
import com.citydata.response.ReturnData;
import com.citydata.service.impl.TestImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* Created by yjgithub on 2018/5/28.
*/
@RestController
@RequestMapping("test")
public class TestController {
@Autowired
TestImpl testService;
@RequestMapping("/index")
public ReturnData index(String Str) {
return testService.test(Str);
}
@RequestMapping("/exception")
public ReturnData exception() {
return testService.exception();
}
@RequestMapping("/singleValue")
public ReturnData singleValue() {
return testService.getSingleValue();
}
@RequestMapping("/beanValue")
public ReturnData beanValue() {
return testService.getBeanValue();
}
}
4.2 訪問資料
單一資料:
全部資料:
到此測試成功!
PS:需要專案原始碼,請郵件[email protected]聯絡
相關推薦
SpringBoot(五):自定義屬性獲取
目錄 一.全域性配置檔案配置屬性 二.獲取單一屬性 三.對映Bean屬性 四.測試 一.全域性配置檔案配置屬性 在src/main/resources目錄下,找到一個名為application-dev.properties的全域性配置檔案,可
Spring Security教程(五):自定義過濾器從資料庫從獲取資源資訊
在之前的幾篇security教程中,資源和所對應的許可權都是在xml中進行配置的,也就在http標籤中配置intercept-url,試想要是配置的物件不多,那還好,但是平常實際開發中都往往是非常多的資源和許可權對應,而且寫在配置檔案裡面寫改起來還得該原始碼配置檔案,這顯然是不好的。因此接下來
Spring Boot 配置檔案詳解:自定義屬性、隨機數、多環境配置等
相信很多人選擇Spring Boot主要是考慮到它既能兼顧Spring的強大功能,還能實現快速開發的便捷。我們在Spring Boot使用過程中,最直觀的感受就是沒有了原來自己整合Spring應用時繁多的XML配置內容,替代它的是在pom.xml中引入模組化的Starter POMs,其中各個模組都有自己的預
Netty4.0學習筆記系列之五:自定義通訊協議
實現的原理是通過Encoder把java物件轉換成ByteBuf流進行傳輸,通過Decoder把ByteBuf轉換成java物件進行處理,處理邏輯如下圖所示: 傳輸的Java bean為Person: package com.guowl.testobjcoder
javascript根據元素自定義屬性獲取元素,操作元素
function getElementByAttr(tag,attr,value) { var aElements=document.getElementsByTagName(tag); var aEle=[]; for(var
初學spring-boot遇到的自定義屬性獲取問題
遇到如下一些問題:(springboot-1.5.14) 1.自己建立的包一定要在啟動入口類***Application.java包下,這樣@EnableAutoConfiguration註解才會自動掃描package,建立Beans 2.
初識Haskell 五:自定義數據類型和類型類
context ima 轉換 ext 定義類 初識 ask spa text 對Discrete Mathematics Using a Computer的第一章Introduction to Haskell進行總結。環境Windows 自定義數據類型 data type
springboot(十三):自定義springmvc過濾器
1.建立LoginFilter類 implements HandlerInterceptor,並吧該類交給spring管理@Component package com.nn.filter; import java.io.PrintWriter; import j
標籤自定義屬性,獲取和操作的方法封裝以及在此基礎上對標籤原有屬性的擴充套件...
按照慣例,上程式碼,並不斷完善中.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html>
springboot controller物件屬性轉換:自定義json訊息處理器
背景 我們後端寫介面的時候可能會碰到屬性欄位轉換的情況,比如user_name轉成userName,這個時候手動寫get set肯定很不方便,這個時候註解神器就可以用了,常用的有兩種JSONField與JsonProperty。 具體使用 JSONField與JsonProp
SpringBoot入門(二):日誌及自定義屬性
這一章主要說springboot中日誌的配置、自定義屬性的配置與讀取、分環境的yml配置檔案(如本地環境、測試環境、生產環境等)。比較偏向實際開發,較為實用,前面一章的一些基本建立在這裡就不多廢話了。 1. springboot的日誌配置 在我們專案實際開發中,日誌是不可或缺的。只有巧用日誌才能快速發
分針網——每日分享:CSS 自定義屬性:API 篇
css JQuery是一個非常優秀的js庫。 選擇元素 $( )裏可以填css選擇器 $(’.demo’).
jquery獲取自定義屬性的值
取值 知識庫 rep -name bsp class tar itl jquery //獲取屬性值 1 <div id="text" value="黑噠噠的盟友"><div> jQuery取值: $("#text").attr("value");
Zabbix(三):高級應用之--展示、模版、自定義屬性測試實例
zabbixZabbix的高級應用1.展示接口: (1)graph: simple graph:每個Item對應的展示圖形; custom graph:創建一個融合了多個simple graph的單個graph; (2)screen: 把多個custom graph整合於一個屏幕進行展示; (3)
springboot 自定義屬性
artifact 正常 進行 fix framework 美的 是我 setter autowire 前言 spring boot使用application.properties默認了很多配置。但需要自己添加一些配置的時候,我們如何添加呢 1.添加自定義屬性 在src/ma
獲取自定義屬性的值
js獲取自定義屬性的值在js中有3種常見的方法:獲取自定義屬性的值
Android項目實戰(十五):自定義不可滑動的ListView和GridView
con app lis androi color max XP xtend exp 原文:Android項目實戰(十五):自定義不可滑動的ListView和GridView不可滑動的ListView (RecyclweView類似) public class NoSc
從零開始學 Web 之 HTML5(二)表單,多媒體新增內容,新增獲取操作元素,自定義屬性
器) user 對比 style 按鈕 ont mp3 url -- 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:ht
關於jQuery獲取html標簽自定義屬性值或data值
自定義屬性 標簽 定義 .data 獲取 div val data 屬性 //獲取屬性值<div id="id1" value="優秀" ></div>jQuery取值:$("#id1").attr("value"); //獲取自定義屬性值&l
springboot之自定義屬性以及亂碼三
自定義屬性的使用(讀取配置檔案,在專案啟動的時候根據@Value去配置檔案中獲取屬性) 在建好的springboot專案properties屬性中自定義屬性,如下: 通過@Value獲取自定義屬性 @Value("${name}") 啟動專案: