21世纪,随着多媒体信息技术的发展,教育也实现了翻天覆地变化。创新精神和创新能力是21世纪人才的核心素养,我国均把其作为教育工作的核心内容之一。
其中创客培训机构是少儿基础教育的重要组成部分,中国的家长都望子成龙,望女成凤,都希望自己的孩子能够成为祖国的有用之才,因此在少儿的教育上舍得投入血本来使他们受到良好的教育。这就导致了少儿培训行业得到了迅速飞猛的发展,而且这种快速的发展已经超过了经营者现有的经营管理水平。为了更好地促进少儿培训机构的发展和更好地服务于少儿教育,规范培训机构的服务,提高培训机构的管理水平,已经成为了行业发展的当务之急。
创客可以帮助孩子提高情商、智商、表达、表现等综合素质与能力,培养自信心,使孩子天性更加开放,组织能力、思维能力更加优秀突出。促进少儿智力与思维能力的发展,提高少儿的道德修养与个人意识等。
要想给孩子带来这些,必须要有好的老师,因此我认为在创客教育活动大范围扩展之前,我们应该要培养一批具有创新型的优秀教师引领着教育创客走向教育的美好未来,而我认为创新型教师具有如下基本特征:1、强烈的事业心、责任感和真挚的教育情感,2、掌握先进的教育理论与方法,3、有较强的教育科研能力,熟练运用现代教育技术的能力等。
创客培训机构管理系统采用了SpringBoot+MyBatis框架开发和MySQL数据库,前端采用基于JSP开发的界面,并通过这些技术来实现系统不同用户角色的相应功能,并运用UML面向对象分析和设计技术完成了系统的建模,最后实现了主要功能包括管理员:账号管理、师资信息管理、新闻管理、课程报名管理、学生排课管理、班级分配管理、学习跟踪管理、课程信息管理、系统管理,老师:课程信息、课程安排管理、个人中心,用户:课程信息管理、班级分配管理、个人中心等功能的创客培训机构管理系统。
【557】基于springboot创客培训机构管理系统源码和论文
关键词:创客 SpringBoot MyBatis MySQL
package com.spring.controller;
import com.spring.dao.XinwenxinxiMapper;
import com.spring.entity.Xinwenxinxi;
import com.spring.service.XinwenxinxiService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import tk.mybatis.mapper.entity.Example;
import util.Request;
import util.Info;
import dao.Query;
import java.util.*;
import com.spring.dao.PinglunMapper;
import com.spring.service.PinglunService;
import com.spring.entity.Pinglun;
/**
* 新闻信息 */
@Controller
public class XinwenxinxiController extends BaseController
{
@Autowired
private XinwenxinxiMapper dao;
@Autowired
private XinwenxinxiService service;
@Autowired
private PinglunMapper pinglunDao;
@Autowired
private PinglunService pinglunService;
/**
* 后台列表页
*
*/
@RequestMapping("/xinwenxinxi_list")
public String list()
{
// 检测是否有登录,没登录则跳转到登录页面
if(!checkLogin()){
return showError("尚未登录" , "./login.do");
}
String order = Request.get("order" , "id"); // 获取前台提交的URL参数 order 如果没有则设置为id
String sort = Request.get("sort" , "desc"); // 获取前台提交的URL参数 sort 如果没有则设置为desc
Example example = new Example(Xinwenxinxi.class); // 创建一个扩展搜索类
Example.Criteria criteria = example.createCriteria(); // 创建一个扩展搜索条件类
String where = " 1=1 "; // 创建初始条件为:1=1
where += getWhere(); // 从方法中获取url 上的参数,并写成 sql条件语句
criteria.andCondition(where); // 将条件写进上面的扩展条件类中
if(sort.equals("desc")){ // 判断前台提交的sort 参数是否等于 desc倒序 是则使用倒序,否则使用正序
example.orderBy(order).desc(); // 把sql 语句设置成倒序
}else{
example.orderBy(order).asc(); // 把 sql 设置成正序
}
int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page")); // 获取前台提交的URL参数 page 如果没有则设置为1
page = Math.max(1 , page); // 取两个数的最大值,防止page 小于1
List<Xinwenxinxi> list = service.selectPageExample(example , page , 12); // 获取当前页的行数
// 将列表写给界面使用
request.setAttribute("list" , list);
assign("orderby" , order); // 把当前排序结果写进前台
assign("sort" , sort); // 把当前排序结果写进前台
assign("where" , where); // 把当前条件写给前台
return "xinwenxinxi_list"; // 使用视图文件:WebRoot\xinwenxinxi_list.jsp
}
public String getWhere()
{
String where = " ";
// 以下也是一样的操作,判断是否符合条件,符合则写入sql 语句
if(!Request.get("biaoti").equals("")) {
where += " AND biaoti LIKE '%"+Request.get("biaoti")+"%' ";
}
if(!Request.get("fenlei").equals("")) {
where += " AND fenlei ='"+Request.get("fenlei")+"' ";
}
if(!Request.get("tianjiaren").equals("")) {
where += " AND tianjiaren LIKE '%"+Request.get("tianjiaren")+"%' ";
}
if(!Request.get("dianjishuai_start").equals("")) {
where += " AND dianjishuai >='"+Request.get("dianjishuai_start")+"' ";
}
if(!Request.get("dianjishuai_end").equals("")) {
where += " AND dianjishuai <= '"+Request.get("dianjishuai_end")+"' ";
}
if(!Request.get("neirong").equals("")) {
where += " AND neirong LIKE '%"+Request.get("neirong")+"%' ";
}
return where;
}
/**
* 添加人列表
*/
@RequestMapping("/xinwenxinxi_list_tianjiaren")
public String listtianjiaren()
{
// 检测是否有登录,没登录则跳转到登录页面
if(!checkLogin()){
return showError("尚未登录" , "./login.do");
}
String order = Request.get("order" , "id"); // 获取前台提交的URL参数 order 如果没有则设置为id
String sort = Request.get("sort" , "desc"); // 获取前台提交的URL参数 sort 如果没有则设置为desc
Example example = new Example(Xinwenxinxi.class); // 创建一个扩展搜索类
Example.Criteria criteria = example.createCriteria(); // 创建一个扩展搜索条件类
// 初始化一个条件,条件为:添加人=当前登录用户
String where = " tianjiaren='"+request.getSession().getAttribute("username")+"' ";
where += getWhere();
criteria.andCondition(where); // 将条件写入
if(sort.equals("desc")){ // 注释同list
example.orderBy(order).desc(); // 注释同list
}else{
example.orderBy(order).asc(); // 注释同list
}
int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page")); // 注释同list
page = Math.max(1 , page); // 注释同list
List<Xinwenxinxi> list = service.selectPageExample(example , page , 12);
request.setAttribute("list" , list);
assign("orderby" , order);
assign("sort" , sort);
assign("where" , where);
return "xinwenxinxi_list_tianjiaren";
}
/**
* 前台列表页
*
*/
@RequestMapping("/xinwenxinxilist")
public String index()
{
Example example = new Example(Xinwenxinxi.class);
Example.Criteria criteria = example.createCriteria();
String where = " 1=1 ";
where += getWhere();
criteria.andCondition(where);
int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page"));
page = Math.max(1 , page);
List<Xinwenxinxi> list = service.selectPageExample(example , page , 12);
request.setAttribute("list" , list);
request.setAttribute("where" , where);
return "xinwenxinxilist";
}
@RequestMapping("/xinwenxinxi_add")
public String add()
{
return "xinwenxinxi_add";
}
@RequestMapping("/xinwenxinxi_updt")
public String updt()
{
int id = Request.getInt("id");
// 获取行数据,并赋值给前台jsp页面
Xinwenxinxi mmm = service.find(id);
request.setAttribute("mmm" , mmm);
request.setAttribute("updtself" , 0);
return "xinwenxinxi_updt";
}
/**
* 添加内容
* @return
*/
@RequestMapping("/xinwenxinxiinsert")
public String insert()
{
String tmp="";
Xinwenxinxi post = new Xinwenxinxi(); // 创建实体类
// 设置前台提交上来的数据到实体类中
post.setBiaoti(Request.get("biaoti"));
post.setFenlei(Request.get("fenlei"));
post.setTupian(Request.get("tupian"));
post.setTianjiaren(Request.get("tianjiaren"));
post.setDianjishuai(Request.getInt("dianjishuai"));
post.setNeirong(util.DownloadRemoteImage.run(Request.get("neirong")));
post.setAddtime(Info.getDateStr()); // 设置添加时间
service.insert(post); // 插入数据
int charuid = post.getId().intValue();
return showSuccess("保存成功" , Request.get("referer").equals("") ? request.getHeader("referer") : Request.get("referer"));
}
/**
* 更新内容
* @return
*/
@RequestMapping("/xinwenxinxiupdate")
public String update()
{
// 创建实体类
Xinwenxinxi post = new Xinwenxinxi();
// 将前台表单数据填充到实体类
if(!Request.get("biaoti").equals(""))
post.setBiaoti(Request.get("biaoti"));
if(!Request.get("fenlei").equals(""))
post.setFenlei(Request.get("fenlei"));
if(!Request.get("tupian").equals(""))
post.setTupian(Request.get("tupian"));
if(!Request.get("tianjiaren").equals(""))
post.setTianjiaren(Request.get("tianjiaren"));
if(!Request.get("dianjishuai").equals(""))
post.setDianjishuai(Request.getInt("dianjishuai"));
if(!Request.get("neirong").equals(""))
post.setNeirong(util.DownloadRemoteImage.run(Request.get("neirong")));
post.setId(Request.getInt("id"));
service.update(post); // 更新数据
int charuid = post.getId().intValue();
if(Request.getInt("updtself") == 1){
return showSuccess("保存成功" , "xinwenxinxi_updtself.do");
}
return showSuccess("保存成功" , Request.get("referer")); // 弹出保存成功,并跳转到前台提交的 referer 页面
}
/**
* 后台详情
*/
@RequestMapping("/xinwenxinxi_detail")
public String detail()
{
int id = Request.getInt("id");
Xinwenxinxi map = service.find(id); // 根据前台url 参数中的id获取行数据
request.setAttribute("map" , map); // 把数据写到前台
return "xinwenxinxi_detail"; // 详情页面:WebRoot\xinwenxinxi_detail.jsp
}
/**
* 前台详情
*/
@RequestMapping("/xinwenxinxidetail")
public String detailweb()
{
int id = Request.getInt("id");
Xinwenxinxi map = service.find(id);
Query.execute("UPDATE xinwenxinxi SET dianjishuai=dianjishuai+1 WHERE id="+request.getParameter("id")+"");
int page = Math.max(Request.getInt("page"),1); // 把评论写到前台
Example example = new Example(Xinwenxinxi.class); // 创建搜索扩展类
Example.Criteria criteria = example.createCriteria();
criteria.andCondition("biao='xinwenxinxi' AND wenzhangid='"+id+"'"); // 写入搜索行
List<Pinglun> pinglun = pinglunService.selectPageExample(example,page,15); // 获取评论行
assign("pinglunList" , pinglun); // 写入评论到前台
request.setAttribute("map" , map);
return "xinwenxinxidetail"; // 前台详情页面:WebRoot\xinwenxinxidetail.jsp
}
/**
* 删除
*/
@RequestMapping("/xinwenxinxi_delete")
public String delete()
{
if(!checkLogin()){
return showError("尚未登录");
}
int id = Request.getInt("id"); // 根据id 删除某行数据
HashMap delMap = Query.make("xinwenxinxi").find(id);
service.delete(id);// 根据id 删除某行数据
return showSuccess("删除成功",request.getHeader("referer"));//弹出删除成功,并跳回上一页
}
}
package com.spring.controller;
import com.spring.dao.XueshengpaikeMapper;
import com.spring.entity.Xueshengpaike;
import com.spring.service.XueshengpaikeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import tk.mybatis.mapper.entity.Example;
import util.Request;
import util.Info;
import dao.Query;
import java.util.*;
import com.spring.entity.Kechengbaoming;
import com.spring.service.KechengbaomingService;
/**
* 学生排课
*/
@Controller
public class XueshengpaikeController extends BaseController {
@Autowired
private XueshengpaikeMapper dao;
@Autowired
private XueshengpaikeService service;
@Autowired
private KechengbaomingService serviceRead;
/**
* 后台列表页
*/
@RequestMapping("/xueshengpaike_list")
public String list() {
// 检测是否有登录,没登录则跳转到登录页面
if (!checkLogin()) {
return showError("尚未登录", "./login.do");
}
Example example = new Example(Xueshengpaike.class); // 创建一个扩展搜索类
Example.Criteria criteria = example.createCriteria(); // 创建一个扩展搜索条件类
String where = " 1=1 "; // 创建初始条件为:1=1
where += getWhere(); // 从方法中获取url 上的参数,并写成 sql条件语句
criteria.andCondition(where); // 将条件写进上面的扩展条件类中
int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page")); // 获取前台提交的URL参数 page 如果没有则设置为1
page = Math.max(1, page); // 取两个数的最大值,防止page 小于1
List<Xueshengpaike> list = service.selectPageExample(example, page, 12); // 获取当前页的行数
// 将列表写给界面使用
request.setAttribute("list", list);
assign("where", where); // 把当前条件写给前台
return "xueshengpaike_list"; // 使用视图文件:WebRoot\xueshengpaike_list.jsp
}
public String getWhere() {
String where = " ";
// 判断URL 参数kechengbaomingid是否大于0
if (Request.getInt("kechengbaomingid") > 0) {
// 大于0 则写入条件
where += " AND kechengbaomingid='" + Request.getInt("kechengbaomingid") + "' ";
}
// 以下也是一样的操作,判断是否符合条件,符合则写入sql 语句
if (!Request.get("kechengbianhao").equals("")) {
where += " AND kechengbianhao LIKE '%" + Request.get("kechengbianhao") + "%' ";
}
if (!Request.get("fenlei").equals("")) {
where += " AND fenlei ='" + Request.get("fenlei") + "' ";
}
if (!Request.get("kechengmingcheng").equals("")) {
where += " AND kechengmingcheng LIKE '%" + Request.get("kechengmingcheng") + "%' ";
}
if (!Request.get("gonghao").equals("")) {
where += " AND gonghao LIKE '%" + Request.get("gonghao") + "%' ";
}
if (!Request.get("xingming").equals("")) {
where += " AND xingming LIKE '%" + Request.get("xingming") + "%' ";
}
if (session.getAttribute("cx").equals("老师")) {
where += " AND gonghao='"+session.getAttribute("gonghao")+"' ";
}
return where;
}
/**
* 报名人列表
*/
@RequestMapping("/xueshengpaike_list_baomingren")
public String listbaomingren() {
// 检测是否有登录,没登录则跳转到登录页面
if (!checkLogin()) {
return showError("尚未登录", "./login.do");
}
String order = Request.get("order", "id"); // 获取前台提交的URL参数 order 如果没有则设置为id
String sort = Request.get("sort", "desc"); // 获取前台提交的URL参数 sort 如果没有则设置为desc
Example example = new Example(Xueshengpaike.class); // 创建一个扩展搜索类
Example.Criteria criteria = example.createCriteria(); // 创建一个扩展搜索条件类
// 初始化一个条件,条件为:报名人=当前登录用户
String where = " baomingren='" + request.getSession().getAttribute("username") + "' ";
where += getWhere();
criteria.andCondition(where); // 将条件写入
if (sort.equals("desc")) { // 注释同list
example.orderBy(order).desc(); // 注释同list
} else {
example.orderBy(order).asc(); // 注释同list
}
int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page")); // 注释同list
page = Math.max(1, page); // 注释同list
List<Xueshengpaike> list = service.selectPageExample(example, page, 12);
request.setAttribute("list", list);
assign("orderby", order);
assign("sort", sort);
assign("where", where);
return "xueshengpaike_list_baomingren";
}
@RequestMapping("/xueshengpaike_add")
public String add() {
int id = Request.getInt("id"); // 根据id 获取 课程报名模块中的数据
Kechengbaoming readMap = serviceRead.find(id);
// 将数据行写入给前台jsp页面
request.setAttribute("readMap", readMap);
return "xueshengpaike_add";
}
@RequestMapping("/xueshengpaike_updt")
public String updt() {
int id = Request.getInt("id");
// 获取行数据,并赋值给前台jsp页面
Xueshengpaike mmm = service.find(id);
request.setAttribute("mmm", mmm);
request.setAttribute("updtself", 0);
return "xueshengpaike_updt";
}
/**
* 添加内容
*
* @return
*/
@RequestMapping("/xueshengpaikeinsert")
public String insert() {
String tmp = "";
Xueshengpaike post = new Xueshengpaike(); // 创建实体类
// 设置前台提交上来的数据到实体类中
post.setKechengbianhao(Request.get("kechengbianhao"));
post.setFenlei(Request.get("fenlei"));
post.setKechengmingcheng(Request.get("kechengmingcheng"));
post.setBaomingren(Request.get("baomingren"));
post.setAnpairiqi(Request.get("anpairiqi"));
post.setShiduan(Request.get("shiduan"));
post.setAnpailaoshi(Request.getInt("anpailaoshi"));
post.setGonghao(Request.get("gonghao"));
post.setXingming(Request.get("xingming"));
post.setBeizhu(Request.get("beizhu"));
post.setKechengbaomingid(Request.getInt("kechengbaomingid"));
post.setAddtime(Info.getDateStr()); // 设置添加时间
service.insert(post); // 插入数据
int charuid = post.getId().intValue();
return showSuccess("保存成功", Request.get("referer").equals("") ? request.getHeader("referer") : Request.get("referer"));
}
/**
* 更新内容
*
* @return
*/
@RequestMapping("/xueshengpaikeupdate")
public String update() {
// 创建实体类
Xueshengpaike post = new Xueshengpaike();
// 将前台表单数据填充到实体类
if (!Request.get("kechengbianhao").equals(""))
post.setKechengbianhao(Request.get("kechengbianhao"));
if (!Request.get("fenlei").equals(""))
post.setFenlei(Request.get("fenlei"));
if (!Request.get("kechengmingcheng").equals(""))
post.setKechengmingcheng(Request.get("kechengmingcheng"));
if (!Request.get("baomingren").equals(""))
post.setBaomingren(Request.get("baomingren"));
if (!Request.get("anpairiqi").equals(""))
post.setAnpairiqi(Request.get("anpairiqi"));
if (!Request.get("shiduan").equals(""))
post.setShiduan(Request.get("shiduan"));
if (!Request.get("anpailaoshi").equals(""))
post.setAnpailaoshi(Request.getInt("anpailaoshi"));
if (!Request.get("gonghao").equals(""))
post.setGonghao(Request.get("gonghao"));
if (!Request.get("xingming").equals(""))
post.setXingming(Request.get("xingming"));
if (!Request.get("beizhu").equals(""))
post.setBeizhu(Request.get("beizhu"));
post.setId(Request.getInt("id"));
service.update(post); // 更新数据
int charuid = post.getId().intValue();
if (Request.getInt("updtself") == 1) {
return showSuccess("保存成功", "xueshengpaike_updtself.do");
}
return showSuccess("保存成功", Request.get("referer")); // 弹出保存成功,并跳转到前台提交的 referer 页面
}
/**
* 后台详情
*/
@RequestMapping("/xueshengpaike_detail")
public String detail() {
int id = Request.getInt("id");
Xueshengpaike map = service.find(id); // 根据前台url 参数中的id获取行数据
request.setAttribute("map", map); // 把数据写到前台
return "xueshengpaike_detail"; // 详情页面:WebRoot\xueshengpaike_detail.jsp
}
/**
* 删除
*/
@RequestMapping("/xueshengpaike_delete")
public String delete() {
if (!checkLogin()) {
return showError("尚未登录");
}
int id = Request.getInt("id"); // 根据id 删除某行数据
HashMap delMap = Query.make("xueshengpaike").find(id);
service.delete(id);// 根据id 删除某行数据
return showSuccess("删除成功", request.getHeader("referer"));//弹出删除成功,并跳回上一页
}
}