在线问答与学习管理系统(通信)
public void userRegister(String loginName, String loginPassword)
throws Exception {
// Thread.sleep(3000);
HttpClient client = new DefaultHttpClient();
String uri = "http://192.168.1.103:8080/maiji/register.do";
HttpPost post = new HttpPost(uri);
/*
* JSON数据的封装***************************************
*/
JSONObject object = new JSONObject();
object.put("LoginName", loginName);
object.put("LoginPassword", loginPassword);
// JSONArray array = new JSONArray();
// if (interesting != null) {
// for (String string : interesting) {
// array.put(string);
// }
//
// }
// object.put("Interesting", array);
/*****************************************/
NameValuePair parameter = new BasicNameValuePair("Data",
object.toString());
List<NameValuePair> parameters = new ArrayList<NameValuePair>();
parameters.add(parameter);
post.setEntity(new UrlEncodedFormEntity(parameters, HTTP.UTF_8));
HttpResponse response = client.execute(post);
int statusCode = response.getStatusLine().getStatusCode();
if (statusCode != HttpStatus.SC_OK) {
throw new ServiceRulesException(register_activity.MSG_SERVER_ERROR);
}
/*
* 从响应中取得服务器的返回结果
*/
String results = EntityUtils.toString(response.getEntity(), HTTP.UTF_8);
// 解析JSON
JSONObject jsonResults = new JSONObject(results);
String result = jsonResults.getString("result");
if (result.equals("success")) {
// 注册成功
} else {
// 注册失败
String errorMsg = jsonResults.getString("errorMsg");
throw new ServiceRulesException(errorMsg);
}
}
(2)注册部分服务端通信代码:
public class RegisterServlet4AndroidClient extends HttpServlet {
public RegisterServlet4AndroidClient() {
super();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
/*
* Data= {
* "LoginName":"tom"
* "Interesting":["game","sports"]
* }
*/
String data = request.getParameter("Data");
System.out.println(data);
/* json数据的解析|剥离*/
/*
* json-lib解析JSON数据的核心代码
*/
JSONObject object = JSONObject.fromObject(data);
String loginName = object.getString("LoginName");
System.out.println("注册的登录名是:"+loginName);
String loginPassword = object.getString("LoginPassword");
System.out.println("注册的登录密码是:"+loginPassword);
// JSONArray array = object.getJSONArray("Interesting");
// System.out.println("注册的兴趣爱好有:");
// if(array != null){
// for (Object obj : array) {
// System.out.print(obj.toString() +"\t");
// }
// }
// for (int i = 0; i < array.length(); i++) {
//
// }
/*
* 业务处理
*/
request.setCharacterEncoding("gb2312");
response.setContentType("text/heml;charset=gb2312");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
ResultSet rs = null;
Statement stmt = null;
Connection cnn =null;
/*
* 响应:封装json结果
* {
* "result":"success"
* "errorMsg":""
*
* }
* {
* "result":"failed"
* "errorMsg":"服务器处理错误,注册失败"
*
* }
*/
/**
* 返回值
* */
PrintWriter out=null;
try{
String user = "root";
String password = "123456";
out=response.getWriter();
ResultJSONBean jsonBean = new ResultJSONBean();
Class.forName("com.mysql.jdbc.Driver");
System.out.println("成功加载数据库驱动程序");
cnn = DriverManager.getConnection("jdbc:mysql://localhost:3306/androidclent", user, password);
stmt = cnn.createStatement();
rs = stmt.executeQuery("SELECT * FROM cloentregister where emp_name = '"+loginName+"'");
if (rs.next()) {
jsonBean.setResult("failed");
jsonBean.setErrorMsg("登陆名已被使用");
JSONObject obj = JSONObject.fromObject(jsonBean);
System.out.println(obj.toString());
out.print(obj.toString());
}else{
stmt.executeUpdate("INSERT INTO cloentregister(emp_name,emp_passward)VALUES('"+loginName+"','"+loginPassword+"')");
jsonBean.setResult("success");
jsonBean.setErrorMsg("");
JSONObject obj = JSONObject.fromObject(jsonBean);
System.out.println(obj.toString());
out.print(obj.toString());
}
/**************************************************/
// rs = stmt.executeQuery("SELECT * FROM cloentregister");
// while (rs.next()) {
// System.out.println(rs.getString("emp_name"));
//
// }
// jsonbean.setResult("success");
// jsonbean.setErrorMsg("");
}catch(SQLException e){
e.printStackTrace();
}catch(ClassNotFoundException e){
e.printStackTrace();
}finally{
if(out!=null){
out.close();
}
try {
if(rs != null){
rs.close();
rs = null;
}
if(stmt != null){
stmt.close();
stmt = null;
}
if(cnn != null){
cnn.close();
cnn = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}

浙公网安备 33010602011771号