<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ojtit.android.test.http"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".HttpConActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ojtit.android.test.http"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".HttpConActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
HttpConActivity.java
package com.ojtit.android.test.http;
import java.io.*;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HttpConActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView text = (TextView)this.findViewById(R.id.text);
try{
//text.setText(getStringFromUrl("http://naver.com"));
text.setText(getStringFromUrl(http://172.16.70.44/WebApp/index.jsp);
}catch(Exception e){
e.printStackTrace();
}
/* 웹서버에서 이미지를 수신하여 이미지뷰에 출력한다 */
ImageView img = (ImageView)findViewById(R.id.img);
Bitmap bitmap =
DownloadImage("http://www.android.com/images/developers.gif");
img = (ImageView) findViewById(R.id.img);
img.setImageBitmap(bitmap);
/* 웹서버에서 XML문서를 다운로드하여 Toast에 출력한다 */
DownloadXML("http://172.16.70.44/WebApp/index.jsp");
}
public static InputStream getInputStreamFromUrl(String url){
InputStream contentStream = null;
try{
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(new HttpGet(url));
contentStream = response.getEntity().getContent();
} catch(Exception e){
e.printStackTrace();
}
return contentStream;
}
public static String getStringFromUrl(String url) throws UnsupportedEncodingException{
BufferedReader br = new BufferedReader(new InputStreamReader(getInputStreamFromUrl(url),"euc-kr"));
StringBuffer sb = new StringBuffer();
try{
String line = null;
while ((line = br.readLine())!=null){
sb.append(line);
}
}catch (IOException e){
e.printStackTrace();
}
return sb.toString();
}
private Bitmap DownloadImage(String URL)
{
Bitmap bitmap = null;
InputStream in = null;
try {
in = getInputStreamFromUrl(URL);
bitmap = BitmapFactory.decodeStream(in);
/* 위에서 리턴된 bitmap은 ImageView에 출력할 수 있다 */
in.close();
} catch (IOException e1) {
e1.printStackTrace();
}
return bitmap;
}
private void DownloadXML(String URL)
{
InputStream in = null;
try {
in = getInputStreamFromUrl(URL);
Document doc = null;
DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
DocumentBuilder db;
try {
db = dbf.newDocumentBuilder();
doc = db.parse(in);
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
}
doc.getDocumentElement().normalize();
NodeList itemNodes = doc.getElementsByTagName("student");
String strName = null;
for (int i = 0; i < itemNodes.getLength(); i++) {
Node itemNode = itemNodes.item(i);
if (itemNode.getNodeType() == Node.ELEMENT_NODE)
{
Element itemElement = (Element) itemNode;
NodeList nameNodes = itemElement.getElementsByTagName("name");
Element nameElement = (Element) nameNodes.item(0);
Node node = nameElement.getFirstChild();
strName = node.getNodeValue();
Toast.makeText(getBaseContext(),strName,
Toast.LENGTH_SHORT).show();
}
}
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
import java.io.*;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HttpConActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView text = (TextView)this.findViewById(R.id.text);
try{
//text.setText(getStringFromUrl("http://naver.com"));
text.setText(getStringFromUrl(http://172.16.70.44/WebApp/index.jsp);
}catch(Exception e){
e.printStackTrace();
}
/* 웹서버에서 이미지를 수신하여 이미지뷰에 출력한다 */
ImageView img = (ImageView)findViewById(R.id.img);
Bitmap bitmap =
DownloadImage("http://www.android.com/images/developers.gif");
img = (ImageView) findViewById(R.id.img);
img.setImageBitmap(bitmap);
/* 웹서버에서 XML문서를 다운로드하여 Toast에 출력한다 */
DownloadXML("http://172.16.70.44/WebApp/index.jsp");
}
public static InputStream getInputStreamFromUrl(String url){
InputStream contentStream = null;
try{
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(new HttpGet(url));
contentStream = response.getEntity().getContent();
} catch(Exception e){
e.printStackTrace();
}
return contentStream;
}
public static String getStringFromUrl(String url) throws UnsupportedEncodingException{
BufferedReader br = new BufferedReader(new InputStreamReader(getInputStreamFromUrl(url),"euc-kr"));
StringBuffer sb = new StringBuffer();
try{
String line = null;
while ((line = br.readLine())!=null){
sb.append(line);
}
}catch (IOException e){
e.printStackTrace();
}
return sb.toString();
}
private Bitmap DownloadImage(String URL)
{
Bitmap bitmap = null;
InputStream in = null;
try {
in = getInputStreamFromUrl(URL);
bitmap = BitmapFactory.decodeStream(in);
/* 위에서 리턴된 bitmap은 ImageView에 출력할 수 있다 */
in.close();
} catch (IOException e1) {
e1.printStackTrace();
}
return bitmap;
}
private void DownloadXML(String URL)
{
InputStream in = null;
try {
in = getInputStreamFromUrl(URL);
Document doc = null;
DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
DocumentBuilder db;
try {
db = dbf.newDocumentBuilder();
doc = db.parse(in);
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
}
doc.getDocumentElement().normalize();
NodeList itemNodes = doc.getElementsByTagName("student");
String strName = null;
for (int i = 0; i < itemNodes.getLength(); i++) {
Node itemNode = itemNodes.item(i);
if (itemNode.getNodeType() == Node.ELEMENT_NODE)
{
Element itemElement = (Element) itemNode;
NodeList nameNodes = itemElement.getElementsByTagName("name");
Element nameElement = (Element) nameNodes.item(0);
Node node = nameElement.getFirstChild();
strName = node.getNodeValue();
Toast.makeText(getBaseContext(),strName,
Toast.LENGTH_SHORT).show();
}
}
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
http://172.16.70.44/WebApp/index.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>환영합니다</title>
</head>
<body>
<%="index.jsp에 접속되었습니다" %>
</body>
</html>
JSP에서 Android단말기에 XML 포맷으로 응답하는 경우
<%@ page language="java" contentType="text/xml;charset=utf-8" %>
<students>
<student>
<name>홍길동</name>
<num>100</num>
<phone>234-6534-2345</phone>
</student>
<student>
<name>박지성</name>
<num>200</num>
<phone>324-7546-8678</phone>
</student>
</students>
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.