第二章 开发工具及关键技术介绍
2.1微信开发者工具
微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。
机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。
预览界面:写好视图布局后点击编译,用来刷新视图界面。
控制台:方便调试打印输出信息。
上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息。
资源文件:一般可以在资源文件进行对应项目的文件目录的断点调试。
显示远程调试:手机端和PC端开发工具联调对用户而言是非常实用的。
本地数据存储:显示的是本地存储的数据。
视图调试:标组件以子父层级结构呈现,方便调试。
微信限制在2M 以内的代码体积;开发中一般不校验合法域名信息;小程序后台要做配置服务器域名。
以上就是在开发过程中微信开发者工具常用到的功能,微信开发者工具也在不断的完善。
2.2小程序框架以及目录结构介绍
整个小程序框架系统分为两部分:逻辑层和视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生小程序体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。框架提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的微信小程序 。
2.3 JAVA技术
Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,java (java server pages),和XML技术。
JAVA语言功能:
面向对象:面向对象是Java编程语言的标志之一,是一种软件开发方法。最重要的是将所有东西变成对象,然后以某种方式编程。编程时,代码和数据写在每个对象上。 面向对象编程方法的出现使得人们在编程过程中的设计思考和操作变得非常简单,同时也提高了程序的安全性。
跨平台:Java流行的一个关键特性是它的跨平台特性,这使得用Java编程变得容易。您可以用Java编写程序并在其他地方运行它,而无需在编译后更改它。
垃圾回收机制:用来将那些在程序不操作时无用的对象所占用的内存空间释放掉,C ++最被人厌恶的就是因为其不能将在编程的过程中所占用的内存空间进行及时的释放,导致随着编程时间的变长所占用的内存空间越来越多。对于一些编程高手而言,他们会在刚开始编程的时候配置一块内存地址放在堆栈上,然后在不需要的时候会对其进行释放,而一些新手在很多的时候会忘记删除这个内存地址,从而导致程序在运行的过程中会变得十分的不稳定,最终有可能会导致程序崩溃。所以很多C ++的高手在编写程序时往往都会将删除后的指针的值设置为NULL,然后在删除之前确定一个指针的值是否为NULL。
2.4 Mysql数据库
数据库是系统开发过程中不可或缺的一部分。 在WEB应用方面,MySQL AB开发了一个具有很大优势的MySQL关系数据库管理系统。 MySQL可以将数据存储在不同的表中,这非常灵活,并且还可以提高系统在实际应用中的速度。 数据库访问最常用于标准SQL语言,MySQL用于SQL语言,因此它具有高度兼容性。数据库的操作是必不可少的,包括对数据库表的增加、删除、修改、查询等功能。现如今,数据库可以分为关系型数据库和非关系型数据库,Mysql属于关系性数据库,Mysql数据库是一款小型的关系型数据库,它以其自身特点:体积小、速度快、成本低等,Mysql数据库是目前最受欢迎的开源数据库。
在WEB应用技术中, Mysql数据库支持不同的操作系统平台,虽然在不同平台下的安装和配置都不相同,但是差别也不是很大,Mysql在Windows平台下两种安装方式,二进制版和免安装版。安装完Mysql数据库之后,需要启动服务进程,相应的客户端就可以连接数据库,客户端可通过命令行或者图形界面工具登录数据库。
2.5 SSM框架
当今流行的“SSM组合框架”是Spring + SpringMVC + MyBatis的缩写,受到很多的追捧,“组合SSM框架”是强强联手、各司其职、协调互补的团队精神。web项目的框架,通常更简单的数据源。Spring属于一个轻量级的反转控制框架(IoC),但它也是一个面向表面的容器(AOP)。SpringMVC常常用于控制器的分类工作模式,与模型对象分开,程序对象的作用与自动取款机进行处理。这种解耦治疗使整个系统的个性化变得更加容易。MyBatis是一个良好的可持续性框架,支持普通SQL查询,同时允许对存储过程的高级映射进行数据的优化处理。大型Java Web应用程序的由于开发成本太高,开发后难以维护和开发过程中一些难以解决的问题,而采用“SSM组合框架”,它允许建立业务层次结构,并为这个问题提供良好的解决方案。
第三章 系统分析
3.1需求分析
任何一个项目在开发研究前,都需要对研发系统本身的需求做一个认真的分析,市场的调研是不可忽视的,从实际场景中确定使用人员的功能需求,从而明确目标,对整个系统的开发有一个更加准确的定位,在这个章节,需要对系统的性能分析,业务流程分析,和数据等进行分析,在线课堂微信小程序的整体界面简单,功能完善。
需求的可行性是分析和讨论发达的系统能达到什么样的要求。开发的系统平台是否符合之前的要求。只有在预先评估系统的开发中,才能在系统开发和实施之前完成需求。如果您不具备开发一个功能不合格的系统的可行性,那就是开发失败。开发系统是否有用,可以完成之前讨论过的需求,以下分析了在线课堂微信小程序的实际需求。
系统设计需要从用户和管理员的实际需求开始,以了解他们需要实施哪些功能以及他们可以包括哪些管理工作。
考虑到在线课堂微信小程序系统设计的特点,应满足几个要求:
(1)它可以通过网络开展在线课堂微信小程序信息管理工作,促进对在线课堂微信小程序信息管理。
(2)学习方法变得更加多样化,管理更加标准化;
(3)它提供了一个免费的渠道,以确保数据的实时有效沟通。
3.2可行性分析
3.2.1技术可行性:技术背景
在线课堂微信小程序采用了JAVA技术,开发了功能完备、使用简单的前端应用程序,并建立、维护了一个数据完整、安全、稳定性强的后台数据库系统。
系统使用JAVA技术和Mysql数据库作为设计工具,可简单易行地学习操作。用户角色之间的相结合开发一套在线课堂微信小程序是值得尝试的,数据完整性和许多品质为数据的功能分配和管理提供了依据。它也是数据库安全平台的重要组成部分,是提高和增强数据安全性的重要手段。此外,为了提供更平滑,更智能和更有效的基本控制方法,定义了同时构建对安全计算环境的支持所需的步骤,并帮助维护安全性。因为在这两种开发工具中,功能强大且免费且界面良好,所以在线课堂微信小程序在技术方面是可行的。
3.2.2经济可行性
桌面在线课堂微信小程序的开发是由开发者自己开发,不需要购买其他软件或者端口之类的,而且在在线课堂微信小程序的开发之前所做的市场调研及其他的在线课堂微信小程序,都是没有任何费用的,通过开发者自己的努力,所有的工作的都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于在线课堂微信小程序的开发在经济上是完全可行的,没有任何费用支出的。
使用JAVA技术是比较成熟的技术,所以在线课堂微信小程序的开发在经济上是没有问题的。
3.2.3操作可行性:
可操作性主要是对在线课堂微信小程序系统设计完成后,用户的使用体验度,对于管理员可以通过系统随时管理相关的数据信息,并且对于管理员、用户二个权限角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息需求和在线课堂微信小程序数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
3.3性能分析
对于性能分析,与传统的管理方式相比,传统的管理方式是使用人工通过用纸和笔进行数据信息的统计和管理,并且这种方式对于存储和查找某一数据信息都比较麻烦,随着计算机网络的到来,这种传统的方法很难适应当下社会的发展,不仅降低人们的办事效率,而且还需要很多的人力和物力,对于使用的时间和所要花费的费用都是比较高的,为了降低成本费用,提高用户的工作效率,进行开发一套基于计算机和网络技术的在线课堂微信小程序。
在线课堂微信小程序的开发设计时一个独立的系统,以流行数据库进行数据的存储开发,主要是为了实现在线课堂微信小程序的用户角色及相对应的功能模块,让在线课堂微信小程序的管理不会存在管理差异、低效率,而是跟传统的管理信息恰好相反,在线课堂微信小程序的实现可以节约资源,并且对于业务的处理速度也提高,速度快、效率高,功能性强大。
3.4系统操作流程
3.4.1用户登录流程
对于系统的安全性的第一关,就是用户想要进入系统,必须通过登录窗口,输入自己的登录信息才可以进行登录,用户输入的信息准确无误后才可以进入到操作系统界面,进行功能模块的相对应操作,如果用户输入的信息不正确,则窗口出现提示框,用户登录失败,返回到第一步进行重新输入,如图3-1所示。
图3-1登录操作流程图
3.4.2信息添加流程
对于在线课堂微信小程序,需要随时添加所需要的数据信息,对于用户添加信息,需要根据添加界面,根据选框的内容进行填写所要添加的数据信息,信息输入完成后判断数据信息是否符合要求,符合要求则添加完成,用户所添加的信息不符合要求,则需要返回到第一步,重新输入数据信息,再进行判断操作,如图3-2所示。
图3-2 信息添加流程图
3.4.3信息删除流程
不管是哪个用户角色进入到不通的系统操作界面,都可以进行不同的信息内容的操作功能,对用系统数据信息的删除,用户一旦将信息删除,那么该删除的数据信息将无法恢复,所以用户在对数据删除事,一定判断删除的内容是否是确定要删除的,确定无误后选择确定删除操作,如图3-3所示。
图3-3 信息删除流程图
第四章 系统设计与实现
4.1系统架构设计
在线课堂微信小程序的系统项目的概述设计分析,主要内容有平台的具体分析,进行数据库的是设计,数据采用mysql数据库,并且对于系统的设计采用比较人性化的操作设计,对于系统出现的错误信息可以及时做出处理及反馈。
基于在线课堂微信小程序的设计基于现有的手机上可以运行,可以实现首页、个人中心、用户管理、课程分类管理、课程信息管理、课程订阅管理、课程视频管理、公告栏管理、留言板管理、系统管理等功能。方便用户对首页、课程信息、公告栏、我的等详细的了解及统计分析。根据系统功能需求建立的模块关系图如下图:
图4-1管理员功能模块图
图4-2用户功能模块图
4.2开发流程设计
在线课堂微信小程序的开发对管理模块和系统使用的数据库进行分析,编写代开发,规划和操作是构建信息管理应用程序的必要三步曲,它决定了系统是否能够真正实现预设功能以及是否可以在成功设计后实施。在开发过程中,每个阶段必须严格按照线性顺序进行开发,并且在相应阶段生成的每个工作都可以通过技术进行验证和检查。确保一个阶段完成后是正确的,不会造成下一阶段拖拽现象,使系统完成设计功能后得到保证。
从在线课堂微信小程序的成功开发经验来看,上述方法效果最为明显,最大程度地降低了系统开发的复杂性。如图4-3所示。
图4-3开发系统流程图
4.3数据库设计
数据库是信息系统的基础和核心。数据库设计的好坏直接影响到信息系统开发的成败。创建数据库表首先确定实体的属性和实体之间的关系。根据关系创建一个数据表。
4.3.1实体ER图
数据库是整个软件编程中最重要的一个步骤,对于数据库问题主要是判定数据库的数量和结构公式的创建。展示系统使用的是Mysql进行对数据库进行管理,进行保证数据的安全性、稳定性等。
概念模型的设计是为了抽象真实世界的信息,并对信息世界进行建模。它是数据库设计的强大工具。数据库概念模型设计可以通过E-R图描述现实世界的概念模型。系统的E-R图显示了系统中实体之间的链接。而且Mysql数据库是自我保护能力比较强的数据库,下图主要是对数据库实体的E-R图:
(1) 用户信息E-R图,如图4-4所示:
图4-4 用户信息实体属性图
(2)课程视频信息E-R图如图4-5所示:
图4-5课程视频信息实体图
这些功能可以充分满足在线课堂微信小程序的需求。此系统功能较为全面如下图系统功能结构如图4-6所示。
图4-6系统功能结构图
4.3.2数据表
我们可以根据数据结构的详细分析要求,我们根据输入和输出数据量的要求进行分析,确定什么表表,结构之间的关系,我们可以验证,调整和完善,查询和浏览过程,可以实现数据库,以使用户对数据和功能有更多要求。
基于系统使用的数据库管理系统的特点,对数据库的概念模型进行了转换和构建。但是,这个系统只需要充分考虑在线课堂微信小程序的功能,而且组织比较清晰。
表名:gonggaolan
功能:公告栏表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
gonggaobiaoti | varchar | 200 | 公告标题 | ||
gonggaoleixing | varchar | 200 | 公告类型 | ||
fengmiantupian | varchar | 200 | 封面图片 | ||
neirong | varchar | 200 | 内容 | ||
faburiqi | varchar | 200 | 发布日期 | ||
faburen | varchar | 200 | 发布人 |
表名:kechengdingyue
功能:课程订阅表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
dingyuebianhao | varchar | 200 | 订阅编号 | ||
kechengmingcheng | varchar | 200 | 课程名称 | ||
kechengfenlei | varchar | 200 | 课程封面 | ||
kechengtupian | varchar | 200 | 课程图片 | ||
renkelaoshi | varchar | 200 | 任课老师 | ||
kechengjiage | varchar | 200 | 课程价格 | ||
yonghuzhanghao | varchar | 200 | 用户账号 | ||
yonghuxingming | varchar | 200 | 用户姓名 | ||
yonghushouji | varchar | 200 | 用户手机 | ||
sfsh | varchar | 200 | 是否审核 | ||
shhf | varchar | 200 | 审核回复 |
表名:kechengshipin
功能:课程视频表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
dingyuebianhao | varchar | 200 | 订阅编号 | ||
kechengmingcheng | varchar | 200 | 课程名称 | ||
kechengfenlei | varchar | 200 | 课程分类 | ||
kechengtupian | varchar | 200 | 课程图片 | ||
renkelaoshi | varchar | 200 | 任课老师 | ||
kechengshipin | varchar | 200 | 课程视频 | ||
fabushijian | varchar | 200 | 发布时间 | ||
yonghuzhanghao | varchar | 200 | 用户账号 | ||
yonghuxingming | varchar | 200 | 用户姓名 |
表名:kechengxinxi
功能:课程信息表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kechengmingcheng | varchar | 200 | 课程名称 | ||
kechengfenlei | varchar | 200 | 课程封面 | ||
kechengtupian | varchar | 200 | 课程图片 | ||
renkelaoshi | varchar | 200 | 任课老师 | ||
kechengjiage | varchar | 200 | 课程价格 | ||
yulanshipin | varchar | 200 | 预览视频 | ||
kechengjieshao | varchar | 200 | 课程介绍 |
表名:yonghu
功能:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yonghuzhanghao | varchar | 200 | 用户账号 | ||
mima | varchar | 200 | 密码 | ||
yonghuxingming | varchar | 200 | 用户姓名 | ||
xingbie | varchar | 200 | 性别 | ||
nianling | varchar | 200 | 年龄 | ||
touxiang | varchar | 200 | 头像 | ||
yonghushouji | varchar | 200 | 用户手机 |
第五章 系统实现
5.1用户前台功能实现
注册用户通过注册窗口,进行在线填写用户账号、用户姓名、性别、年龄、头像、用户手机等,信息编辑完成后核对信息无误后进行选择注册,系统核对用户所输入的账号信息是否准确,核对信息准确无误后系统进入到操作界面。如图5-1所示。
图5-1注册用户界面图
用户登录通过填写账号、密码进行登录,进入到在线课堂微信小程序主界面,如图5-2所示。
图5-2用户登录界面图
用户首页页面可以查看首页、课程信息、公告栏、我的等信息,进行相对应的操作,如图5-3所示。
图5-3首页功能界面图
用户进入课程信息页面可以查看课程名称、课程分类、课程图片、任课老师、课程价格、预览视频、课程介绍等信息,进行课程订阅、点我收藏操作,如图5-4所示。
图5-4课程信息界面图
用户进入公告栏页面可以查看公告标题、公告类型、封面图片、发布日期、发布人、内容等信息,进行提交操作,如图5-5-所示。
图5-5公告栏界面图
用户进入我的页面可以查看课程信息、课程订阅、课程视频、我的收藏管理、在线客服、留言板等信息,进行相对应的操作,如图5-6-所示。
图5-6我的页面界面图
用户进入用户信息页面可以填写用户账号、密码、用户姓名、性别、年龄、头像、用户手机等信息,进行保存、退出登录操作,如图5-7-所示。
图5-7用户信息界面图
用户进入课程订阅页面可以填写订阅编号、课程名称、课程分类、课程图片、任课老师、课程价格、用户账号、用户姓名、用户手机等信息,进行提交操作,如图5-8-所示。
图5-8课程订阅界面图
5.2 管理员后台功能实现
管理员通过在线课堂微信小程序进行确认,管理员进入到在线课堂微信小程序主界面,管理员进入到操作界面,通过登录窗口进行在线填写用户名和密码、角色进行登录,登录成功后进入到系统操作界面进行相应信息的获取,如图5-9所示。
图5-9管理员登录界面图
管理员进入到界面,通过界面的任务大厅,登录成功后进入到系统可以进行查看首页、个人中心、用户管理、课程分类管理、课程信息管理、课程订阅管理、课程视频管理、公告栏管理、留言板管理、系统管理等功能模块,进行相对应操作,如图5-10所示。
图5-10管理员功能界面图
管理员进入到用户管理页面可以查看用户账号、用户姓名、性别、年龄、头像、用户手机等信息,进行详情、修改、删除操作,如图5-11示。
图5-11用户管理界面图
管理员进入到课程分类管理页面可以查看课程分类等信息,进行详情、修改、删除操作,如图5-12所示。
图5-12课程分类管理界面图
管理员进入到课程信息管理界面可以查看课程名称、课程分类、课程图片、任课老师、课程价格、预览视频等信息,进行详情、修改、删除操作,如图5-13所示。
图5-13课程信息管理界面图
管理员进入到课程订阅管理页面可以查看订阅编号、课程名称、课程分类、课程图片、任课老师、课程价格、用户账号、用户姓名、用户手机、是否支付、审核回复、审核状态、审核等信息,进行详情、推送视频、修改、删除操作,如图5-14所示。
图5-14课程订阅管理界面图
管理员进入到课程视频管理页面可以查看订阅编号、课程名称、课程分类、课程图片、任课老师、课程视频、发布时间、用户账号、用户姓名等信息,进行详情、修改、删除操作,如图5-15所示。
图5-15课程视频管理界面图
管理员进入公告栏管理页面可以查看公告标题、公告类型、封面图片、发布日期、发布人等信息,进行详情、修改、查看评论、删除操作,如图5-16所示。
图5-16公告栏管理界面图
管理员进入留言板管理页面可以查看用户名、留言内容、回复内容等信息,进行详情、修改、回复、删除操作,如图5-17所示。
图5-17留言板管理界面图
轮播图;该页面为轮播图管理界面。管理员可以在此页面进行首页轮播图的管理,通过新建操作可在轮播图中加入新的图片,还可以对以上传的图片进行修改操作,以及图片的删除操作,如图5-18所示。
图5-18轮播图界面图