如何在没有硬编码的情况下使用sendgrid和java初始化电子邮件
如何在没有硬编码的情况下在我的服务类中初始化电子邮件(例如:如何在没有硬编码的情况下使用sendgrid和java初始化电子邮件,java,spring,sendgrid,Java,Spring,Sendgrid,如何在没有硬编码的情况下在我的服务类中初始化电子邮件(例如:email to=new email(“1234@gmail.com“”。我使用以下代码初始化电子邮件,但它返回一些错误。请帮助我解决此问题。我正在使用SendGrid API。以下是我的服务代码: Email to = new Email(); to.setEmail(emailIDTO.getTO()); //emailIDTO is an object of IDTO class // IDTO class takes the
email to=new email(“1234@gmail.com“”
。我使用以下代码初始化电子邮件,但它返回一些错误。请帮助我解决此问题。我正在使用SendGrid API。以下是我的服务代码:
Email to = new Email();
to.setEmail(emailIDTO.getTO()); //emailIDTO is an object of IDTO class
// IDTO class takes the value from the JSON request body and initializes it to the email object
以及相关的IDTO代码段:
public Email getTo(){
return to;
} // method getTo return the mail id of the recipient.
public Email createTo(EmailIDTO emailIDTO){
to.setName(emailIDTO.getName();
to.setEmail(emailIDTO.getEmail());
return null;
}
错误:
电子邮件中的setEmail(java.lang.String)不能应用于(com.sendgrid.Email)
您的代码失败,因为您的
emailIDTO.getTO()
方法正在返回电子邮件对象,您正试图使用接受字符串参数的方法分配该对象。在这种情况下,错误是不言自明的
您可以尝试以下操作之一:
选项1-直接从IDTO设置对象:
Email to = emailIDTO.getTO();
选项2-提取字符串值:
Email to = new Email();
to.setEmail(emailIDTO.getTO().getEmail());
注意-您的
IDTO.createTo()
方法返回null,这可能会产生意外的后果。可能您想将返回到?您好,请包括您遇到的错误的详细信息。另外,请解释“不使用硬编码”的含义?什么是IDTO类?如果你在问题中包含更多细节,肯定会有人帮助你。同时,请阅读“抱歉,让问题变得不清楚。我已经做了你所说的更改”。@MichalExcellent,现在我们有进展了。你能不能也包含一段你的emailIDTO.getTO()
method。该错误表示帮助程序方法返回类型与setEmail
的预期参数之间的类型不匹配。public Email getTo(){return to;}//method getTo返回收件人的邮件id。public Email createTo(EmailIDTO EmailIDTO){to.setName(EmailIDTO.getName();to.setEmail(EmailIDTO.getEmail());返回null;}我再次更新了您的问题以包含相关代码。请在以后提问时注意这一点。如果您觉得我下面的答案很有帮助,请接受。非常感谢您……很抱歉让问题变得不清楚。我是堆栈溢出和软件开发的新手。我将在下次正确遵循提示。