一个基于Android 的绿色交易系统数据库App的设计与实现
作者: 郑瑛摘要:文章介绍了一个基于Android的绿色交易系统数据库App的设计。该系统由Android前端界面、Spring Boot框架服务端和MySQL数据库共同组成。设计选用了idea和Android Studio作为主要开发工具,旨在为用户提供一个便捷、实用的绿色交易系统数据库,使用户可以通过移动App在各种场合查询和进行绿色交易。
关键词:绿色交易系统;数据库设计;App
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2024)23-0078-04
开放科学(资源服务)标识码(OSID)
随着全球对可持续发展的关注日益增加,绿色交易逐渐成为经济活动中的重要组成部分,并从传统的线下操作逐渐向“线上+线下”转型。对于用户来说,通过智能手机进行线上交易比仅依赖PC端操作更加方便。一方面,用户可以随时随地通过手机浏览和购买与环保、清洁能源、低碳经济等相关的商品;另一方面,供应商可以建立实时的用户反馈和评价系统,让用户对购买的绿色商品和服务进行评价和打分,为商家提供改进产品的依据。基于这一背景,本设计旨在开发一个基于Android操作系统的绿色交易移动端数据库App,为用户提供一个便捷、实时的交易平台。
1 开发技术以及环境
本设计选取的Android系统,涵盖了Spring boot框架以及MySQL作为本设计的开源数据库[1]。究其原因,是因为MySQL对PHP有着较好的支持,可借助GPL协议修改源码来开发实现MySQL系统。
1.1 开发软件环境
本设计选取的Android Studio,是基于IntelliJ IDEA专门为Android开发定制的一个集成开发环境。
1.2 开发硬件环境
笔记本一台:AMD Ryzen 7 4800H/16 GB/RTX2060/Windows 11专业版21H2;手机一台:Redmi Note 7 Pro/6.0GB/MIUI稳定版12.5.4/Android10;显示器一台:AOC 23.8英寸 I2490VXH/BS。
2 系统分析与设计
2.1 需求功能分析
注册功能:用户输入相应的信息即可完成注册。
登录功能:用户在登录界面输入信息后,系统验证无误即可成功登录。
程序首页:包括一个广告轮播图、一个搜索框和一个推荐商品列表。
绿色交易车:用户可将商品添加到绿色交易车,并在绿色交易车中调整数量,显示合计金额。
商品分类:在商品分类列表中,可根据所选的一级分类找到对应的二级商品。
商品搜索:在搜索栏中输入想要查询的商品,可以查询到对应的商品,支持模糊搜索。
商品详情页:展示商品的轮播图,并可点击查看大图,还可以收藏商品和查看商品评分。
客服咨询:用户可以与客服进行沟通。
我的收藏:在“我的收藏”中,用户可以查看自己收藏的商品列表。
浏览记录:用户可以查看曾经浏览过的商品记录。
用户完成注册后,首先点击登录按钮进入首页进行商品浏览。然后可以利用商品分类和搜索功能来挑选喜欢的商品。接下来,在商品详情页中,用户可以查看相关信息,筛选适合自己的绿色交易商品,并将其添加到交易车中。最后,在确认个人信息(如收货地址和联系方式)无误后,用户可以生成订单并进行支付,完成最终的商品购买。绿色交易流程图与功能结构图见图1。
2.2 性能分析
启动时间:在市场上常见的安卓和苹果智能手机配置下,应用的启动时间应该在5秒之内。
响应时间:在忽略网络和设备配置的情况下,本地测试显示点击的响应速度应该在0.5秒以内。
运行内存占用:在用户正常操作的情况下,应用的运行内存占用不应超过100 MB。
硬盘空间占用:在用户正常使用的情况下,包括缓存,商城App所占据的硬盘空间总量应不超过700 MB。
2.3 数据库设计
考虑到数据库的选择和设计会直接影响到系统的性能和应用的设计[2],因此在本设计中,选择了当前市场上使用频率较高的开源数据库MySQL,并且采用方便、易用、可视化界面的Navicat Premium作为数据库操作的辅助工具。在数据库的整体框架上,本系统共设计了13个表,它们分别是:用户表、用户地址表、品牌表、优惠券信息表、物流表、订单表、商品表、商品图片表、商品类型表、用户浏览记录表、绿色交易车表、用户收藏表、用户反馈表。
2.3.1 用户表
用户表包含用户id(user_id) 、用户名(username) 、密码(password) 、昵称(nike_name) 、头像(head_pic) 、联系电话(telno) 、邮箱(email) 字段。设置用户id为主键,自动生成。
2.3.2 用户地址表
用户地址表设置地址id(address_id) 为主键,采用自动生成,此外还包含用户id(user_id) 、收货人(Consignee) 、手机号(telno) 、省市区(province_and_city) 和详细地址(detailed_address) 字段。
2.3.3 品牌表
品牌表包含品牌id(brand_id) 、品牌名(brand_name) 和品牌图片地址(brand_pic_url) 字段。
2.3.4 优惠券信息表
优惠券信息表包含优惠券id(discount_volume_id) 、用户id(user_id) 、优惠券类型(discount_volume_type) 、优惠券说明(preferential_volume_content) 字段。
2.3.5 物流表
物流表包含发货方式(preferential_volume_content) 、物流id(logistics_id) 、物流公司(logistics_company) 、运单id(waybill_id) 、物流详情(logistics_details) 字段。其中物流id字段采用主键自动生成策略。
2.3.6 订单表
订单表包含订单id(order_id) 、订单日期(order_date) 、用户id(user_id) 、订单说明(receiver_information) 、订单金额(order_money) 、订单状态(order_status) 、优惠券id(discount_volume_id) 、物流id(logistics_id) 、运费(freight) 、发票(invoice_rise) 、支付模式(delivery_mode) 、支付时间(delivery_time) 、付款方式(payment_method) 字段。其中订单id为主键采用自增的策略,通过用户id、优惠券id、物流id去关联相应的表。
2.3.7 商品表
商品表包含商品id(product_id) 、商品类型id(product_type_id) 、商品名(product_name) 、商品原价(old_price) 、商品描述(description) 、商品新价格(new_price) 、商品图片(product_pic_url) 、商品状态(flag) 、商品单位(unit) 、品牌id(brand_id) 、库存(inventory) 、上架时间(time) 、商品规格(specification) 字段。其中,商品id为主键,采用自增的策略。通过商品类型id、品牌id去关联相应的表。
2.3.8 商品图片表
商品图片表包含商品图片id(pic_id) 、商品id(product_id) 、商品图片路径(product_pic_url) 字段。其中商品图片id采用自增策略。通过商品id去管理相对应的商品。
2.3.9 商品类型表
商品类型表包含商品类型id(product_type_id) 商品类型(product_type_name)、商品类型图(product_type_pic_url) 字段。其中商品类型id为自增的主键。
2.3.10 用户浏览记录表
用户浏览记录表包含用户浏览记录id(user_browse_record_id)、用户id(user_id)、商品id(product_id) 字段。其中以用户浏览记录编号为自增主键,通过用户id和商品id去关联用户表(tbl_user) 和商品表(tbl_product) 。
2.3.11 绿色交易车表
绿色交易车表包含用户id、商品数量、商品id字段。通过商品id去关联商品表(tbl_product) 。
2.3.12 用户收藏表
用户收藏表包含用户收藏id(tbl_product) 、用户id(user_id) 、商品编号id(product_id) 字段。其中用户收藏id为递增主键,通过用户id和商品id分别对应去关联用户表(tbl_user) 和商品表(tbl_product) 。
2.3.13 用户反馈表
用户反馈表包含用户反馈id(user_feedback) 、商品id(product_id) 、用户id(user_id) 、联系方式(contact_information) 、反馈内容(feedback_content) 、星级(star_class) 字段。以用户反馈编号为主键,采用递增的策略。通过用户id和商品id分别去关联用户表(tbl_user) 和商品表(tbl_product) 。
2.4 绿色交易系统数据库前端设计
2.4.1 用户注册登录功能
在本次基于Android的绿色交易系统数据库App设计中,注册页面要求用户输入用户名和两次密码。只有在验证用户名没有重复且两次密码输入一致时,才能成功完成注册。注册完成后,用户将自动跳转到登录页面。如果用户忘记密码,可以选择“找回密码”操作来重新找回并完成密码重置。此外,本设计还在用户名和密码的输入上加入了正则表达式来判断用户的输入是否符合规范,这样可以避免密码过短、过于简单,或者用户名太短的问题。这些措施旨在提高系统的安全性和用户体验。
2.4.2 绿色交易流程设计
商品浏览功能是本设计中最基本的功能之一,即使用户没有登录也可以使用。如图2所示,用户可以通过各种商品列表页来浏览商品,然后点击进入商品详情页。在用户登录后,他们还可以在商品详情页上对商品进行选择。例如,他们可以选择是否将商品加入绿色交易车,是否需要与客服进行咨询确认,或者是否将商品仅供暂时收藏等操作。这些功能的存在为用户提供了更加灵活和便捷的购物体验。
3 服务端功能的具体实现
服务端采用Spring Boot框架实现。其中,config包用于存储服务端的相关配置信息,包括数据库配置文件、日志配置文件、应用配置文件等。Controller包中存放各种API接口[3]。Dao包主要用于提供对数据库的集成支持,方便快速地进行数据库操作。而model包则包含实体类,这些实体类是根据数据库表结构自动生成的。
3.1 登录注册功能
登录功能由login()方法实现,服务端接收客户端传来的user对象,然后通过遍历数据库验证用户名和密码是否正确。如果验证成功,则返回包含用户信息的数据。
3.2 商品列表查询功能