基于Android 平台的校园易书APP

2023-09-27 14:20许朕瑀白云飞朱艳
电子制作 2023年17期
关键词:功能模块管理员书籍

许朕瑀,白云飞,朱艳

(东南大学 成贤学院,江苏南京,210088)

0 绪论

古人云:“书中自有黄金屋,书中自有颜如玉。”书本作为知识的一种载体,是学生获取信息的重要媒介[1]。在大学的校园中,许多学生为了能够考取各类证书往往都会购买多种的辅导书,而这类辅导书一般在成功考取证书后被废弃,造成资源浪费。如果一个学生购买辅导资料,新品往往价格会高一点,而二手书籍的价格更实惠,并且校内会有大量的高年级学生可以提供这类二手书。这些二手书除了价格实惠外,还有一个好处,就是往往会有原书主的各类笔记、批注,能够帮助新的书主更好的进行学习。因此,本项目设计开发一款基于Android 的校园易书APP,加速二手书籍的校园循环利用,使得二手书籍,从校园来,回到校园去。校园易书APP 开发工具基于Android Studio[2],开发语言主要基于Java,前端基于okhttp 框架组件,后端采用了Springboot+Mybatis+Mysql[3]整合框架。

1 APP 软件技术解决方案

■1.1 Android Studio

Android Studio 是美国谷歌公司开发并推出的新的Android 开发 环境,Android Studio 是一款基于 IntelliJ IDEA[4]的开发环境,IDEA 是一款在全世界程序员口中和各类软件公司心中最好的 JAVA 开发工具之一,其实质是一款集成的开发环境。Android Studio 在 IDEA 的基础上提供了其他的开发支持,比如包含了对 Gradle[5]的构建与支 持、能够快速的修复和重新组合相关开发语句、支持 UI 控件并能 够对相关界面进行预查看等功能。Android Studio 的优点十分明显,其具备一个叫做优化小贴士 的功能,它会给予开发者一些开发过程的优化型建议,并伴随翻 译的功能,它可以使软件开发人员在开发的内容里进行翻译,解 决了语言问题,使之更加普及化、全球化。Android Studio 同时还 具备很多不同尺寸的屏幕及分辨率,使得程序员在开发软件时能 够看到自己正在编写的 APP 在不同分辨率及大小的屏幕下的展示 效果,以便做出及时的修正。

■1.2 Springboot+Mybatis+Mysql

springboot 是spring[8]家族中的一个全新框架,用来简化spring 程序的创建和开发过程。在以往我们通过SpringMVC[9]+Spring+Mybatis 框架进行开发的时候,我们需要配置web.xml,spring 配置,mybatis 配置,然后整合在一起,而springboot 抛弃了繁琐的xml 配置过程,采用大量默认的配置来简化我们的spring 开发过程。MyBatis 是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射,避免了几乎所有的JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的XML 或注解配置和映射原生信息,并将接口和Java 的POJO(Plain Old Java Objects,普通Java 对象)映射成数据库中的记录。MyBatis 作为操作数据库的框架,Spring Boot 没有提供MyBatis 场景依赖,但是MyBatis 开发团队自己适配了Spring Boot,提供mybatis-spring-starter依赖启动器实现数据访问操作。进一步简化了MyBatis 对数据的操作。MySQL 是一种关系型数据库系统,相比较其他数据库系统而言,MySQL 是目前运行速度最快的数据库系统之一。其优势在于源代码开放,任何人都可以依据General PublicLicense,下载并根据个性化的需求对源代码进行修改。大多数人都认为在不需要事务化处理的情况下,MySQL 是管理内容最好的选择,如图1 所示。

图1 Springboot+Mybatis+Mysql 系统架构

图2 用户用例图

图3 管理员用例图

■1.3 Java 技术

Java 是世界上使用最广泛的编程语言之一种面向对象的分布式语言[6]。Java 最初由Sun Microsystems 在1990年代开发,用于开发从Web 应用程序到移动应用程序到批处理应用程序的所有内容。Java 最初是一种纯粹的面向对象的语言,但现在已经发展成为一种多范例语言,可以高度适应任何情况。拥有庞大的开发人员社区和支持库,Java 是开发几乎所有类型的应用程序的理想选择。

2 系统需求分析

校园易书APP 的主要角色(参与者)有管理员、普通用户,下面从管理员和用户展开需求分析。

■2.1 用户功能分析

未注册用户可以通过该APP 进行注册。注册用户登入后的主要功能包括图书显示、图书推荐、书库分类、综合购买、用户信息管理、积分系统、书籍上传等。用户用例图如图 2 所示。

■2.2 管理员功能分析

管理员登入到后端系统后只要功能模块有图书查询、图书添加、图书删除、图书修改等。管理员用例图如图 3 所示。

