Teaching management system based on JAVA SpringBoot and Vue

        With the deepening and extensive application of information technology in management, the implementation technology of management information system is becoming more and more mature. , To organize internal activities efficiently, it is necessary to establish a system when managing information according to its own characteristics. It is an integral part of educational institutions, and its content is crucial to school decision makers and managers. It can provide users with sufficient information and fast query methods, effectively help schools and teachers understand the situation of students, and serve students To provide query of grades and teaching, there are many shortcomings in the use of artificial life information management in the traditional mode.

        For example, low efficiency, poor security, and long time will generate a large number of files and data, which are difficult to discover, update, and maintain. This situation makes it difficult for school administrators to manage student information and seriously affects the work efficiency of educators. With the continuous advancement of science and technology, computer science is becoming more and more mature, and increasingly mature computer technology has replaced the traditional manual mode. Realized the modern management of student information. Its powerful functions have been highly recognized by people. It has entered various fields of human society and is playing an increasingly important role. As a part of computer applications, using computers to manage student information has incomparable advantages in manual management. Search Speed, search convenience, easy modification, reliability, storage capacity, data processing speed, confidentiality, long life, low cost, and ease of printing. It is also an important condition for the school's scientific and standardized management to be in line with the world. The computer-made student information management system can communicate the latest achievements of students to parents through a powerful network, which is conducive to the information interaction between the school and parents and the teaching of the school. Therefore it is necessary to develop such management software.

 

 

Implemented functions:

There are three roles of administrator, teacher and student;

Announcement management, student management, teacher management, course management, performance management, course selection and other functions.

 

 

Technologies used:

Backend: java language, SpringBoot framework, MySQL database, Maven dependency management, etc.;

Front end: vue, etc.

Part of the code display

<template>
  <div>
    <el-table
        :data="tableData"
        border
        stripe
        style="width: 100%">
      <el-table-column
          fixed
          prop="cid"
          label="课程号"
          width="150">
      </el-table-column>
      <el-table-column
          prop="cname"
          label="课程名"
          width="150">
      </el-table-column>
      <el-table-column
          fixed
          prop="tid"
          label="工号"
          width="100">
      </el-table-column>
      <el-table-column
          prop="tname"
          label="教师名"
          width="100">
      </el-table-column>
      <el-table-column
          fixed
          prop="sid"
          label="学号"
          width="100">
      </el-table-column>
      <el-table-column
          prop="sname"
          label="学生名"
          width="100">
      </el-table-column>
      <el-table-column
          prop="grade"
          label="成绩"
          width="100">
      </el-table-column>
      <el-table-column
          prop="term"
          label="学期"
          width="100">
      </el-table-column>
      <el-table-column
          label="操作"
          width="100">
        <template slot-scope="scope">
          <el-popconfirm
              confirm-button-text='删除'
              cancel-button-text='取消'
              icon="el-icon-info"
              icon-color="red"
              title="删除不可复原"
              @confirm="deleteTeacher(scope.row)"
          >
            <el-button slot="reference" type="text" size="small">删除</el-button>
          </el-popconfirm>
          <el-button @click="editor(scope.row)" type="text" size="small">编辑</el-button>
        </template>
      </el-table-column>
    </el-table>
    <el-pagination
        background
        layout="prev, pager, next"
        :total="total"
        :page-size="pageSize"
        @current-change="changePage"
    >
    </el-pagination>
  </div>
</template>

<script>
export default {
  methods: {
    select(row) {
      console.log(row)
    },
    deleteTeacher(row) {
      const that = this
      console.log(row)
      const sid = row.sid
      const cid = row.cid
      const tid = row.tid
      const term = row.term
      axios.get("http://localhost:10086/SCT/deleteById/" + sid + '/' + cid + '/' + tid + '/' + term).then(function (resp) {
        console.log(resp)
        if (resp.data === true) {
          that.$message({
            showClose: true,
            message: '删除成功',
            type: 'success'
          });
          window.location.reload()
        }
        else {
          that.$message({
            showClose: true,
            message: '删除出错,请查询数据库连接',
            type: 'error'
          });
        }
      }).catch(function (error) {
        that.$message({
          showClose: true,
          message: '删除出错,存在外键依赖',
          type: 'error'
        });
      })
    },
    changePage(page) {
      page = page - 1
      const that = this
      let start = page * that.pageSize, end = that.pageSize * (page + 1)
      let length = that.tmpList.length
      let ans = (end < length) ? end : length
      that.tableData = that.tmpList.slice(start, ans)
    },
    editor(row) {
      this.$router.push({
        path: '/editorGradeCourse',
        query: {
          cid: row.cid,
          tid: row.tid,
          sid: row.sid,
          term: row.term
        }
      })
    }
  },
  data() {
    return {
      tableData: null,
      pageSize: 10,
      total: null,
      tmpList: null,
    }
  },
  props: {
    ruleForm: Object,
  },
  watch: {
    ruleForm: {
      handler(newRuleForm, oldRuleForm) {
        console.log("组件监听 form")
        console.log(newRuleForm)
        const that = this
        that.tmpList = null
        that.total = null
        that.tableData = null
        axios.post("http://localhost:10086/SCT/findBySearch", newRuleForm).then(function (resp) {
          console.log("查询结果:");
          console.log(resp)
          that.tmpList = resp.data
          that.total = resp.data.length
          let start = 0, end = that.pageSize
          let length = that.tmpList.length
          let ans = (end < length) ? end : length
          that.tableData = that.tmpList.slice(start, ans)
        })
      },
      deep: true,
      immediate: true
    }
  },
}
</script>

 

Teaching management and educational administration system based on JAVA SpringBoot and Vue

Guess you like

Origin blog.csdn.net/qq_28245905/article/details/131221026