Android客户端是如何与服务端的数据进行交互的呢?
一般就是客户端向服务端发送请求,服务端对数据进行相关处理,返回json数据返回给客户端,客户端再进行相关操作。
说明:主要是用登录功能来进行详解
一、服务端
1、新建maven项目,新建完项目之后,会报错,需要要改一些修改相关配置文件,过程就不详解了。
2、建立相关的包,通过mybatis-generator-gui工具生成po,dao,mapping文件
3、在dao(mapper),service,service实现类中写相关的方法,mapping中写相关的SQL语句。
Controller层写登录的方法,主要是通过账号和密码进行登录,判断客户端传过来的数据不为空,根据账号查询账户信息,将查询出来的对象保存到session中,登录成功后利用Gson返回json数据,如下:
@Controller
@RequestMapping("/app/manager")
public class AppManagerController {
private final String SESSION_MANAGER = "sessionManager";
private Gson gson=new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
//注入service层
@Autowired
IShopManagerService shopManagerService;
/**
* 密码登录
* @param phone 手机号
* @param password 密码
* @return
*/
@ResponseBody
@RequestMapping(value="/loginByPassword",produces = "application/json;charset=UTF-8")
public Object loginByPassword(String phone,String password) {
JsonReturn jsonReturn=new JsonReturn();
if(Tools.isNotNull(phone) && Tools.isNotNull(password)) {
ShopManagerVomanagerVo=this.shopManagerService.findManagerVoByPhone(phone);
if(managerVo!=null) {
HttpSession session=request.getSession();
if(password.equals(managerVo.getPassword().trim())) {
//登录成功
//将managerVo放入session
session.setAttribute(SESSION_MANAGER, managerVo);
jsonReturn.setCode(200);
jsonReturn.setText("登录成功");