当前位置:数据库 > SQLServer >>

Android[中级教程]第十章 Mysql+Json+Android的组合

 

这一章,我们重点来介绍服务器Mysql数据库通过PHP将Json数据交给Android来处理,同学们初看一定觉得好多专业术语哦,呵呵,其实,等我讲完,大家应该都能理解,好了,首先我们来看数据库,Mysql数据库,做过网站的同学应该对Mysql数据库不陌生,我们先在Mysql数据库中创建库表跟数据

\

接下来就要将Mysql的数据暴露给Android了,这里我用了ThinkPHP模板

这里就不讲ThinkPHP的数据库连接之类的了,通过ThinkPHP将数据返回成Json数据

\

这里先上图吧

\

好,接下来就是如何将网络Json数据转入Android中了

 

 

import java.util.ArrayList; 

import java.util.HashMap; 

import java.util.List; 

import java.util.Map; 

 

import org.json.JSONArray; 

import org.json.JSONObject; 

 

import android.app.Activity; 

import android.os.Bundle; 

import android.widget.ListView; 

import android.widget.SimpleAdapter; 

 

import com.kang.http.HttpConnectionUtil; 

import com.kang.http.HttpConnectionUtil.HttpConnectionCallback; 

import com.kang.http.HttpConnectionUtil.HttpMethod; 

 

public class JsonFromPHPDemo extends Activity 

    private ListView listView; 

    private SimpleAdapter adapter; 

    protected List<Person> persons; 

    private Person person; 

 

    @Override 

    protected void onCreate(Bundle savedInstanceState) 

    { 

        // TODO Auto-generated method stub 

        super.onCreate(savedInstanceState); 

        setContentView(R.layout.xml_handler); 

 

        listView = (ListView) findViewById(R.id.xml_list); 

        try 

        { 

            // 自完义适配方法 

            getAdapter(); 

 

        } catch (Exception e) 

        { 

            e.printStackTrace(); 

        } 

 

    } 

     

    /**

     * 自定义方法,从网络取得数据,并将数据放入ListView中

     */ 

    private void getAdapter() 

    { 

        //网址 

        String url = "http://192.168.1.105/PHPDemo/index.php/Index/show"; 

        //上节课讲的网络连接方法 

        HttpConnectionUtil connUtil = new HttpConnectionUtil(); 

        connUtil.asyncConnect(url, HttpMethod.POST, 

                new HttpConnectionCallback() 

                { 

 

                    @Override 

                    public void execute(String response) 

                    { 

 

                        persons = JsonToList(response); 

                        setInAdapter(); 

                        listView.setAdapter(adapter); 

                    } 

                }); 

 

    } 

     

    /**

     * 将数据配入ListView中

     */ 

    protected void setInAdapter() 

    { 

        List<Map<String, String>> lists = new ArrayList<Map<String, String>>(); 

        // 将persons中的数据转换到ArrayList<Map<String,String>>中 

        // String>>中,因为SimpleAdapter要用这个类型的数据进行适配 

        Map<String, String> map; 

        for (Person p : persons) 

        { 

            map = new HashMap<String, String>(); 

 

            map.put("id", p.getId()); 

            map.put("status", p.getStatus()); 

            map.put("name", p.getName()); 

            map.put("tool", p.getTool()); 

            map.put("number", p.getNumber()); 

 

            lists.add(map); 

        } 

 

        // HashMap<String, String>中的key 

        String[] from = { "id", "status", "name", "tool",

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,