Android客户端、服务端、数据库开发流程及需要环境
来源:互联网 发布:fc2新域名 编辑:程序博客网 时间:2024/03/28 18:31
一、Android客户端、服务端、数据库开发所需要环境
1.JDK8+
2.Android studio
3.eclipse
4.mysql
5.tomcat
二、Android客户端、服务端、数据库开发完整流程
1.用AS开发客户端,并定义链接,目前流行传输格式为JSon
2.用eclipse开发服务端,并以JSon格式为传输格式
3.在mysql服务器中建立table
4.客户端和服务端的网络链路要保证畅通
5.将服务端程序部署到192.168.1.102
6.将客户端程序安装到移动端
三、举例说明及关键代码
1.客户端
定义服务链接方式: public String serverUrl = "http://192.168.1.102:8080/androidWeb/servlet/loadMessage";
用户登录、验证密码并取得相关信息的逻辑编码说明如下
传输参数:
HttpClient client = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(serverUrl);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("username", username));
params.add(new BasicNameValuePair("password", password));
调用服务并得到返回
httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
httpResponse = client.execute(httpPost);
if(httpResponse.getStatusLine().getStatusCode() == 200) {
HttpEntity entity = httpResponse.getEntity();
String entityString = EntityUtils.toString(entity);
String jsonString = entityString.substring(entityString.indexOf("{"));
JSONObject json = new JSONObject(jsonString);
sendMessage(MSG_LOGIN_RESULT, json);
2.服务端
A.web.xml的定义例子:
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>loadMessage</servlet-name>
<servlet-class>com.test.servlet.loadMessage</servlet-class>
</servlet>
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>NewAccount</servlet-name>
<servlet-class>com.test.servlet.NewAccount</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loadMessage</servlet-name>
<url-pattern>/servlet/loadMessage</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>NewAccount</servlet-name>
<url-pattern>/servlet/NewAccount</url-pattern>
</servlet-mapping>
B.DB 链接方法
Class.forName("com.mysql.jdbc.Driver");
connection = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8", "root", "123456
C.接口
HashMap<String, Object> resultMap = new HashMap<String, Object>();
String sql = "select * from " + DBManager.TABLE_NAME + " where " + DBManager.COLUMN_USERNAME + " = " + "'" + username + "'" ;
System.out.println("url = " + sql);
DBManager db = new DBManager();
ResultSet rst = db.query(sql);
try {
rst.next();
String pwd = rst.getString(DBManager.COLUMN_PASSWORD);
if(!password.equals(pwd)) {
resultMap.put("result_code", 1);
} else {
resultMap.put("result_code", 0);
resultMap.put(DBManager.COLUMN_USERNAME, rst.getString(DBManager.COLUMN_USERNAME));
resultMap.put(DBManager.COLUMN_GENDER, rst.getString(DBManager.COLUMN_GENDER));
resultMap.put(DBManager.COLUMN_AGE, rst.getInt(DBManager.COLUMN_AGE));
resultMap.put(DBManager.COLUMN_PHONE, rst.getString(DBManager.COLUMN_PHONE));
resultMap.put(DBManager.COLUMN_EMAIL, rst.getString(DBManager.COLUMN_EMAIL));
}
} catch (SQLException e) {
resultMap.put("result_code", 2);
e.printStackTrace();
}
return (new Gson()).toJson(resultMap);
3.DB
A.创建库表
create table login_info (
username varchar(80) not null,
password varchar (20),
gender varchar (10),
age int,
phone varchar (20),
email varchar (50),
primary key (username)
)
B.产生一条可登录的数据(当然也可以从客户端注册来产生数据)
insert login_info values("admin","admin","nan",20,"12345678901","abc@abc.com")
四、测试结果
- Android客户端、服务端、数据库开发流程及需要环境
- Android开发需要的软件及环境
- Axis2开发WebService服务端及客户端
- 应用Python开发WebService服务端及客户端
- webservice结合CXF服务端及客户端开发
- Android studio下NDK开发环境配置及开发流程
- 服务端&客户端QA:协作&对接沟通流程及优化
- android客户端与pc服务端开发
- 在线支付开发流程总结<包括客户端与服务端>
- android开发环境需要的软件及注意事项
- 开发android服务端的开发环境配置
- android NDK/JNI环境配置及实例开发流程
- svn客户端及服务端
- 服务端与客户端交互流程
- 客户端与服务端交互流程
- Android开发环境搭建流程
- 开发android客户端需要注意的事项
- android服务端与客户端
- Linux文件IO(文件的读写)
- React学习之扩展LinkedStateMixin双向绑定(三十五)
- Windows处理器调度机制
- CF
- JSP之jsp内置标签
- Android客户端、服务端、数据库开发流程及需要环境
- MAC ssh remote control
- B树/B+树
- Spring Cloud简单介绍
- CF
- spring 报错:.NoSuchBeanDefinitionException
- 图、图的遍历、DFS生成树、BFS生成树
- 小萨的烦恼(代理解,待改进。。。)
- 设计模式之单例模式