Come inviare il modulo di posta con java?

Vorrei inviare un modulo di posta con java su un sito web. Mi sono inventato questo, ma non ho intenzione di fare il prossimo o se questo è il modo giusto.

URL url = new URL("http://127.0.0.1"); URLConnection conn=url.openConnection(); conn.setDoOutput(true); OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); wr.write(data); 

la forma del post è simile a questa.

 
Kobe Bryant Dwayne Wade

Puoi scrivere codice simile a questo:

  import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.http.impl.client.HttpClients; public class PostReqEx { public void sendReq(String url,String email,String fname){ HttpClient httpClient = HttpClients.createDefault(); PostMethod postMethod = new PostMethod(url); postMethod.addParameter("Email", email); postMethod.addParameter("fname", fname); try { httpClient.executeMethod(postMethod); } catch (HttpException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } if (postMethod.getStatusCode() == HttpStatus.SC_OK) { String resp = postMethod.getResponseBodyAsString(); } else { //...postMethod.getStatusLine(); } } } 

Si consiglia di considerare l’utilizzo della libreria HttpClient da Apache . Ha la class HttpPost , che è molto facile da usare.

Il progetto HttpClient di Apache gestirà meglio questo per te.

oppure puoi provare questo codice:

 // Using java.net.URL and  //java.net.URLConnection  URL url = new URL("http://jobsearch.dice.com/jobsearch/jobsearch.cgi");  URLConnection connection = url.openConnection();  connection.setDoOutput(true);  OutputStreamWriter out = newOutputStreamWriter(uc.getOutputStream(), "8859_1");  out.write("username=bob&password="+password+"");  // remember to clean up  out.flush();  out.close();