废话不多说,直接上代码。

一、服务端

1、使用

连接MySQL数据库,具体配置如下:

在项目根目录下创建配置文件conf.mxl;代码如下:

2、配置mapper的方法,只要实现了数据库的增删查改功能;

select * from login where id=#{id}#

select * from login where name=#{name}#

useGeneratedKeys="true" keyProperty="id">

insert into login(name,password)

values(#{name},#{password})

update login set name=#{name},password=#{password} where id=#{id}

delete from login where id=#{id}

其中UserService.java是方便数据库查询而写的一个增删查改的一个接口

public User selectUserById(int id);//根据id查询用户信息

public List selectUsersByName(String userName);//根据用户名查询用户信息

public void addUser(User user);//插入用户

public void updateUser(User user);//更新用户

public void deleteUser(int id);//删除用户最后就是直接新建servlet,响应客户端,返回json就可以了,下面是Login的servlet:

public class Login extends HttpServlet {

private static final long serialVersionUID = 1L;

private static SqlSessionFactory sqlSessionFactory;

static {

try {

// mybatis的配置文件

String resource = "conf.xml";

// 使用类加载器加载mybatis的配置文件(它也加载关联的映射文件)

InputStream is = Test2.class.getClassLoader().getResourceAsStream(

resource);

// 构建sqlSession的工厂

sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);

} catch (Exception e) {

e.printStackTrace();

}

}

public static SqlSessionFactory getSession() {

return sqlSessionFactory;

}

/**

* @see HttpServlet#HttpServlet()

*/

public Login() {

super();

}

@Override

public void init() throws ServletException {

// TODO Auto-generated method stub

super.init();

}

/**

* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse

* response)

*/

protected void doGet(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

this.doPost(request, response);

}

/**

* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse

* response)

*/

protected void doPost(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

// 设置响应内容类型

response.setContentType("text/html;charset=utf-8");

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

// 实际的逻辑是在这里

PrintWriter out = response.getWriter();

Map map = new HashMap();

JSONObject jsonObject = new JSONObject();

String name = request.getParameter("name");

String password = request.getParameter("password").trim();

if (Login.getUserList(name, password)) {

map.put("message", "成功");

map.put("code", "100");

map.put("name", name);

map.put("password", password);

jsonObject.put("map", map);

out.write(jsonObject.toString());

} else {

map.put("message", "参数错误");

map.put("code", "101");

map.put("name", name);

map.put("password", password);

jsonObject.put("map", map);

out.write(jsonObject.toString());

}

}

@Override

public void destroy() {

super.destroy();

}

public static boolean getUserList(String userName, String password) {

SqlSession session = sqlSessionFactory.openSession();

try {

UserService userService = session.getMapper(UserService.class);

List users = userService.selectUsersByName(userName);

for (User user : users) {

if (user.getPassword().equals(password)) {

return true;

}

}

} finally {

session.close();

}

return false;

}

}

二、客户端就更简单了,

为了方便我直接使用volley请求的,

private void Login() {

String url = "http://192.168.56.1:8080/TestLogin/Login";

StringRequest request = new StringRequest(Request.Method.POST, url, new Response.Listener() {

@Override

public void onResponse(String response) {

Log.e("response", response);

JSONObject jsonObject;

try {

jsonObject = new JSONObject(response);

JSONObject jsonObject1 = jsonObject.getJSONObject("map");

String message = jsonObject1.getString("message");

Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();

} catch (JSONException e) {

e.printStackTrace();

}

}

}, null) {

@Override

protected Map getParams() throws AuthFailureError {

Map map = new HashMap<>();

map.put("name", name.getText().toString());

map.put("password", password.getText().toString().trim());

return map;

}

};

mQueue.add(request);

}我主要实现了注册和登陆这连个功能的,经本人测试,成功;

附上服务器代码:点击打开链接

