【微信小程序企业级开发教程】后台用Java操作MySQL表
文章目录
- 1 表
- 2 后端
- 2.1 目录
- 2.2 代码
- 3 前端
1 表
2 后端
2.1 目录
2.2 代码
chaun.java
package top.lixiang007.dao;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;import net.sf.json.JSON;
import top.lixiang007.bean.place;
import top.lixiang007.utils.DButils;public class chaxun {public static List<place> chaxun(){Connection conn = null;ResultSet res =null;List<place> palceList = new ArrayList<place>();DButils db = new DButils();try {conn = db.getConnection();String sql = "select * from place";res = db.eSelect(sql);while(res.next()){place place = new place();place.setName(res.getString(1));place.setPosition01(res.getString(2));place.setPosition02(res.getString(3));place.setPosition03(res.getString(4));//palceList.add(place);}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}try {if (conn!=null) {conn.close();System.out.println("连接关闭");}} catch (SQLException e) {e.printStackTrace();}try {if (res!=null) {res.close();System.out.println("结果关闭");}} catch (SQLException e) {e.printStackTrace();}System.out.println(palceList.toString());return palceList;}}
上述代码做了一次查询,并且将查询的每一条结果存储到palceList中。
每一个palceList中是一个place对象。
DButils.java
package top.lixiang007.utils;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class DButils {private static String dbDriver = "com.mysql.jdbc.Driver";private static String serverName = "localhost";private static String port = "3306";private static String dbName = "wx";private static String connURL = "jdbc:mysql://" + serverName + ":" + port + "/" + dbName;private static String user1 = "root";private static String password = "lixiang666";private static Connection conn=null;private ResultSet res=null;public static Connection getConnection() {try {Class.forName(dbDriver); //conn = DriverManager.getConnection(connURL,user1, password);System.out.println("数据库连接成功");} catch (SQLException ex) {ex.printStackTrace();} catch (ClassNotFoundException ex) {ex.printStackTrace();}return conn;}// 查询public ResultSet eSelect(String sql) {try {Statement stmt=conn.createStatement();res = stmt.executeQuery(sql);} catch (SQLException e) {e.printStackTrace();}return res;}//插入数据public void insert(String name,String position01,String position02,String position03) throws SQLException {try {conn =getConnection();String sql = "insert into place(name,position01,position02,position03) values"+ "('" +name+"','"+position01+"','"+position02+"','"+position03+"')";Statement stmt=conn.createStatement();stmt.executeUpdate(sql);} catch (SQLException e) {e.printStackTrace();}finally {conn.close();}}}
提供数据库连接方法、查询和插入方法。
server.java
package top.lixiang007.server;
/*** 转化成json字符串*/import java.util.List;import net.sf.json.JSONArray;
import top.lixiang007.bean.place;
import top.lixiang007.dao.chaxun;public class server {public String json() {JSONArray js = new JSONArray();List<place> list = chaxun.chaxun();System.out.println(list);js = JSONArray.fromObject(list);String json = js.toString();return json;}}
调用插入
package top.lixiang007.servlet;import top.lixiang007.utils.DButils;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.SQLException;@WebServlet("/servlet02")
public class servlet02 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");response.setContentType("text/html");request.setCharacterEncoding("utf-8");//这里是设置一下编码格式//获取数据存入数据库DButils db = new DButils();String name = request.getParameter("name");String position01 = request.getParameter("address01");String position02 = request.getParameter("address02");String position03 = request.getParameter("address03");try {db.insert( name, position01, position02, position03);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}
//http://localhost:8080/wx_background_war_exploded/servlet02?name=wxq&address01=1&address02=1&address03=3protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request, response);}
}
调用查询
package top.lixiang007.servlet;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;import sun.lwawt.macosx.CSystemTray;
import top.lixiang007.server.*;@WebServlet("/servlet01")
public class servlet01 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");response.setContentType("text/html");request.setCharacterEncoding("utf-8");//这里是设置一下编码格式server s = new server();String jsList = s.json();System.out.println(jsList);response.getWriter().print(jsList);// String id = request.getParameter("lx");// System.out.println(id);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request, response);}
}
3 前端
// pages/sqltest.js
Page({/*** 页面的初始数据*/data: {UserList:null,},/*** 生命周期函数--监听页面加载*/onLoad: function (options) {},/*** 生命周期函数--监听页面初次渲染完成*/onReady: function () {},/*** 生命周期函数--监听页面显示*/onShow: function () {},/*** 生命周期函数--监听页面隐藏*/onHide: function () {},/*** 生命周期函数--监听页面卸载*/onUnload: function () {},/*** 页面相关事件处理函数--监听用户下拉动作*/onPullDownRefresh: function () {},/*** 页面上拉触底事件的处理函数*/onReachBottom: function () {},/*** 用户点击右上角分享*/onShareAppMessage: function () {},click:function(){var that=thiswx.request({url: 'http://localhost:8080/wx_background_war_exploded/servlet01', //仅为示例,并非真实的接口地址data: {},header: {'content-type': 'application/json' // 默认值},success (res) {console.log(res.data)that.setData({UserList:res.data})}})}
})
<!--pages/sqltest.wxml-->
<text>pages/sqltest.wxml</text>
<button type="primary" plain="true" bindtap="click">按钮</button>
<view wx:for="{{UserList}}" wx:key="UserList"><view>{{item.id}}</view><view>{{item.name}}</view><view>{{item.position01}}</view>
</view>
【微信小程序企业级开发教程】后台用Java操作MySQL表相关推荐
- 【微信小程序企业级开发教程】前台收集数据更新数据库表方法
文章目录 这是一个没有目录只有代码的文章哦 感觉大家都能理解代码 就不仔细描述了 前台 后台 这是一个没有目录只有代码的文章哦 感觉大家都能理解代码 就不仔细描述了 前台 <!--pages/l ...
- 【微信小程序企业级开发教程】界面刷新获取新更新数据
在微信小程序开发的过程中,在一个页面中对数据操作之后我们大多数时间都需要刷新一下当前界面以把操作之后的结果显示出来,但是如何在执行操作后进行本页面的刷新就成了一个问题很大但是很需要的操作.下面介绍一下 ...
- 【微信小程序企业级开发教程】订阅消息功能
文章目录 1 功能介绍 2 使用说明 1 功能介绍 消息能力是小程序能力中的重要组成,我们为开发者提供了订阅消息能力,以便实现服务的闭环和更优的体验. 订阅消息推送位置:服务通知 订阅消息下发条件:用 ...
- 【微信小程序企业级开发教程】微信小程序目录结构
文章目录 1 项目路径下的文件: 2 pages/index 文件夹下: 3 pages/logs 文件夹下: 4 utils 文件夹下 5 总结 1 项目路径下的文件: app.js : 小程序逻辑 ...
- 【微信小程序企业级开发教程】小程序的配置详解
文章目录 1 开发文档 2 页面配置 3 全局配置 1 开发文档 https://developers.weixin.qq.com/miniprogram/dev/reference/configur ...
- 【微信小程序企业级开发教程】如何搭建服务器(tomcat)后台
文章目录 1 条件 2 步骤 2.1 获取AppID 2.2 服务器.域名(需备案).ssl证书(可免费申请) 2.3 域名备案 2.4 SSL证书(申请与安装配置) 3 微信公众平台中配置域名信息 ...
- 【微信小程序企业级开发教程】快递查询实例
//index.js //获取应用实例 const app = getApp()Page({data: {motto: 'Hello World',userInfo: {},hasUserInfo: ...
- 【微信小程序企业级开发教程】事件相关详解
文章目录 1 事件类别 2 事件绑定 3 事件对象 1 事件类别 冒泡事件和非冒泡事件 为什么会有target和currentTarget之分呢,这是由于事件分为两类,冒泡事件和非冒泡事件 冒泡事件: ...
- 【微信小程序企业级开发教程】界面跳转方法总结
文章目录 1 wx.navigateTo(OBJECT) 2 wx.redirectTo(OBJECT) 3 wx.switchTab(OBJECT) 从跳转的方式(或说成打开新页面的方式)来说大致可 ...
最新文章
- Spring中启用Hibernate二级缓存步骤
- python查看目录下的文件_Python——查看目录下所有的目录和文件
- 系统权限管理设计 (转:http://blog.csdn.net/chexlong/article/details/37697555)
- nginx安装及编译参数详解
- SpringData核心数据访问接口--PagingAndSortingRepository
- python程序如何封装成接口_python接口自动化如何封装获取常量的类
- html霓虹灯效果图,HTML5 SVG+CSS3霓虹灯文字边框动画特效
- python变量命名可以有特殊符号吗,和孩子一起学习python之变量命名规则
- 无法使用集合初始化_Java集合类解析之Hashtable
- Knockout事件传递参数的几种方式
- 华为隐藏功能扩大内存代码大全_发现将华为手机这3个功能打开,竟然可以将手机性能极限发挥...
- “搞机器学习没前途”
- 碰撞与鲜血:人类与自动驾驶的坎坷摩擦
- nginx+thinkphp下解决不支持pathinfo模式以及存在的各种404,500问题
- 『TensorFlow』读书笔记_TFRecord学习
- Office转换pdf(oppenOffice和jacob两种)
- [Python]利用python+ffmpeg合并B站视频及格式转换
- 锐捷校园网:小米mini路由刷Padavan固件实现wifi上网
- OpenCV3.1.0安装在ubuntu16.40(Linux)步骤(电赛AM5708板子可用)
- Failed to create/setup connection: This driver is not configured for integrated authentication
热门文章
- Object arrays cannot be loaded when allow_pickle=False
- module 'tensorflow' has no attribute 'Session'
- win10 CUDA9.0安装失败
- OutOfRangeError closed and has insufficient elements (requested 512, current size 362)
- linux怎么和宿主机同步时间,Linux 中设置和同步时间
- 文件服务器在哪里靠谱,vps作为文件服务器靠谱吗
- idea创建一个html5,idea创建一个SpringBoot项目
- 计算机联锁站按钮继电器电路,计算机联锁系统与站内各种电路结合说明.DOC
- java连接weblogic_java学习:weblogic下JNDI及JDBC连接测试(weblogic环境)
- keycloak mysql_Keycloak换mysql存储详细步骤