package com.example.datapass;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
EditText nametext;
EditText phonetext;
EditText addresstext;
EditText emailtext;
Button input;
String name, phone, address, email;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
nametext=(EditText)findViewById(R.id.nameText);
phonetext=(EditText)findViewById(R.id.priceText);
addresstext=(EditText)findViewById(R.id.marketText);
emailtext=(EditText)findViewById(R.id.locationText);
input=(Button)findViewById(R.id.button1);
//input버튼 클릭시 데이터가 전송됨
input.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
name = nametext.getText().toString().trim();
phone = phonetext.getText().toString().trim();
address = addresstext.getText().toString().trim();
email = emailtext.getText().toString().trim();
insertMember(name, phone, address, email); //데이터 전송 함수
}
});
}
public void insertMember(String name,String phone, String address, String email) {
try{
//전송할 데이터
String data = URLEncoder.encode("name", "UTF-8") + "=" + URLEncoder.encode(name, "UTF-8");
data += "&" + URLEncoder.encode("phone", "UTF-8") + "=" + URLEncoder.encode(phone, "UTF-8");
data += "&" + URLEncoder.encode("address", "UTF-8") + "=" + URLEncoder.encode(address, "UTF-8");
data += "&" + URLEncoder.encode("email", "UTF-8") + "=" + URLEncoder.encode(email, "UTF-8");
//String data="name="+name+"&address="+address+"&email="+email+"&phone"+phone;
//URL url=null;
//URLConnection urlconn;
URL url = new URL("http://203.252.121.216:8080/test/product.jsp");
URLConnection urlconn=url.openConnection();
urlconn.setRequestProperty("content-type", "application/x-www-form-urlencoded");
//urlconn.setRequestMethod("POST");
urlconn.setDefaultUseCaches(false);
urlconn.setDoOutput(true);
urlconn.setDoInput(true);
//데이터 보내기
OutputStreamWriter wr=new OutputStreamWriter(urlconn.getOutputStream());
wr.write(data);
wr.flush();
Log.d("dolnbackground","데이터쓰기 완료");
wr.close();
}catch(Exception e) {
e.printStackTrace();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
일단은 jsp에서 mysql로 데이타를 전송하는 것은 됩니다. 그런데 안드로이드 앱 상에서 데이터를 넣으면 jsp로 데이터가 전송이 되질 않는 것 같습니다. 그래서 자바코드만 드립니다. 왜 안되는지 코드 분석좀 부탁드립니다.ㅜㅜ 능력자님들 ㅜㅜ
도와주세영 ㅜㅜㅜ
데이터 전송만 하는 코드입니다.