《微信小程序》微信小程序用java后台连接数据库进行操作。

article/2025/10/23 5:17:12

微信小程序与Java后台的通信

一、写在前面

最近接触了小程序的开发,后端选择Java,因为小程序的代码运行在腾讯的服务器上,而我们自己编写的Java代码运行在我们自己部署的服务器上,所以一开始不是很明白小程序如何与后台进行通信的,然后查找资料发现结合了官方提供的api后好像和我们普通的web前后端通信也没有多大的区别,有想法后就写了这个测试程序。

二、API文档

wx.request(OBJECT)

发起网络请求。使用前请先阅读说明。

OBJECT参数说明:

参数名类型必填默认值说明
urlString 开发者服务器接口地址
dataObject/String 请求的参数
headerObject 设置请求的 header,header 中不能设置 Referer。
methodStringGET(需大写)有效值:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
dataTypeStringjson如果设为json,会尝试对返回的数据做一次 JSON.parse
successFunction 收到开发者服务成功返回的回调函数
failFunction 接口调用失败的回调函数
completeFunction 接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明:

参数类型说明最低版本
dataObject/String开发者服务器返回的数据 
statusCodeNumber开发者服务器返回的 HTTP 状态码 
headerObject开发者服务器返回的 HTTP Response Header1.2.0

data 数据说明:

最终发送给服务器的数据是 String 类型,如果传入的 data 不是 String 类型,会被转换成 String 。转换规则如下:

  • 对于 header['content-type'] 为 application/json 的数据,会对数据进行 JSON 序列化
  • 对于 header['content-type'] 为 application/x-www-form-urlencoded 的数据,会将数据转换成 query string (encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...)

示例代码

复制代码

wx.request({url: 'test.php', //仅为示例,并非真实的接口地址data: {x: '' ,y: ''},header: {'content-type': 'application/json' // 默认值},success: function(res) {console.log(res.data)}
})

复制代码

三、基本思路

将数据通过get方式传到Java servlet类,servlet得到微信小程序的数据打印出来并返回一个数据给微信小程序,从而实现一个最简单的前后端通信。

四、关键代码

微信小程序代码

index.wxml

  <view><button bindtap='bindtest'>test</button></view>

index.js

