去实习的时候,听中软国际老师讲的,由于是初学,很多都不懂,只是死记下来。
创建RegActivity
客户端建立:
View Code
1 HttpURL url =new HttpURL();
2 // url地址
3 String requestUrl ="http://10.0.2.2:8080/web/servlet/RegServlet";
4
5 // 参数,跟数据库传入数据结合,蓝色字相当于哈希表索引,可以随便定义,无实际意义,但要和客户端接口实现相同命名
6 Map<String, String> requestParams =new HashMap<String, String>();
7 requestParams.put("userName", loginName);
8 requestParams.put("userPass", pass);
9 requestParams.put("sex", sex);
10 requestParams.put("city", ct);
11 requestParams.put("job", job);
12 requestParams.put("marry", ma);
13 requestParams.put("love", love);
14 // 获取登录用户信息,定死的
15 InputStream ins = url.getHttpCon(requestUrl, requestParams);
16 XStream xStream =new XStream();
17 UserInfo user = (UserInfo)xStream.fromXML(ins);
url中”servlet/RegServlet”为获得的,
客户端上网条件设置:
在相同界面添加Activity页面注册:(最标准的情况应该在创建RegActivity时,同时创建)
在服务器和客户端分别建立相同的包,并在包下建立相同的接口类,
工程下建立已经封装好的HttpURL,
服务器下建立与RegActivity相应的RegServlet连接。
View Code
1 publicvoid doPost(HttpServletRequest request, HttpServletResponse response)
2 throws ServletException, IOException {
3
4 request.setCharacterEncoding("UTF-8");
5 //账号
6 String username = request.getParameter("userName");
7 //密码
8 String userpass = request.getParameter("userPass");
9 String sex = request.getParameter("sex");
10 String city = request.getParameter("city");
11 String job = request.getParameter("job");
12 String marrage = request.getParameter("marry");
13 String love = request.getParameter("love");
14
15 //数据访问
16 UserInfoDAO dao =new UserInfoDAO();
17 //创建user
18 UserInfo userInfo =new UserInfo();
19 userInfo.setUserName(username);
20 userInfo.setUserPass(userpass);
21 userInfo.setSex(sex);
22 userInfo.setCity(city);
23 userInfo.setJob(job);
24 userInfo.setMarry(marrage);
25 userInfo.setLove(love);
26
27 UserInfo user = dao.add(userInfo);
28 UserInfo user1 = dao.reId(user);
29
30 //生成xml
31 XStream xStream =new XStream();
32 System.out.println(xStream.toXML(user1));
33
34 PrintWriter out = response.getWriter();
35 out.print(xStream.toXML(user1));
36 out.flush();
37 out.close();
38 }
上图与数据库交互的Dao类也要相应的建立。
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
还要先提交到服务器,在将服务器发布。
此时运行客户端即可。
常见问题:
1. 数据库已经可以显示,但输入信息不全:客户和服务器哈希表索引不一致。
2. LogCat进行调试,控制台调试,System.out.println();,Toast调试
3. 注意客户端上网允许条件。
4.三个支持文件要对客户端,服务器同时导入。
导入方法:工程下建一个lib文件夹,在上图位置进行导入。
原理:通过Activity中的网址进行定位,通过http将数据按统一格式进行发送,并没有具体的实现调用跳转的函数,返回时也是通过固定定死的格式进行。