基于Java SSM开发的校园二手商城微信小程序源码

软件功能及核心代码

4.1.1 用户登录注册 

首先是在用户进入平台时获取用户微信昵称,保存作为用户名。至于用户ID,是通过java中的UUID方法随机分配一唯一值。最后将这两项必填信息写入数据库完成注册

核心代码如下:

(1)获取用户微信昵称

// 登录

letthat =this

wx.login({

success:res=>{

// 发送 res.code 到后台换取 openId, sessionKey, unionId

    },

})

// 获取用户信息

wx.getSetting({

success:res=>{

if(res.authSetting['scope.userInfo']) {

// 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框

wx.getUserInfo({

success:res=>{

// 可以将 res 发送给后台解码出 unionId

that.globalData.userInfo = res.userInfo//获取用户基本信息并保存为全局变量

that.globalData.userName = res.userInfo.nickName//获取用户微信昵称并保存为全局变量

(2)UUID方法随机分配一唯一值

//获取UUID生成的32位数的前8位作为用户ID

Stringuid = UUID.randomUUID().toString().substring(0,8);

4.1.2 商品分类导航

商品总共有4中分类,系统为每种分类分配一ID值,内容栏将会根据不同ID值显示不同类型的商品。

核心代码如下:

//商品类别标签切换事件

switchTab:function(e){

letid = e.currentTarget.dataset.id//获取前端商品类别的ID值

lettype//定义商品类别变量

letnum =0//定义保存商品类别的数组初始下标

claArray = []//定义保存商品类别数组的临时变量

varthat =this

this.setData({

curNavId: id,//给前端商品类别赋值

})

//通过id分类List页面内容

switch(id){

case1:

type="推荐"

break;

case2:

type="学习"

break;

case3:

type="运动"

break;

case4:

type="生活"

break;

case5:

type="智能"

break;

}

if(GoodContent.length >0){

for(leti =0; i < GoodContent.length; i++) {

letcontent = GoodContent[i]

if(content.GoodType ==type||type=="推荐") {//content.GoodType很关键

            claArray[num++] = content

        }

}

this.setData({

    listContent: claArray

})

4.1.3 热门商品展示

热门商品展示主要是本系统会根据商城各商品的点击浏览量,自动推荐浏览量最高的前5款商品展示在主页。

核心代码如下:

//连接数据库获取商品信息

wx.request({

url:'http://localhost:8080/Ajax-Servlet-Test1/StoreMsg',//服务器地址

data: {

xx:'selectAll',

},

header: {

'Content-Type':'application/json'

},

success:function(res){

that.globalData.GoodMessage = res.data//将获取的数据保存在GoodMessage 全局变量

    }

})

varurlList =newArray()//定义保存热门商品图片Url地址的数组

for(leti =0; i <5; i++) {

urlList[i] = app.globalData.GoodMessage[i].GoodImgUrl

}

4.1.4 模糊搜索商品

  模糊搜索商品主要是根据用户输入的关键字进行检索,用户输入商品信息关键字,与已发布的商品信息进行匹配,搜索到符合要求的商品

核心代码如下:

//获取服务器数据

getdata:function(){

letthat =this

    wx.request({

url:'http://localhost:8080/Ajax-Servlet-Test1/inputMsg',

data: {

xx:'select',

//用户输入的关键字

yy: that.data.inputValue

    },

header: {

'Content-Type':'application/json'

    },

success:function(res){

        that.setData({

//将服务器返回的匹配信息保存

list:res.data

        })

}

})

},

//服务器端与数据库进行交互

if(str.equals(goodName)){

Stringsql ="SELECT * From good WHERE GoodTitle LIKE '%"+goodName+"'%";

PreparedStatement prep =null;

try{

        prep = (PreparedStatement) connection.prepareStatement(sql);


        ResultSet result = prep.executeQuery();

while(result.next()){

Good good =newGood();

StringGoodTitle = result.getString("GoodTitle");

            good.setUserName(GoodTitle);

            goodList.add(good);

        }

}catch(SQLException e) {

        e.printStackTrace();

    }

}

Gson gson =newGson();

Stringgoods = gson.toJson(goodList);

write.write(goods);

4.1.5 发布商品 

有效用户在发布商品信息时,填写商品名称、商品图片、商品类别、商品介绍、联系人ID、联系人姓名等信息,然后通过request访问服务器将数据写进数据库。

核心代码如下:

(1)获取本地图片,并将图片临时地址保存在数据库

//上传图片

bindSendImage:function(res){

letthat =this

    wx.chooseImage({

count:1,//定义本地选择图片时只能选择一张

sizeType:['original','compressed'],//定义选择的图片可以被压缩

sourceType:['album','camera'],//图片既可以从相册中选择也可以拍照获取

success:function(res){

        that.setData({

imgUrl:res.tempFilePaths[0]//获取本地图片url地址

    })

4.1.6 商品收藏

用户在进入商品的详细信息界面时,如果喜欢该物品但是又不想立刻购买的话,可以收藏该物品,收藏好的商品也可以点击取消。

核心代码如下:

//收藏事件

switchSC:function(id){

letthat =this

letuserId = app.globalData.userId//获取登录用户ID

switch(id){

case0:

this.setData({

shoucang:"收藏"

            })

//连接数据库删除用户收藏信息

            wx.request({

url:'http://localhost:8080/Ajax-Servlet-Test1/StoreMsg',

data: {

xx:'deleteSC',

//用户ID

yy: userId,

//商品ID

zz: that.data.GoodId,

//店家ID

ss: that.data.DjId

                },

header: {

'Content-Type':'application/json'

                },

success:function(res){

console.log("删除成功")

                }

            })

break;

case1:

this.setData({

shoucang:"收藏成功"

            })

//连接数据库添加用户收藏信息

            wx.request({

url:'http://localhost:8080/Ajax-Servlet-Test1/StoreMsg',

data: {

xx:'insertSC',

//用户ID

yy: userId,

//商品ID

zz: that.data.GoodId,

//店家ID

ss: that.data.DjId

                },

header: {

'Content-Type':'application/json'

                },

success:function(res){

console.log("收藏成功")

                }

            })

break;

}

}

案例展示


你可能感兴趣的:(基于Java SSM开发的校园二手商城微信小程序源码)