[Android开发]- MVC的架构实现登录模块-1

本系列博客主要展示一下,在C-S(Client - Server)系统开发当中,如何使用MVC的架构来实现安卓端的一个登录验证的模块。如果你能有基本的数据库开发,WEB开发,和安卓开发的知识,那么理解起来会更加容易一些。

本文主要从下面几点开始:
1. MVC的介绍
2. 必备开发环境
3. 后台 - 数据库的准备


一、MVC的介绍


百度百科上面的定义是这样的:

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

根据上面的定义,我们可以知道MVC就是一种软件设计的典范,能够降低M、V、和C模块之间的耦合性,那如何应用到C-S系统的开发当中呢?请看下图 1:

[Android开发]- MVC的架构实现登录模块-1_第1张图片

从上图,我们可以知道在C-S的系统开发中,客户端(Client)就是充当将服务层提供的数据展示出来的视图(View), 后台服务器主要充当控制器(Control),而数据库中的各种表充当的是模型(Model)。 这样做有很多好处,比如:

  1. 安卓客户端开发和服务器开发可以完全独立进行:客户端告诉服务器需要的信息是哪些,服务器就提供相应的服务把数据通过JSON的方式(或者方法)返回给客户端。这个只要在开发之前确定好该接口文档就没有问题了;

  2. 后台服务扩展起来非常容易,比如在开发过程中服务器已经完成了好友列表的获取,那么在MVC这样的架构之下,要想实现黑名单列表的获取可能只需要在service类中添加一个方法就行了;

到这里,你大概能够明白MVC的是怎样一个东西,在C-S的开发中又是怎样的一个展示。


二、必备开发环境

如下:

  1. Android Studio
    一款基于IntelliJ IDEA的Android集成开发工具,比Eclipse ADT要智能太多;用于安卓客户端的开发。

  2. Eclipse Java EE IDE Mars.1 for Web Developers
    用于服务器端的开发,最好是集成了Tomcat 7.0 服务器;当然,不一定是Eclipse Mars版本,其他能用来开发java web程序的版本都可以,myeclipse也都是大同小异的;

  3. Tomcat 7.0 服务器
    Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。[来自百度]就是用来运行在Eclipse中开发好的web服务程序。
    Eclipse中配置Tomcat服务器可以参考下面的链接:

    • Window操作系统下
    • Mac os X操作系统下
    • Ubuntu (Linux) 操作系统下
  4. MySql 数据库
    主要用来创建数据库。各种版本的Mysql都可以,其它的关系型数据库也没问题,区别在于当服务器对数据库中的数据进行访问的时候采用的链接数据库的驱动jar会不同。在本教程中只展示对Mysql数据的连接。



三、后台-数据库的准备


下面的展示的步骤都是在Max os X系统中的操作,在其他系统当中,只需替换成该操作系统中相应的操作即可

  1. 开启数据库服务,如图 1-2 :
    [Android开发]- MVC的架构实现登录模块-1_第2张图片

  2. 打开终端,连接到本地数据库,如图 1-3:
    [Android开发]- MVC的架构实现登录模块-1_第3张图片

  3. 创建一个独立的数据库TEST1,并且在该数据库当中创建一个包含id(自增),name,password列的表user;并且在这个数据库当中添加一条记录,命令如下,整个过程如图 1-4所示:
    [Android开发]- MVC的架构实现登录模块-1_第4张图片

    create table user (id int primary key auto_increment,name char(30),password varchar(20));
    create database TEST1;
    use TEST1
    insert into user(name,password) values('mvcuser','mvcuser123');
    select * from user;


四、总结


至此,我们已经对MVC有了一定的了解,并且准备好了之后开发当中的数据库和测试数据!

声明:

  1. 联系作者,新浪微博私信 @谷谷_z
  2. 如果在文章当中发现有描述错误的地方,还请您不吝指出,万分感谢!
  3. 此文章系本人原创作品,转发请注明出处!

你可能感兴趣的:(android)