复制代码

  bindtest: function(){wx.request({url: 'http://localhost:8080/Demo01/servlet02',data:{username:'001',password:'abc'},method:'GET',header: {'content-type': 'application/json' // 默认值},success:function(res){console.log(res.data);},fail:function(res){console.log(".....fail.....");}})},

复制代码

Java serlvet类代码

复制代码

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubresponse.setContentType("text/html;charset=utf-8");          /* 设置响应头允许ajax跨域访问 */  response.setHeader("Access-Control-Allow-Origin", "*");  /* 星号表示所有的异域请求都可以接受, */  response.setHeader("Access-Control-Allow-Methods", "GET,POST");  //获取微信小程序get的参数值并打印String username = request.getParameter("username");String password = request.getParameter("password");System.out.println("username="+username+" ,password="+password);//返回值给微信小程序Writer out = response.getWriter(); out.write("进入后台了");out.flush();   }

复制代码

五、效果演示

前端控制台

ecplise控制台

至此说明微信小程序与Java后台通信成功!当然这是最简单的通信,比较复杂的是需要对Json数据的处理,以后有时间再总结下。


http://chatgpt.dhexx.cn/article/ERperMwZ.shtml

相关文章

小程序连接数据库

一、配置mysql 数据库连接参数 打开 server下面的config.js user  默认都是 root db   为连接是数据库名 pass  默认为小程序APPID 注意这里有个坑&#xff1a;host开发环境下要填localhost&#xff0c;不要填分配给你的域名&#xff0c;我就手贱的修改了这里&#xff…

微信小程序通过 node 连接 mysql——方法,简要原理,及一些常见问题

前言 博主自己在22年夏天根据课程要求做了一个小程序连接阿里云服务器的案例&#xff0c;在最近又碰到了相应的需求。 原参考文章&#xff1a;微信小程序 Node连接本地MYSQL_微信小程序nodejs连接数据库_JJJenny0607的博客-CSDN博客 ,还请多多支持原作者&#xff01; 第二次…

php脚本连接mysql,微信小程序连接数据库。

最近我在做一个微信小程序&#xff0c;其中有一个页面&#xff0c;页面里面需要连接我的后台数据库&#xff0c;把用户数据传递到我的MySQL数据库中。 最初&#xff0c;我在网上找了很多东西&#xff0c;发现并没有一个特别详细明确的教程&#xff0c;其中大多数都只是把他的代…

matlab画图标签,Matlab绘图

要使用plot函数来绘制图形,需要执行以下步骤: 通过指定要绘制函数的变量x的值的范围来定义x。 定义函数,y = f(x) 调用plot命令,如下:plot(x,y) 以下示例将演示该概念。下面绘制x的值范围是从0到100,使用简单函数y = x,增量值为5。 创建脚本文件并键入以下代码 - x = […

MATLAB入门与作图

MATLAB 一、变量与函数 1、变量 &#xff08;1&#xff09;变量名区分大小写 &#xff08;2&#xff09;变量名必须以字母开头&#xff0c;之后可以是任意字母、数字或下划线&#xff0c;不允许使用标点符号。 2、特殊变量 ​ pi 圆周率 3、标点符号 ​ 1、每条命令&am…

JAVA实现聊天室(局域网)

JAVA用局域网实现聊天室 类和接口 Server类&#xff08;服务器端&#xff09; package Test;import java.io.IOException; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket;public class Server {private static final int SERVER_PORT30…

Java在线聊天室课程设计(嘉然UI界面)

文章目录 一、前言 &#x1f606;二、效果展示图 &#x1f9d0;1、服务器界面2、客户端登录界面3、聊天界面 三、客户端Client &#x1f642;1、LoginFrame类2、ClientHandler类3、ChatFrame类 四、服务器端Server &#x1f643;1、ServerFrame类2、ServerInfoPanel类3、Online…

java聊天室源代码(练习项目)

聊天室界面如下&#xff1a; 聊天室源代码链接 一、服务端&#xff1a; 窗体&#xff1a; package sonyi.server;import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import jav…

Java—简易聊天室

Java—聊天室的实现 在学习了IO流&#xff0c;多线程以及网络编程的知识之后&#xff0c;我们可以利用所学到的知识做一个小项目&#xff0c;这里我做了一个多人聊天室&#xff0c;实现了群聊和私聊功能&#xff0c;看完分享之后也可以自己去做一个练练手。 首先是整个项目的…

java聊天室(实训项目)

这里是我们实训的一个关于java聊天室的项目&#xff0c;有需要的同学可以看看&#xff0c;私聊功能未完善。 话不多说&#xff0c;直接上代码。 服务器&#xff1a; package ChatRoom;import java.awt.Color; import java.awt.Component; import java.awt.EventQueue; impor…

Java实现简易聊天室

Java实现简易聊天室 在学习《Java从入门到精通》这本书&#xff0c;网络通信&#xff0c;基于TCP实现的简易聊天室&#xff0c;我这里对书中的代码略做了修改&#xff0c;做个记录。 这里先放一下运行效果图&#xff0c;代码放在最后。 运行效果&#xff1a; 先启动服务器端&am…

javaWeb实现聊天室(私聊+群聊)

写在前面 近几天&#xff0c;迎来了第一个小项目&#xff0c;不做不知道&#xff0c;一做吓一跳。好多知识都掌握的不够扎实&#xff0c;看似会了&#xff0c;但其实似懂非懂&#xff0c;不能真正掌握原理&#xff0c;导致使用起来错误百出。而且深深体会到&#xff0c;知识只有…

java实现聊天室(GUI界面+私聊+群聊)

登录界面的用户名和端口号不能重复&#xff01; 登录界面的用户名和端口号不能重复&#xff01; 登录界面的用户名和端口号不能重复&#xff01; java的socket编写的聊天室&#xff0c;GUI的界面&#xff0c;可以私聊和群聊&#xff0c; 聊天信息保存为txt 有需要的可以自行下…

用Java代码实现一个简单的聊天室功能

一.客户端的创建 1.我们可以用Socket来创建客户端 /***类名 Client*描述 TODO 客户端 1*版本 1.0*创建人 XuKang*创建时间 2020/9/24 16:18**/ public class Client {public static void main(String[] args) throws UnknownHostException, IOException {System.out.println(…

Java在线聊天室(客户端+服务器)

Java在线聊天室&#xff08;客户端服务器&#xff09;基于webSocket实现模拟在线聊天系统 运行环境&#xff1a; JDK1.8version 开发环境&#xff1a;Eclipse 一、结构 以下是系统主要结构&#xff1a; 1.用户&#xff08;均实现部分可能会有bug&#xff09; &#xff08;…

apiDay09整理笔记(笔记优化)

目录 1.聊天室&#xff08;续&#xff09; &#xff08;1&#xff09;实现服务端发送消息给客户端 &#xff08;2&#xff09;服务端转发消息给所有客户端 &#xff08;3&#xff09;客户端解决收发消息的冲突问题 &#xff08;4&#xff09;服务端完成处理客户端断开连接…

JAVA简单聊天室的实现

目录 界面效果图 一、聊天室功能介绍&#xff1f; 二、功能代码 1.服务端 2.客户端 界面效果图 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、聊天室功能介绍&#xff1f; 1. 、对于聊天室就是处理多个客户端发送的请求与信息&#xff0c;从…

Java网络聊天室---个人博客

Java网络聊天室 ———个人博客 一、项目简介 功能描述&#xff1a; 使用图形用户界面和socket通信&#xff0c;能实现一个聊天室中多人聊天&#xff0c;可以两人私聊&#xff0c;可以发送文件。 实现类似QQ用户注册、登录、聊天等功能。 参考git地址或博客地址&#xff1a…

Java实现ChatRoom

基于连接通信Socket、多线程的Java聊天室 1、开发环境&#xff1a; IDEA2018.1JDK1.8 2、实现功能&#xff1a; 实现了模拟登录注册、群聊、私聊、显示当前在线人数列表&#xff1b; 在发送信息时&#xff0c;会向对方发送者及显示发送时间&#xff1b; 显示在线人数列表…

Java聊天室

项目介绍&#xff1a; Java聊天室是期末设计&#xff0c; 阿里巴巴druidmysql多线程GUImvn项目java Socket 服务端模块&#xff1a;踢出聊天室&#xff1a;管理员可以踢出发言不当的用户。只有当开启服务端的时候&#xff0c;客户端才能起到作用。 客户端模块&#xff1a; 注册…