android客户端通过JSP访问数据库

来源:互联网 发布:linux禅道安装与配置 编辑:程序博客网 时间:2024/04/27 22:08

android客户端通过JSP访问数据库

1.android客户端代码,这里只需把EditText的用户输入的内容获取到,再传入到Login方法就行。这里是做用户名和密码验证。

package com.client.impl;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.HttpStatus;import org.apache.http.client.HttpClient;import org.apache.http.client.methods.HttpPost;import org.apache.http.entity.StringEntity;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.util.EntityUtils;import android.util.Log;public class HttpClientImpl {     public static String Login(String loginName,String passWord){String res = "";try{    //通过请求直接访问jsp,服务器ip:10.0.2.2:8080或是自己服务器的ip地址,两个都行。String httpUrl = "http://10.0.2.2:8080/StudentCard/androidJsp/login.jsp"; HttpPost request = new HttpPost(httpUrl);  request.addHeader("Content-Type", "application/json; charset=utf-8");HttpClient httpClient = new DefaultHttpClient();  String loginParams=loginName+","+passWord;//可以是字符串,也可以是json对象HttpEntity bodyEntity =new StringEntity(loginParams, "UTF8"); request.setEntity(bodyEntity);HttpResponse response; response = httpClient.execute(request);  if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK){ //从响应中获取消息实体String str = EntityUtils.toString(response.getEntity());   res = str;}}catch (Exception e) {System.out.println("http:" + e.getMessage());}return res;}}

2.在login.jsp中处理请求:

<%@ page language="java" contentType="text/xml; charset=UTF-8"pageEncoding="UTF-8"%><%@ page language="java" import="java.util.*"%><%@ page language="java" import="java.lang.*"%><jsp:useBean id="basicDao"class="com.xwd.studentCard.dao.BasicDao_Android" scope="page"></jsp:useBean><%//验证一下访问过来没有System.out.println("android端已经访问进来 ");byte[] bytes = new byte[1024];request.getInputStream().read(bytes);String params = new String(bytes, "utf-8");//因为我传入的是一个字符串,直接把它变成一个数组String[] strArr = params.split(",");//调用DAO的方法进行处理,通过DAO的方法访问数据库,并返回数据String res = basicDao.login(strArr[0], strArr[1]);//把数据写入流响应请求response.getWriter().write(res);%>

3.再通过DAO访问数据库,我是用JDBC实现的,这里代码就省略了。





0 0
原创粉丝点击