android MySQL servlet_使用MySQL和Servlet编写Android接口样例相关推荐

  1. android 用swift开发,使用 Swift 语言编写 Android 应用入门

    Swift标准库可以编译安卓armv7的内核,这使得可以在安卓移动设备上执行Swift语句代码.本文解释了如何在你的安卓手机上运行一个简单的"hello,world"程序. 常见问 ...

  2. Android.mk 编译c语言,编写 android.mk 中 LOCAL_C_INCLUDES 的技巧

    编写 android.mk 中 LOCAL_C_INCLUDES 的技巧 在编写android.mk的过程中,免不了要修改LOCAL_C_INCLUDES来设置头文件的include目录, 一般写成这 ...

  3. 百度地图 Android SDK - 检索功能使用的简单演示样例

    百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ...

  4. 安卓APP注册登录+Tomcat服务器搭建+MySQL数据库建立+加密传输+servlet后端内容编写及部署到Tomcat服务器

    认真学习安卓也有三四个月了,现在记录一下关于用户的各种操作. 1.安卓APP的实现: 先看一下展示动图吧! 首先是登录界面的xml---------activity_mian.xml <?xml ...

  5. Android前端通过Http协议与J2EE后端数据交互。工具eclipse、MySQL、Tomcat。通过JoSn获取数据。Android端实现对MySQL增删改查功能。

    Android:目录 HttpThread.java package com.example.saads; import java.io.BufferedReader; import java.io. ...

  6. 最详细Android连接远程的MySQL数据库实例

    最详细Android连接远程的MySQL数据库实例 tags:MySQL 文章目录 最详细Android连接远程的MySQL数据库实例 前言 环境配置 查看MySQL:version方法 新建Andr ...

  7. 大众点评景点美食楼盘点评(Android,AndroidStudio,IDEA,SpringBoot,Mysql)

    今天,我们发布一套[大众点评Android系统], 这套系统包含完整的源代码和数据库脚本,根据我们提供的开发工具和运行视频教程,拿到代码后,很快就能把项目跑起来,同时如果您对项目代码技术不是很熟悉也没 ...

  8. win10 下Android 连接电脑本地MySQL数据库

    1.确认MySQL服务器防火墙关闭,若关闭,则下一步,若未关闭,进行设置 具体方法为 控制面板->系统和安全>Windows Defender 防火墙->高级设置->入站规则 ...

  9. android安装Mysql服务,android手机可以作为mysql的服务器

    资源连接:https://download.csdn.net/download/vlong5461/10413650点击打开链接 1.解压到android手机的目录,如data/data/mysql ...

  10. 在tomcat下配置mysql的数据库连接池及Servlet

    这几天在tomcat下配置mysql的数据库连接池,再使用servlet进行数据访问.碰到不少问题,百度查了不少资料,不是很完整,试了很久,总算调通了.记录下来,供大家参考. Tomcat和MySQL ...

最新文章

  1. 详解 | 自动泊车中鱼眼相机实现车位线感知
  2. 成就解锁:BCH修复了所有常见的第三方交易延展性矢量
  3. vivo自带便签新版_vivo手机笔记在哪里及如何用vivo手机做笔记?
  4. Python 让所有奇数都在偶数前面,而且奇数升序排列,偶数降序排序
  5. Component Configuration.js - 所有支持属性列表 - configuration priority
  6. 如何:带有Thymeleaf和Spring Boot的Java 8日期和时间
  7. java中文处理_Java的中文乱码处理
  8. Java基础--反射
  9. centos7查看进程ps_还在一台台登录网络设备查看日志吗?你太low了
  10. 甘肃电大计算机考试题2007,甘肃电大2021年春季《C++语言程序设计(专)》形成性考核二满分...
  11. Atitit mybatisutil 模块测试功能列表 1.1. mybatis读取mapper配置的sql语句 使用xml类库 1 1.2. Mybatis替换参数工具类型 3 Itfs pn
  12. 机器学习- 吴恩达Andrew Ng Week11 知识总结 Photo OCR
  13. 《Java程序设计基础 第3版》pdf 附下载链接
  14. delphi android 串口通信,Delphi 7:操作串口(ComPort)
  15. 为什么float只有四个字节,存储范围却大于有八个字节的long类型?
  16. 2022届秋招的总结与体会
  17. Centos7 [Errno 14] curl#37 - Couldn't open file /mnt/Packages/repodata/repomd.xml
  18. CSS弹性盒子布局flex
  19. 超级简单的K线合成方法
  20. 微信小程序dialog使用

热门文章

  1. 网络人“时间都去哪儿了”
  2. sqlServer数据库自动备份
  3. MySQL基础与操作
  4. StringJoiner
  5. Android Fragment学习
  6. 10分钟学会spring代理模式以及应用原理,个人专用,不适合借鉴,请关闭文章
  7. php怎么判断文件在下载,php文件下载显示找不到文件怎么办
  8. pythonrequest函数怎么编写出来的_python requests包的request()函数中的参数-params和data的区别简介...
  9. C# Dictionary 的几种遍历方法
  10. win7 ASP.NET 2.0 部署