3 系统设计

■3.1 系统分层结构设计

(1)前端功能设计,如图4 所示。

图4 前端功能模块结构图

(2)后端管理功能设计,如图5 所示。

图5 后端功能模块结构图

■3.2 系统核心模块设计

(1)登入注册模块:未注册的用户可进行注册操作,注册流程如图6 所示。登入主要是用于管理员和用户对自己账号的登入使用,主要流程如图7 所示。

图6 注册流程图

图7 登入流程图

(2)上传书籍功能模块:用户和管理员都可以进行书籍的上传主要流程如图8 所示。

图8 上传书籍流程图

(3)购买书籍功能模块:用户可以通过购买系统达成购买图书的目的,主要流程如图9 所示。

图9 购买书籍流程

图10 数据库E-R 图

■3.3 数据库设计

数据库是整个软件应用的根基,是软件设计的起点,它起着决定性的质变作用,一个好的数据库可以关系到程序开发的优劣,数据库设计离不开表的设计以及之前的联系。因此在设计数据库的时候要多花时间考虑周全才能够较好的完成。

(1) 数据库E-R 图设计

E-R 图[7]也称实体-联系图(Entity Relationship Diagram),提 供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。E-R 图中的三个最为重要的元素分别为实体,属性,关系。

(2)数据库表设计

校园易书APP 采用的数据库是Mysql 数据库,其主要功能是存储数据,从而方便了管理数据的操作。

表结构建设如表格1~表格6 所示。

表1 t_admin管理员信息表

表2 t_user用户信息表

表3 t_order订单表

表4 t_book订单表

表5 t_donate捐赠信息表

表6 t_record上传记录信息表

4 系统实现

■4.1 前端功能模块实现

(1)注册登入界面

登入界面如图11 所示。用户可以通过输入自己的账号密码进行登入。此外在用户没有账户的情况下可以点击注册按钮进入我们的注册界面进行用户注册。注册界面 第一栏是账号的输入:用户可以自定义账号。第二栏是密码的输入:用户也可以自定义自己的密码。第三栏是确认密码。

图11 注册登入界面

(2)系统主界面

主界面如图12 所示,分类界面如图13 所示。用户可以自行去滑动界面寻找自己想要的书籍亦或者是通过搜索和分类功能区快速搜寻想要购买的书籍。与此同时,主界面还伴有新书推荐、热销排行榜、智能推荐等功能。可以给用户带来非常不错的浏览体验。

图12 系统主界面

图13 图书分类界面

(3) 书籍上传界面

如图14 所示,该界面是本APP 的上传图书界面。最上层是上传系统的一个名称添加书籍。然后下面有个空白区域点击可以触发上传图片的一个事件。根据提示用户可在书籍标题,书籍价格,购买积分,书籍介绍下方蓝框中填入适当的书本信息。由于界面过长往下滑动会有一个上传的按钮。在填写好对应的信息之后点击上传书籍这个按钮就可以将书籍上传成功。

图14 上传书籍界面

(4) 图书购买界面

如图15 所示,在挑选商品的时候可以将商品加入购物车,加入购物车后购物车里面呈现出来的是一个书籍列表我们可以选中全部从而进行统一购买。

图15 综合购买界面

■4.2 后端功能模块实现

后端的主要功能可以说成是数据的存储和查询。下面我们分别展开来介绍这两个功能模块。

(1)存储功能

用户上传或捐赠的书籍都会储存在数据库中并且会在后端对应的表中展现出来也会被记录保留下来,购买记录以及订单同样也是如此,此功能如图16 所示。

图16 存储功能界面

(2)查询功能

管理员可以通过输入书本名称的方式来模糊查询去寻找数据库中已经被存入的书籍从而可以清楚的了解此书的详细信息等并且方便对其加以管理。此功能具体如图17 所示。

图17 查询功能界面

5 总结

在做手机APP 开发期间问题多多,比如没有环境,没有足够的经验。面对这些问题我们团队就心里想一定要解决这些问题,把成果拿出来。对于当时遇到的问题,我们都会认真分析,针对某个问题,都会预定出一个解决方案。其实开发的重点,主要是解决问题的能力,遇到问题要分析清楚试图找到最优的解决方案。对于我们的成果我们想说的是:校园易书APP 是我们优良团队精心研发的一款图书交易APP。可以满足用户的要求和需求。功能齐全运行良好,操作简单值得推广。

猜你喜欢
功能模块管理员书籍
鲁迅与“书籍代购”
我是小小午餐管理员
我是图书管理员
我是图书管理员
可疑的管理员
AOS在书籍编写的应用
书籍
基于ASP.NET标准的采购管理系统研究
书籍是如何改变我们的
输电线路附着物测算系统测算功能模块的研究