大家好!我是岛上程序猿,感谢您阅读本文,欢迎一键三连哦。
💞当前专栏:微信小程序毕业设计
精彩专栏推荐👇🏻👇🏻👇🏻
(微信小程序毕业设计)小学生语文学习打卡小程序的开发录像
目录
一、项目简介
本论文首先对基于微信小程序的小学语文学习打卡系统进行了需求分析,从系统开发环境、系统目标、设计流程、功能设计等几个方面进行系统的总体设计,在此基础上实现了基于微信小程序的小学语文学习打卡系统的多种功能,包括有用户登录、课程资源、测试打卡、素材管理等各项功能的设计,实现对小学语文学习打卡系统展示。通过对系统的功能进行测试,测试结果证明该系统界面友好、功能完善,有着较高的使用价值,具有庞大的潜在用户群体和较广阔的应用前景。
二、系统设计
2.1软件功能模块设计
在线学习平台的架构如图 4-1 所示。
2.2数据库设计
(1)管理员实体属性图如下图4-8所示
(2)用户注册实体图如图4-9所示:
(3)用户打卡实体图如图4-10所示:
(4)用户测试实体图如图4-11所示:
(5)课程视频实体图如图4-12所示:
(6)评论实体图如图4-13所示:
三、系统项目部分截图
3.1系统主界面
用户进入小程序后,便可看到程序的主界面,具体如图5-1所示。页面被分为三大块,界面中上部展示的语文学习主题宣传动画。中间部分是课程搜索选择,以及各个课程的展示。在下方是各个模块的标签页。
3.2课程学习界面
在课程学习界面中,当用户点击某一课程后即进入当前课程界面,如图5-2所示。页面中显示课程的主题画,具体课程视频和课程简介,可以进行收藏、下载及评论。
3.4 打卡界面
在打卡界面中用户可以进行学习打卡,以便对自己学习进行督促,如图5-6所示。
四、论文目录
第一章 引言 5
1.1. 课题的研究背景 5
1.2. 本课题研究现状 5
1.2.1. 网络辅助学习 5
1.2.2. 微信小程序 6
1.3. 本课题研究内容 7
1.4. 论文组织结构 8
第二章 微信小程序相关技术综述 9
2.1. 微信小程序介绍 9
2.1.1. 微信小程序背景 9
2.1.2. 微信小程序特点分析 9
2.2. 框架技术介绍 10
2.2.1. MINA框架简介 10
2.2.2. MINA框架功能层介绍 12
2.3. 微信开发者工具 13
2.4. 微信小程序开发步骤 13
2.5. 微信小程序文件 14
第三章 系统可行性及性能分析 1
3.1. 系统分析的方法 1
3.2. 系统可行性分析 1
3.3. 系统需求分析 2
3.3.1. 系统功能性需求分析 2
3.3.2. 系统非功能性需求分析 3
3.4. 系统流程分析 4
3.4.1. 登录流程 4
3.4.2. 注册流程 4
3.4.3. 添加信息流程 5
3.4.4. 删除信息流程 5
第四章 系统总体设计 1
4.1. 体系结构设计选择 1
4.2. 系统总体设计 2
4.3. 项目开发方法及部署环境 3
4.4. 数据库设计 4
4.3.1 数据库E-R图 4
4.3.2 逻辑结构设计 7
第五章 基于微信小程序的系统实现 9
5.1. 系统主界面 9
5.2. 课程学习界面 10
5.3. 资讯列表界面 10
5.4. 论坛交流界面 11
5.5. 测试界面 12
5.6. 打卡界面 13
第六章 软件调试 15
6.1. 测试的目的 15
6.2. 系统测试的方法 15
五、部分核心代码
4.1 用户部分
package com.ideabobo.action;
import java.util.HashMap;
import java.util.Map;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
import com.google.gson.Gson;
import com.ideabobo.model.User;
import com.ideabobo.service.UserService;
import com.ideabobo.util.GetNowTime;
import com.ideabobo.util.IdeaAction;
import com.ideabobo.util.Page;
@Controller
public class UserAction extends IdeaAction {
@Resource
private UserService userService;
private static final long serialVersionUID = -3218238026025256103L;
private User user;
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public String user(){
return SUCCESS;
}
public void getList(){
String username = request.getParameter("susername");
String sort = request.getParameter("sort");
String order = request.getParameter("order");
Page page = new Page();
Map paramsMap = new HashMap();
paramsMap.put("username", username);
paramsMap.put("sort", "order by "+sort+" "+order);
String pageNo = (String) this.request.getParameter("page");
String pageSizes = (String) this.request.getParameter("rows");
if (pageNo == null) {
page.setPageSize(10);
page.setPageNo(1);
} else {
page.setPageSize(Integer.parseInt(pageSizes));
page.setPageNo(Integer.parseInt(pageNo));
}
page = userService.findByPage(page, paramsMap);
Gson json = new Gson();
Map<String, Object> map = new HashMap<String, Object>();
map.put("total", page.getTotal());
map.put("rows", page.getList());
render(json.toJson(map));
}
public void add(){
String action = request.getParameter("action");
if(user != null){
if(action.equals("add")){
userService.save(user);
render("操作成功!");
}else {
String id = request.getParameter("id");
user.setId(Integer.parseInt(id));
userService.update(user);
render("操作成功!");
}
}
}
public void deleteItem(){
String id = request.getParameter("id");
userService.delete(Integer.parseInt(id));
render("操作成功");
}
public void login(){
String username = request.getParameter("username");
String passwd = request.getParameter("passwd");
User tu = new User();
tu.setUsername(username);
tu.setPasswd(passwd);
User u = userService.find(tu);
if(u != null){
session.put("usertype", u.getRoletype());
session.put("username", u.getUsername());
render("登录成功,欢迎您!"+u.getUsername());
}else{
render("用户名或密码错误!");
}
}
}
4.2日志部分
package com.ideabobo.action;
import java.util.HashMap;
import java.util.Map;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
import com.google.gson.Gson;
import com.ideabobo.model.Rizhi;
import com.ideabobo.service.BaseService;
import com.ideabobo.service.RizhiService;
import com.ideabobo.util.IdeaAction;
import com.ideabobo.util.Page;
@Controller
public class RizhiAction extends IdeaAction {
@Resource
private RizhiService rizhiService;
@Resource
private BaseService baseService;
private static final long serialVersionUID = -3218238026025256103L;
private Rizhi rizhi;
public Rizhi getRizhi() {
return rizhi;
}
public void setRizhi(Rizhi rizhi) {
this.rizhi = rizhi;
}
public String rizhi(){
return SUCCESS;
}
public void getList(){
String rizhiname = request.getParameter("sgname");
String sort = request.getParameter("sort");
String order = request.getParameter("order");
Page page = new Page();
Map paramsMap = new HashMap();
String roletype = (String) session.get("roletype");
if(roletype.equals("3")){
String sid = (String) session.get("sid");
paramsMap.put("sid",sid);
}
paramsMap.put("rizhiname", rizhiname);
paramsMap.put("sort", "order by "+sort+" "+order);
String pageNo = (String) this.request.getParameter("page");
String pageSizes = (String) this.request.getParameter("rows");
if (pageNo == null) {
page.setPageSize(10);
page.setPageNo(1);
} else {
page.setPageSize(Integer.parseInt(pageSizes));
page.setPageNo(Integer.parseInt(pageNo));
}
page = rizhiService.findByPage(page, paramsMap);
Gson json = new Gson();
Map<String, Object> map = new HashMap<String, Object>();
map.put("total", page.getTotal());
map.put("rows", page.getList());
render(json.toJson(map));
}
public void add(){
String action = request.getParameter("action");
if(rizhi != null){
if(action.equals("add")){
rizhiService.save(rizhi);
render("操作成功!");
}else {
String id = request.getParameter("id");
rizhi.setId(Integer.parseInt(id));
rizhiService.update(rizhi);
render("操作成功!");
}
}
}
public void deleteItem(){
String id = request.getParameter("id");
rizhiService.delete(Integer.parseInt(id));
render("操作成功");
}
public void jiaohao(){
String bid = request.getParameter("bid");
String statecn = request.getParameter("statecn");
baseService.excute("delete Line t where t.bid = "+bid);
Rizhi b = (Rizhi) baseService.find(Integer.parseInt(bid), Rizhi.class);
baseService.update(b);
render("success");
}
}
获取源码或论文
如需对应的源码,可以评论或者私信都可以。