<<안드로이드 부분>>
package exam.Db_test;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TabHost;
import android.widget.TextView;
import android.widget.Toast;
public class Db_test extends Activity
{
TabHost mTabHost = null;
String myId, myPWord, myTitle, mySubject, myResult;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//mTabHost = getTabHost(); // Tab 만들기
// mTabHost.addTab(mTabHost.newTabSpec("tab_1").setIndicator("서버로 전송").setContent(R.id.page01));
// mTabHost.addTab(mTabHost.newTabSpec("tab_2").setIndicator("서버에서 받음").setContent(R.id.page02));
Button button_submit = (Button)findViewById(R.id.btn_submit);
}
Button.OnClickListener buttonClick = new Button.OnClickListener() {
public void onClick(View v)
{
myId = ((EditText)(findViewById(R.id.edit_id))).getText().toString();
myPWord = ((EditText)(findViewById(R.id.edit_passwd))).getText().toString();
myTitle = ((EditText)(findViewById(R.id.edit_title))).getText().toString();
mySubject = ((EditText)(findViewById(R.id.edit_sub))).getText().toString();
HttpPostData();
}
};
// Http Post로 주고 받기
public void HttpPostData() {
try {
// URL 설정하고 접속하기
URL url = new URL(http://url/test.aspx); // URL 설정
HttpURLConnection http = (HttpURLConnection) url.openConnection(); // 접속
//--------------------------
// 전송 모드 설정 - 기본적인 설정이다
//--------------------------
http.setDefaultUseCaches(false);
http.setDoInput(true); // 서버에서 읽기 모드 지정
http.setDoOutput(true); // 서버로 쓰기 모드 지정
http.setRequestMethod("POST"); // 전송 방식은 POST
http.setRequestProperty("content-type", "application/x-www-form-urlencoded");
// 서버로 값 전송
StringBuffer buffer = new StringBuffer();
buffer.append("id").append("=").append(myId).append("&"); // php 변수에 값 대입
buffer.append("pwd").append("=").append(myPWord).append("&"); // php 변수 앞에 '$' 붙이지 않는다
buffer.append("title").append("=").append(myTitle).append("&"); // 변수 구분은 '&' 사용
buffer.append("subject").append("=").append(mySubject);
OutputStreamWriter outStream = new OutputStreamWriter(http.getOutputStream(), "EUC-KR");
PrintWriter writer = new PrintWriter(outStream);
writer.write(buffer.toString());
writer.flush();
// 서버에서 전송받기
InputStreamReader tmp = new InputStreamReader(http.getInputStream(), "EUC-KR");
BufferedReader reader = new BufferedReader(tmp);
StringBuilder builder = new StringBuilder();
String str;
while ((str = reader.readLine()) != null) {
builder.append(str + "\n");
}
myResult = builder.toString();
((TextView)(findViewById(R.id.text_result))).setText(myResult);
Toast.makeText(Db_test.this, "전송 후 결과 받음", 0).show();
} catch (MalformedURLException e) {
//
} catch (IOException e) {
//
}
} }
이후에 ASP.NET부분에서 post값을 받아서 DB 에 넣을려고 합니다.
aspx나 aspx.cs 파일에서 안드로이드에서 넘긴 파리미터를 접근하려면 어떻게 해야하나요?
제가 하려는게 Android -ASP.NET-iis- Ms sql 로 연동하려고 합니다..