欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

android 调用 REST 服务,androidrest,rest service

来源: javaer 分享于  点击 32735 次 点评:26

android 调用 REST 服务,androidrest,rest service


rest services 的services方法

public static void main(String[] args) throws Throwable {        // this can create JAX-RS server objects        JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();        sf.setResourceClasses(BooksResource.class, BookResource.class,                BookSelectionsResource.class);        sf.setAddress("http://10.0.0.101:8080/bs");        sf.create();        System.out.println("Started");        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));        for (;;) {            System.out.println("Enter command: u--update. q--quit");            String cmd = br.readLine();            if (cmd.equals("u")) {                BookDB.instance.getBook("1234").setLastModified(new Date());            } else if (cmd.equals("q")) {                System.exit(0);            }        }    }        XJCFacade.main(new String[] { "-b", "src/main/resources/bindings.xml",                "-d", "src/main/java", "src/main/resources/BookService.xsd" });        System.out.println("Done!");    }

android 客户端

public void onClick(View view) {            try {                TextView tvResult = (TextView) findViewById(R.id.myView);                HttpClient client = new DefaultHttpClient();                HttpGet httpGet = new HttpGet(                        "http://10.0.0.101:8080/bs/books/1234");                HttpResponse response = client.execute(httpGet);                InputStream inputStream = response.getEntity().getContent();                StringBuffer buffer = new StringBuffer();                BufferedReader bufferReader = new BufferedReader(                        new InputStreamReader(inputStream));                String str = new String("");                while ((str = bufferReader.readLine()) != null) {                    buffer.append(str);                }                bufferReader.close();                System.out.println(buffer.toString());//这里得到的是一个json数据类型的               tvResult.setText(buffer.toString());                                  //转换就省略了            } catch (Throwable e) {                new RuntimeException(e);            }        }

[XML]代码

<?xml version="1.0" encoding="UTF-8"?><schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ttdev.com/bs"    xmlns:tns="http://ttdev.com/bs" elementFormDefault="qualified">    <element name="book">        <complexType>            <sequence>                <element name="isbn" type="string"></element>                <element name="title" type="string"></element>            </sequence>        </complexType>    </element>    <element name="books">        <complexType>            <sequence>                <element ref="tns:book" minOccurs="0" maxOccurs="unbounded"></element>            </sequence>        </complexType>    </element>    <element name="reviews">        <complexType>            <sequence>                <element ref="tns:reviewRef" minOccurs="0" maxOccurs="unbounded"></element>            </sequence>        </complexType>    </element>    <element name="reviewRef">        <complexType>            <sequence>                <element name="summary" type="string"></element>                <element name="url" type="anyURI"></element>            </sequence>        </complexType>    </element>    <element name="review">        <complexType>            <sequence>                <element name="by" type="string"></element>                <element name="text" type="string"></element>            </sequence>        </complexType>    </element></schema>

[XML]代码

<?xml version="1.0" encoding="UTF-8"?><jaxb:bindings xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"    xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="BookService.xsd"    jaxb:version="2.0">    <jaxb:bindings node="/xsd:schema/xsd:element[@name='book']">        <jaxb:class name="BookState"></jaxb:class>    </jaxb:bindings>    <jaxb:bindings node="/xsd:schema/xsd:element[@name='books']">        <jaxb:class name="BooksState"></jaxb:class>    </jaxb:bindings>    <jaxb:bindings node="/xsd:schema/xsd:element[@name='reviews']">        <jaxb:class name="ReviewsState"></jaxb:class>    </jaxb:bindings>    <jaxb:bindings node="/xsd:schema/xsd:element[@name='review']">        <jaxb:class name="ReviewState"></jaxb:class>    </jaxb:bindings></jaxb:bindings><!--上面的2个文件 都是直接从的实验中复制的 呵呵 自行修改吧-->
相关栏目:

用户点评