ฉีดการกำหนดทรัพย์สินอกจากโปรแกรมคุณสมบัติอยู่ใน quarkus

0

คำถาม

ตามคนนำทาง อยู่ที่นี่ ฉันกำลังพยายามฉีดของตัวเองกำหนดเองคุณสมบัติที่ฉันกำหนดไว้ในโปรแกรมคุณสมบัติของ. ที่อุปกรณ์ประกอบที่ถูกกำหนดเป็น sendgrid.apikey=key และจากนั้นชั้นเรียนของผมคื;

@ApplicationScoped
public class EmailConfig {

    @Inject
    @ConfigProperty(name = "sendgrid.apikey")
    String API_KEY;

    private SendGrid sendGrid;
    private Request request;

    public EmailConfig() {
        sendGrid = new SendGrid(API_KEY);
        request = new Request();
    }

ตอนที่ผมโดนเส้นแรกของกรอบใน constructor ฉันคาดหวัง API_KEY เพื่อเป็นค่าในการทำงานของโปรแกรมคุณสมบัติของแฟ้มแต่มันคือ null. ฉันไม่รู้ว่าทำไม! ฉันพยายามนี้ด้วยกันและไม่มี @Inject หมายเหตุประกอบ annotation tool btw.

มีความคิดอะไรอีกไหม

java properties quarkus
2021-11-22 20:37:30
1

คำตอบที่ดีที่สุด

2

คุณคาดหวังผิดพลาด มีเทคนิคสำหรับสร้างเป็นตัวอย่างของชั้นเรียนโดยไม่เรียกเป็น constructor แต่พวกเขาคือโดยทั่วไปแล้วไม่น่าเชื่อถือดังนั้นสิ่งที่ Quarkus มันคือสิ่งที่คุณต้องทำด้วยมือ:จะสร้างตัวอย่างมันเรียกว่า constructor. แค่หลังจากเป็นตัวอย่างเช่นมีอยู่สามารถช่องข้อมูลถูกฉีด.

สิ่งที่คุณสามารถทำก็คือฉีดวัตถุงเข้า constructor เป็นของมันพารามิเตอร์:

@ApplicationScoped
public class EmailConfig {

    private SendGrid sendGrid;
    private Request request;

    @Inject
    public EmailConfig(@ConfigProperty(name = "sendgrid.apikey") String API_KEY) {
        sendGrid = new SendGrid(API_KEY);
        request = new Request();
    }
2021-11-22 22:02:08

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่