我必须开发一个java应用程序。
这里我收到以下错误:
Part 类型中的方法 setText(String) 不适用于参数 (String, String)
这里我必须通过 settext 将检索到的用户名,检索到的密码发送到我的邮件。 我如何在 settext 方法中调用上述 2 个字符串值。请帮助我。我的代码有什么问题。
这是我的代码:
public class SendMail {
public String authentication(String Product,String Cost){
String retrievedUserName = "";
String retrievedPassword = "";
String retrievedEmail = "";
String status = "";
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/xcart-432pro","root","");
PreparedStatement statement = con.prepareStatement("SELECT xcart_products.product,xcart_products.list_price,xcart_customers.email FROM xcart_products,xcart_customers WHERE product = '"+Product+"'");
ResultSet result = statement.executeQuery();
while(result.next()){
retrievedUserName = result.getString("list_price");
retrievedPassword = result.getString("product");
retrievedEmail = result.getString("email");
}
if(retrievedPassword.equals(Product)){
status = "The product name is send to your email";
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class",
"javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
Session session = Session.getDefaultInstance(props,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
new PasswordAuthentication("xxxxx@gmail.com","4242vfgDF!");
}
});
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("krishnaveni.veeman@gmail.com"));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse("demo@gamil.com"));
message.setSubject("Testing Subject");
message.setText("Dear Friends This is your product name and price"+
retrievedPassword,retrievedUserName);
Transport.send(message);
System.out.println("Done");
}
最佳答案
尝试指定字符集。我也使用 setContent,但我想 setText 也会以同样的方式工作。尝试用以下内容替换您的 setText 调用:
message.setContent("Dear Friends This is your product name and price "+
retrievedPassword+retrievedUserName, "text/html; charset=utf-8");
关于java - Part 类型中的方法 setText(String) 不适用于参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14078816/