网站搭建说明flash网站开发教程

当前位置: 首页 > news >正文

网站搭建说明,flash网站开发教程,做网站要知道哪些代码,咸阳高端网站建设学生管理 近年来#xff0c;Java作为一门广泛应用于后端开发的编程语言#xff0c;具备了广泛的应用领域和丰富的开发资源。在前几天的博客中#xff0c;我们探讨了如何搭建前后端环境#xff0c;为接下来的开发工作打下了坚实的基础。今天#xff0c;我们将进一步扩展我…学生管理 近年来Java作为一门广泛应用于后端开发的编程语言具备了广泛的应用领域和丰富的开发资源。在前几天的博客中我们探讨了如何搭建前后端环境为接下来的开发工作打下了坚实的基础。今天我们将进一步扩展我们的项目并实现一个令人期待的功能——查询所有学生的信息。 这个功能对于学生管理系统来说至关重要。我们可以通过这个功能一次性查看系统中所有学生的信息包括他们的姓名、年龄、以及其他重要的个人数据。无论是学生导员、教工还是学生自己都可以方便地获取到所需的信息。让我们继续深入学习并实现这个功能吧 2.1 查询所有后端 2.1.2 分析 查询所有学生 条件查询班级、姓名模糊、年龄范围分页查询基本信息编号、姓名、年龄、生日、性别关联信息班级、选课数、选课详情 2.1.2 domain 1学生 package com.czxy.domain;import lombok.Data;import javax.persistence.Column; import javax.persistence.Id; import javax.persistence.Table; import javax.persistence.Transient; import java.util.Date; import java.util.List;/*** author 薛慕昭* description/ Table(nametb_student) public class Student {IdColumn(names_id)private Integer sid; //学生IDprivate String sname; //姓名private Integer age; //年龄private Date birthday; //生日private String gender; //性别Column(namec_id)private Integer cid; //所属班级id//多对一多个学生属于一个班级Transient //临时表示数据库没有对应列private Classes classes; //所属班级private String cityIds; //城市320000,321300,321322//多对多不同学生选修不同的课程Transient //临时表示数据库没有对应列private ListCourse courseList;Transient //临时表示数据库没有对应列private Integer courseCount; //选课数2班级 package com.czxy.domain;import javax.persistence.Column; import javax.persistence.Id; import javax.persistence.Table;/** author 薛慕昭* description/ Table(name tb_class) public class Classes {Idprivate Integer cid;private String cname; //班级名称Column(name teacher1_id)private int teacher1Id; //授课老师Column(name teacher2_id)private int teacher2Id; //助理老师Column(name teacher3_id)private int teacher3Id; //辅导员老师 3选课 package com.czxy.domain;import javax.persistence.Column; import javax.persistence.Id; import javax.persistence.Table;/** author 薛慕昭* description/ Table(name tb_course) public class Course {IdColumn(name c_id)private Integer cid;private String cname;Column(name desc)private String desc; 2.1.3 Vo package com.czxy.vo;/** author 薛慕昭* description/ public class StudentVo {private Integer classId; //班级idprivate String studentName; //学生姓名private Integer startAge; //开始年龄private Integer endAge; //结束年龄 2.1.4 dao 1学生 package com.czxy.mapper;import com.czxy.domain.Student; import tk.mybatis.mapper.common.Mapper;/** author 薛慕昭* description/ public interface StudentMapper extends MapperStudent { } 2班级 package com.czxy.mapper;import com.czxy.domain.Classes; import tk.mybatis.mapper.common.Mapper;/** author 薛慕昭* description/ public interface ClassesMapper extends MapperClasses { } 3选课 package com.czxy.mapper;import com.czxy.domain.Course; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import tk.mybatis.mapper.common.Mapper;import java.util.List;/** author 薛慕昭* description/ public interface CourseMapper extends MapperCourse {/** 查询指定学生的所有课程* param sid* return/Select(select c. from tb_course c, tb_student_course sc where c.c_id sc.c_id and sc.s_id #{sid})public ListCourse selectAllBySid(Param(sid) Integer sid); } 2.1.5 service 接口 package com.czxy.service;import com.czxy.domain.Student; import com.czxy.vo.StudentVo; import com.github.pagehelper.PageInfo;/*** author 薛慕昭* description/ public interface StudentService {/** 查询基本、分页、条件* param studentVo* param pageNum* param pageSize* return/PageInfoStudent condition(StudentVo studentVo, Integer pageNum, Integer pageSize); } 实现类 package com.czxy.service.impl;import com.czxy.domain.Classes; import com.czxy.domain.Course; import com.czxy.domain.Student; import com.czxy.mapper.ClassesMapper; import com.czxy.mapper.CourseMapper; import com.czxy.mapper.StudentMapper; import com.czxy.service.StudentService; import com.czxy.vo.StudentVo; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import tk.mybatis.mapper.entity.Example;import javax.annotation.Resource; import java.util.List;/** author 薛慕昭* description/ Service Transactional public class StudentServiceImpl implements StudentService {Resourceprivate StudentMapper studentMapper;Resourceprivate ClassesMapper classesMapper;Resourceprivate CourseMapper courseMapper;Overridepublic PageInfoStudent condition(StudentVo studentVo, Integer pageNum, Integer pageSize) {//1 拼凑条件// 1.0 获得条件对象Example studentExample new Example(Student.class);Example.Criteria studentCriteria studentExample.createCriteria();// 1.1 班级if(studentVo.getClassId() ! null) {studentCriteria.andEqualTo(cid, studentVo.getClassId());}// 1.2 姓名 不能为null不能为“” , %张%if(studentVo.getStudentName() ! null !.equals(studentVo.getStudentName())) {studentCriteria.andLike(sname, %studentVo.getStudentName()%);}// 1.3 年龄 30~50if(studentVo.getStartAge() ! null) {studentCriteria.andGreaterThanOrEqualTo(age, studentVo.getStartAge());}if(studentVo.getEndAge() ! null) {studentCriteria.andLessThanOrEqualTo(age, studentVo.getEndAge());}//2 分页PageHelper.startPage(pageNum, pageSize);//3.查询ListStudent studentList studentMapper.selectByExample(studentExample);//4 关联for(Student student : studentList) {// 4.1 班级信息Classes classes classesMapper.selectByPrimaryKey(student.getCid());student.setClasses(classes);// 查询学生选修的可成ListCourse courseList courseMapper.selectAllBySid(student.getSid());// 4.2 选课数student.setCourseCount(courseList.size());// 4.3 选课详情student.setCourseList(courseList);}//5 封装PageInfoStudent pageInfo new PageInfo(studentList);return pageInfo;} }
2.1.6 controller package com.czxy.controller;import com.czxy.domain.Student; import com.czxy.service.StudentService; import com.czxy.vo.StudentVo; import com.github.pagehelper.PageInfo; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.
;import javax.annotation.Resource;/*** author 薛慕昭* description*/ RestController RequestMapping(/student) public class StudentController {Resourceprivate StudentService studentService;PostMapping(/condition/{pageSize}/{pageNum})public ResponseEntityPageInfoStudent condition(RequestBody StudentVo studentVo,PathVariable(pageSize) Integer pageSize,PathVariable(pageNum) Integer pageNum) {//查询PageInfoStudent pageInfo studentService.condition(studentVo, pageNum, pageSize );//处理结果return ResponseEntity.ok(pageInfo);}} 2.1.7 测试 2.2 查询所有前端 2.2.1 需求 2.2.2 列表展示 templatediv!– 列表start –el-table:datapageInfo.liststripestylewidth: 100%el-table-columnpropsidfixedlabel学生IDwidth180/el-table-columnel-table-columnpropclasses.cnamefixedlabel班级名称width180/el-table-columnel-table-columnpropsnamelabel学生姓名width180/el-table-columnel-table-columnpropagelabel年龄width180/el-table-columnel-table-columnpropbirthdaylabel生日width180/el-table-columnel-table-columnpropgenderlabel性别width180template slot-scopescope{{scope.row.gender 1 ? 男: 女}}/template/el-table-columnel-table-columnpropcourseCountlabel选课数width180/el-table-columnel-table-columnlabel选课详情width300template slot-scopescopeel-tag v-for(course,index) in scope.row.courseList :keyindex{{course.cname}}/el-tag/template/el-table-columnel-table-columnwidth180fixedrightlabel操作template slot-scopescopeel-button sizemini编辑/el-buttonel-button sizemini typedanger删除/el-button/template/el-table-column/el-table!– 列表end –{{pageInfo}}/div /templatescript export default {data() {return {studentVo: { //查询条件classId: ,studentName: ,startAge: ,endAge: },pageInfo: { //分页条件pageNum: 1,pageSize: 2}}},methods: {async selectAllStudent() {//处理请求路径let url /student/condition/\({this.pageInfo.pageSize}/\){this.pageInfo.pageNum}//发送ajaxlet {data} await this.\(http.post(url, this.studentVo)//保存结果this.pageInfo data}},mounted() { //页面加载成功this.selectAllStudent()}, } /scriptstyle/style2.2.3 条件表单 页面加载成功后查询所有的班级 编写表单展示班级列表、绑定条件参数、绑定查询按钮 templatediv!-- 查询表单start --el-form :inlinetrue :modelstudentVo sizemini classdemo-form-inlineel-form-item label班级el-select v-modelstudentVo.classId clearable changeselectAllStudent placeholder请选择班级el-option v-for(classes,index) in classesList :keyindex :labelclasses.cname :valueclasses.cid/el-option/el-select/el-form-itemel-form-item label姓名el-input v-modelstudentVo.studentName keyup.enter.nativeselectAllStudent clearable placeholder请输入姓名/el-input/el-form-itemel-form-item label年龄el-col :span11el-input v-modelstudentVo.startAge clearable placeholder请输入开始年龄/el-input/el-colel-col classline :span2-/el-colel-col :span11el-input v-modelstudentVo.endAge clearable placeholder请输入结束年龄/el-input/el-col/el-form-itemel-form-itemel-button typeprimary clickselectAllStudent查询/el-button/el-form-item/el-form!-- 查询表单end --!-- 列表start --el-table:datapageInfo.liststripestylewidth: 100%el-table-columnpropsidfixedlabel学生IDwidth180/el-table-columnel-table-columnpropclasses.cnamefixedlabel班级名称width180/el-table-columnel-table-columnpropsnamelabel学生姓名width180/el-table-columnel-table-columnpropagelabel年龄width180/el-table-columnel-table-columnpropbirthdaylabel生日width180/el-table-columnel-table-columnpropgenderlabel性别width180template slot-scopescope{{scope.row.gender 1 ? 男: 女}}/template/el-table-columnel-table-columnpropcourseCountlabel选课数width180/el-table-columnel-table-columnlabel选课详情width300template slot-scopescopeel-tag v-for(course,index) in scope.row.courseList :keyindex{{course.cname}}/el-tag/template/el-table-columnel-table-columnwidth180fixedrightlabel操作template slot-scopescopeel-button sizemini编辑/el-buttonel-button sizemini typedanger删除/el-button/template/el-table-column/el-table!-- 列表end --{{pageInfo}}/div /templatescript export default {data() {return {studentVo: { //查询条件classId: ,studentName: ,startAge: ,endAge: },pageInfo: { //分页条件pageNum: 1,pageSize: 5},classesList: [], //所有班级}},methods: {async selectAllStudent() {//处理请求路径let url /student/condition/\){this.pageInfo.pageSize}/\({this.pageInfo.pageNum}//发送ajaxlet {data} await this.\)http.post(url, this.studentVo)//保存结果this.pageInfo data},async selectAllClasses() {let { data } await this.\(http.get(/classes)this.classesList data}},mounted() { //页面加载成功//查询所有学生this.selectAllStudent()//查询所有班级this.selectAllClasses()}, } /scriptstyle.line {text-align: center;} /style2.2.4 分页条 显示分页条 编写分页需要触发函数 templatediv!-- 查询表单start --el-form :inlinetrue :modelstudentVo sizemini classdemo-form-inlineel-form-item label班级el-select v-modelstudentVo.classId clearable changeselectAllStudent placeholder请选择班级el-option v-for(classes,index) in classesList :keyindex :labelclasses.cname :valueclasses.cid/el-option/el-select/el-form-itemel-form-item label姓名el-input v-modelstudentVo.studentName keyup.enter.nativeselectAllStudent clearable placeholder请输入姓名/el-input/el-form-itemel-form-item label年龄el-col :span11el-input v-modelstudentVo.startAge clearable placeholder请输入开始年龄/el-input/el-colel-col classline :span2-/el-colel-col :span11el-input v-modelstudentVo.endAge clearable placeholder请输入结束年龄/el-input/el-col/el-form-itemel-form-itemel-button typeprimary clickselectAllStudent查询/el-button/el-form-item/el-form!-- 查询表单end --!-- 列表start --el-table:datapageInfo.liststripestylewidth: 100%el-table-columnpropsidfixedlabel学生IDwidth180/el-table-columnel-table-columnpropclasses.cnamefixedlabel班级名称width180/el-table-columnel-table-columnpropsnamelabel学生姓名width180/el-table-columnel-table-columnpropagelabel年龄width180/el-table-columnel-table-columnpropbirthdaylabel生日width180/el-table-columnel-table-columnpropgenderlabel性别width180template slot-scopescope{{scope.row.gender 1 ? 男: 女}}/template/el-table-columnel-table-columnpropcourseCountlabel选课数width180/el-table-columnel-table-columnlabel选课详情width300template slot-scopescopeel-tag v-for(course,index) in scope.row.courseList :keyindex{{course.cname}}/el-tag/template/el-table-columnel-table-columnwidth180fixedrightlabel操作template slot-scopescopeel-button sizemini编辑/el-buttonel-button sizemini typedanger删除/el-button/template/el-table-column/el-table!-- 列表end --!-- 分页条start --el-paginationsize-changehandleSizeChangecurrent-changehandleCurrentChange:current-pagepageInfo.pageNum:page-sizes[1,2,3,5,10]:page-sizepageInfo.pageSizelayouttotal, sizes, prev, pager, next, jumper:totalpageInfo.total/el-pagination!-- 分页条end --/div /templatescript export default {data() {return {studentVo: { //查询条件classId: ,studentName: ,startAge: ,endAge: },pageInfo: { //分页条件pageNum: 1, //当前页第几页pageSize: 2 //每页个数},classesList: [], //所有班级}},methods: {async selectAllStudent() {//处理请求路径let url /student/condition/\){this.pageInfo.pageSize}/\({this.pageInfo.pageNum}//发送ajaxlet {data} await this.\)http.post(url, this.studentVo)//保存结果this.pageInfo data},async selectAllClasses() {let { data } await this.\(http.get(/classes)this.classesList data},handleSizeChange(val) {//修改 每页个数//console.log(每页 \){val} 条);this.pageInfo.pageSize valthis.pageInfo.pageNum 1//再查询this.selectAllStudent()},handleCurrentChange(val) {//修改当前页//console.log(当前页: \({val});this.pageInfo.pageNum val//再查询this.selectAllStudent()}},mounted() { //页面加载成功//查询所有学生this.selectAllStudent()//查询所有班级this.selectAllClasses()}, } /scriptstyle.line {text-align: center;} /style通过本文的学习我们成功地实现了学生管理项目的查询所有功能。我们通过构建一个学生管理系统并添加了测试数据以模拟真实的学生信息。通过调用系统提供的showAllStudents()方法我们可以轻松地查看并打印所有学生的信息。这个功能为学生管理系统增添了强大的查询能力使得管理工作更加高效和便捷。 在今天的学习中我们不仅巩固了Java的基础知识还深入了解了如何处理和展示大量的数据。随着项目的发展我们将继续探索更多有趣和实用的功能并逐步建立一个完整的学生管理系统。希望本文对你有所启发和帮助如果你有任何疑问或建议请随时与我们分享。期待下一篇博客继续探索Java开发的奇妙世界 SizeChange(val) {//修改 每页个数//console.log(每页 \){val} 条);this.pageInfo.pageSize valthis.pageInfo.pageNum 1//再查询this.selectAllStudent()},handleCurrentChange(val) {//修改当前页//console.log(当前页: ${val});this.pageInfo.pageNum val//再查询this.selectAllStudent()}},mounted() { //页面加载成功//查询所有学生this.selectAllStudent()//查询所有班级this.selectAllClasses()}, } /scriptstyle.line {text-align: center;} /style通过本文的学习我们成功地实现了学生管理项目的查询所有功能。我们通过构建一个学生管理系统并添加了测试数据以模拟真实的学生信息。通过调用系统提供的showAllStudents()方法我们可以轻松地查看并打印所有学生的信息。这个功能为学生管理系统增添了强大的查询能力使得管理工作更加高效和便捷。 在今天的学习中我们不仅巩固了Java的基础知识还深入了解了如何处理和展示大量的数据。随着项目的发展我们将继续探索更多有趣和实用的功能并逐步建立一个完整的学生管理系统。希望本文对你有所启发和帮助如果你有任何疑问或建议请随时与我们分享。期待下一篇博客继续探索Java开发的奇妙世界