Java项目学生管理系统二查询所有

学生管理

近年来,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(name="tb_student")
public class Student {@Id@Column(name="s_id")private Integer sid;            //学生IDprivate String sname;           //姓名private Integer age;            //年龄private Date birthday;          //生日private String gender;          //性别@Column(name="c_id")private Integer cid;            //所属班级id//多对一:多个学生属于一个班级@Transient                     //临时,表示数据库没有对应列private Classes classes;        //所属班级private String cityIds;         //城市:320000,321300,321322//多对多:不同学生选修不同的课程@Transient                     //临时,表示数据库没有对应列private List<Course> 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 {@Id@Column(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 Mapper<Student> {
}
2)班级
package com.czxy.mapper;import com.czxy.domain.Classes;
import tk.mybatis.mapper.common.Mapper;/*** @author 薛慕昭* @description*/
public interface ClassesMapper extends Mapper<Classes> {
}
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 Mapper<Course> {/*** 查询指定学生的所有课程* @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 List<Course> 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*/PageInfo<Student> 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 PageInfo<Student> 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.查询List<Student> studentList = studentMapper.selectByExample(studentExample);//4 关联for(Student student : studentList) {// 4.1 班级信息Classes classes = classesMapper.selectByPrimaryKey(student.getCid());student.setClasses(classes);// 查询学生选修的可成List<Course> courseList = courseMapper.selectAllBySid(student.getSid());// 4.2 选课数student.setCourseCount(courseList.size());// 4.3 选课详情student.setCourseList(courseList);}//5 封装PageInfo<Student> 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 ResponseEntity<PageInfo<Student>> condition(@RequestBody StudentVo studentVo,@PathVariable("pageSize") Integer pageSize,@PathVariable("pageNum") Integer pageNum) {//查询PageInfo<Student> pageInfo = studentService.condition(studentVo, pageNum, pageSize );//处理结果return ResponseEntity.ok(pageInfo);}}

2.1.7 测试

在这里插入图片描述

2.2 查询所有:前端

2.2.1 需求

在这里插入图片描述

在这里插入图片描述

2.2.2 列表展示

<template><div><!-- 列表start --><el-table:data="pageInfo.list"stripestyle="width: 100%"><el-table-columnprop="sid"fixedlabel="学生ID"width="180"></el-table-column><el-table-columnprop="classes.cname"fixedlabel="班级名称"width="180"></el-table-column><el-table-columnprop="sname"label="学生姓名"width="180"></el-table-column><el-table-columnprop="age"label="年龄"width="180"></el-table-column><el-table-columnprop="birthday"label="生日"width="180"></el-table-column><el-table-columnprop="gender"label="性别"width="180"><template slot-scope="scope">{{scope.row.gender == 1 ? '男': '女'}}</template></el-table-column><el-table-columnprop="courseCount"label="选课数"width="180"></el-table-column><el-table-columnlabel="选课详情"width="300"><template slot-scope="scope"><el-tag v-for="(course,index) in scope.row.courseList" :key="index">{{course.cname}}</el-tag></template></el-table-column><el-table-columnwidth="180"fixed="right"label="操作"><template slot-scope="scope"><el-button size="mini">编辑</el-button><el-button size="mini" type="danger">删除</el-button></template></el-table-column></el-table><!-- 列表end -->{{pageInfo}}</div>
</template><script>
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()},
}
</script><style></style>

2.2.3 条件表单

  • 页面加载成功后,查询所有的班级

在这里插入图片描述

  • 编写表单:展示班级列表、绑定条件参数、绑定查询按钮

在这里插入图片描述

在这里插入图片描述

<template><div><!-- 查询表单start --><el-form :inline="true" :model="studentVo" size="mini" class="demo-form-inline"><el-form-item label="班级"><el-select v-model="studentVo.classId" clearable @change="selectAllStudent" placeholder="请选择班级"><el-option v-for="(classes,index) in classesList" :key="index" :label="classes.cname" :value="classes.cid"></el-option></el-select></el-form-item><el-form-item label="姓名"><el-input v-model="studentVo.studentName" @keyup.enter.native="selectAllStudent" clearable placeholder="请输入姓名"></el-input></el-form-item><el-form-item label="年龄"><el-col :span="11"><el-input v-model="studentVo.startAge" clearable placeholder="请输入开始年龄"></el-input></el-col><el-col class="line" :span="2">-</el-col><el-col :span="11"><el-input v-model="studentVo.endAge" clearable placeholder="请输入结束年龄"></el-input></el-col></el-form-item><el-form-item><el-button type="primary" @click="selectAllStudent">查询</el-button></el-form-item></el-form><!-- 查询表单end --><!-- 列表start --><el-table:data="pageInfo.list"stripestyle="width: 100%"><el-table-columnprop="sid"fixedlabel="学生ID"width="180"></el-table-column><el-table-columnprop="classes.cname"fixedlabel="班级名称"width="180"></el-table-column><el-table-columnprop="sname"label="学生姓名"width="180"></el-table-column><el-table-columnprop="age"label="年龄"width="180"></el-table-column><el-table-columnprop="birthday"label="生日"width="180"></el-table-column><el-table-columnprop="gender"label="性别"width="180"><template slot-scope="scope">{{scope.row.gender == 1 ? '男': '女'}}</template></el-table-column><el-table-columnprop="courseCount"label="选课数"width="180"></el-table-column><el-table-columnlabel="选课详情"width="300"><template slot-scope="scope"><el-tag v-for="(course,index) in scope.row.courseList" :key="index">{{course.cname}}</el-tag></template></el-table-column><el-table-columnwidth="180"fixed="right"label="操作"><template slot-scope="scope"><el-button size="mini">编辑</el-button><el-button size="mini" type="danger">删除</el-button></template></el-table-column></el-table><!-- 列表end -->{{pageInfo}}</div>
</template><script>
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()},
}
</script><style>.line {text-align: center;}
</style>

2.2.4 分页条

  • 显示分页条

    在这里插入图片描述

  • 编写分页需要触发函数

    在这里插入图片描述

<template><div><!-- 查询表单start --><el-form :inline="true" :model="studentVo" size="mini" class="demo-form-inline"><el-form-item label="班级"><el-select v-model="studentVo.classId" clearable @change="selectAllStudent" placeholder="请选择班级"><el-option v-for="(classes,index) in classesList" :key="index" :label="classes.cname" :value="classes.cid"></el-option></el-select></el-form-item><el-form-item label="姓名"><el-input v-model="studentVo.studentName" @keyup.enter.native="selectAllStudent" clearable placeholder="请输入姓名"></el-input></el-form-item><el-form-item label="年龄"><el-col :span="11"><el-input v-model="studentVo.startAge" clearable placeholder="请输入开始年龄"></el-input></el-col><el-col class="line" :span="2">-</el-col><el-col :span="11"><el-input v-model="studentVo.endAge" clearable placeholder="请输入结束年龄"></el-input></el-col></el-form-item><el-form-item><el-button type="primary" @click="selectAllStudent">查询</el-button></el-form-item></el-form><!-- 查询表单end --><!-- 列表start --><el-table:data="pageInfo.list"stripestyle="width: 100%"><el-table-columnprop="sid"fixedlabel="学生ID"width="180"></el-table-column><el-table-columnprop="classes.cname"fixedlabel="班级名称"width="180"></el-table-column><el-table-columnprop="sname"label="学生姓名"width="180"></el-table-column><el-table-columnprop="age"label="年龄"width="180"></el-table-column><el-table-columnprop="birthday"label="生日"width="180"></el-table-column><el-table-columnprop="gender"label="性别"width="180"><template slot-scope="scope">{{scope.row.gender == 1 ? '男': '女'}}</template></el-table-column><el-table-columnprop="courseCount"label="选课数"width="180"></el-table-column><el-table-columnlabel="选课详情"width="300"><template slot-scope="scope"><el-tag v-for="(course,index) in scope.row.courseList" :key="index">{{course.cname}}</el-tag></template></el-table-column><el-table-columnwidth="180"fixed="right"label="操作"><template slot-scope="scope"><el-button size="mini">编辑</el-button><el-button size="mini" type="danger">删除</el-button></template></el-table-column></el-table><!-- 列表end --><!-- 分页条start --><el-pagination@size-change="handleSizeChange"@current-change="handleCurrentChange":current-page="pageInfo.pageNum":page-sizes="[1,2,3,5,10]":page-size="pageInfo.pageSize"layout="total, sizes, prev, pager, next, jumper":total="pageInfo.total"></el-pagination><!-- 分页条end --></div>
</template><script>
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()},
}
</script><style>.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()},
}
</script><style>.line {text-align: center;}
</style>

通过本文的学习,我们成功地实现了学生管理项目的查询所有功能。我们通过构建一个学生管理系统,并添加了测试数据,以模拟真实的学生信息。通过调用系统提供的showAllStudents()方法,我们可以轻松地查看并打印所有学生的信息。这个功能为学生管理系统增添了强大的查询能力,使得管理工作更加高效和便捷。

在今天的学习中,我们不仅巩固了Java的基础知识,还深入了解了如何处理和展示大量的数据。随着项目的发展,我们将继续探索更多有趣和实用的功能,并逐步建立一个完整的学生管理系统。希望本文对你有所启发和帮助,如果你有任何疑问或建议,请随时与我们分享。期待下一篇博客,继续探索Java开发的奇妙世界!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/187026.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

距离向量路由协议——RIP

目录 动态路由动态路由简介为什么需要动态路由动态路由基本原理路由协议的分类 距离向量路由协议RIPv1RIP简介RIPv1的主要特征RIPv1的基本配置RIPv1配置案例被动接口单播更新使用子网地址 RIPv2RIPv2的基本配置RIPv2配置案例 RIPv2的高级配置与RIPv1的兼容性手工路由汇总触发更…

快速了解ChatGPT(大语言模型)

目录 GPT原理&#xff1a;文字接龙&#xff0c;输入一个字&#xff0c;后面会接最有可能出现的文字。 GPT4 学会提问&#xff1a;发挥语言模型的最大能力 参考李宏毅老师的课快速了解大语言模型做的笔记&#xff1a; Lee老师幽默的开场&#xff1a; GPT&#xff1a;chat Ge…

高等数学积分关系定理(格林公式、高斯公式、斯托克斯公式)的理解

1 格林公式、高斯公式、斯托克斯公式 1.1 格林公式&#xff08;Green formula&#xff09; 1.1.1 格林公式例题 1.2 高斯公式&#xff08;Gauss formula&#xff09; 1.2.1 高斯公式例题1 1.2.2 高斯公式例题2 1.3 斯托克斯公式&#xff08;Stokes formula&#xff09; 1.3.1 …

Git修改远程仓库名称

1、先直接在远程点仓库名&#xff0c;然后左侧菜单栏找settings-general&#xff0c;然后直接修改工程名&#xff0c;保存即可。 2、还是在settings-general下&#xff0c;下拉找到Advanced点击Expand展开&#xff0c;然后下拉到最底部 在Change path里填入新的项目名称&#x…

GCN01——Ubuntu中设置vivado编辑器为vscode

确定vscode位置 在命令行中输入 which code得到文件地址 进入文件夹后可看到&#xff0c;这是个链接文件&#xff0c;不过无所谓&#xff0c;就用这个地址就行 设置Text Editor 打开setting选择右侧text editor 这里说明了如何进行设置 将自己的地址加进去就行 /usr/share…

Echarts 设置数据条颜色 宽度

设置数据条颜色&#xff08;推荐&#xff09; let yData [{value: 500,time: 2012-11-12,itemStyle: //设置数据条颜色{normal: { color: red }}},{value: 454,time: 2020-5-17},{value: 544,time: 2022-1-22},{value: 877,time: 2013-1-30}, {value: 877,time: 2012-11-12}]…

亚马逊云科技:探索未来云计算之窗

云计算技术已经成为现代科技领域中至关重要的一个环节&#xff0c;它为各种行业提供了高效、灵活、可扩展的计算和数据存储解决方案。而在这个领域中&#xff0c;亚马逊云科技&#xff08;Amazon Web Services&#xff0c;AWS&#xff09;以其卓越的技术创新和广泛的云服务覆盖…

近期知识点随笔

菜单查询&#xff08;编写权限时的细节&#xff09; 菜单查询list为了侧边框展示更完整&#xff08;不报空指针&#xff09; 登录时&#xff08;用户名&#xff09;查询出多个结果&#xff08;保证用户名唯一&#xff09; 文件上传 前端 对权限与菜单绑定的修改&#xff08;实…

(三)基于高尔夫优化算法GOA求解无人机三维路径规划研究(MATLAB代码)

一、无人机模型简介&#xff1a; 单个无人机三维路径规划问题及其建模_IT猿手的博客-CSDN博客 参考文献&#xff1a; [1]胡观凯,钟建华,李永正,黎万洪.基于IPSO-GA算法的无人机三维路径规划[J].现代电子技术,2023,46(07):115-120 二、高尔夫优化算法GOA简介 高尔夫优化算法…

Win Server 2019远程桌面服务部署

一、添加远程桌面授权服务 服务器管理 - 添加角色和功能打开“添加角色和功能向导”窗口&#xff0c;选择基于角色或给予功能安装&#xff1a; 打开服务器管理&#xff0c;打开角色和功能&#xff0c;添加远程回话主机和远程桌面授权 image.png 以上配置完成后使用期限为120…

月度产品更新(11月):数据同步功能上线,配置更简单

为了满足用户不断增长的需求&#xff0c;我们持续努力提升产品的功能和性能&#xff0c;以更好地支持用户的工作。 数环通11月的最新产品更新已经正式发布&#xff0c;带来了一系列强大的功能&#xff0c;以提升您的工作效率和系统的可靠性。 更新快速预览 新增&优化功能&a…

【开源】基于Vue.js的超市账单管理系统的设计和实现

项目编号&#xff1a; S 032 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S032&#xff0c;文末获取源码。} 项目编号&#xff1a;S032&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统设计3.1 总体设计3.2 前端设计3…

java springboot通过application配置文件生成随机值并控制范围

我们找到 项目的 application 配置文件 这里我们还是习惯用 yml格式的 我们在配置文件中 写出 ${random.} 的时候 他就会将所有可配置的随机类型都提示出来了 有 整数 长整星 字符串 uuid 这里 我们来个模板 testcase:book:id: ${random.int}name: ${random.value}date: ${r…

时序预测 | Python实现TCN时间卷积神经网络价格预测

时序预测 | Python实现TCN时间卷积神经网络时间序列预测 目录 时序预测 | Python实现TCN时间卷积神经网络时间序列预测预测效果基本介绍模型描述程序设计参考资料预测效果 基本介绍 时间卷积网络,TCN。 利用CNN技术处理时间序列数据。 卷基础层有三种,第一种是一维CNN,用于输…

C语言每日一题(42)删除链表的倒数第N个结点

力扣网 19 删除链表的倒数第N个结点 题目描述 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; 输入&#xff1a;head …

稳定的音频来了 — 使用人工智能创作音乐(for free)

今天&#xff0c;以稳定扩散&#xff08;Stable Diffusion&#xff09;和StableLM等开源AI工具和模型而闻名的Stability AI公司推出了其首个音乐和声音生成AI产品——StableAudio。音乐产业以其难以打入而闻名。即使您拥有才华和动力&#xff0c;您仍然需要创作和制作音乐所需的…

tornado模版注入 [护网杯 2018]easy_tornado 1

打开题目 打开flag.txt 告诉我们flag在 /fllllllllllllag下 打开welcome.txt 我们看到了render渲染函数&#xff0c;联想到ssti 打开hints.txt 然后我们留意到每个打开url上面都有filehash 告诉我们如果想要访问/fllllllllllllag下的flag文件&#xff0c;是需要filehash这个GE…

二、shell编程快速入门

目录 1、入门示例 2、解释器 3、shell脚本执行方式 3.1 方式一&#xff1a;sh执行脚本 3.2 方式二&#xff1a;工作目录执行 3.3 方式三&#xff1a;绝对路径执行 4、shell的数据类型 4.1 字符串 4.2 整数型 1、入门示例 以下所有操作都在/export/shell目录下进行&am…

dapper+mysql查询报Error parsing column 0 (Id=<null>)

之前的分页接口都是正常的&#xff0c;突然就报错了Error parsing column 0 (Id<null>) {"error": {"code": null,"message": "Error parsing column 0 (Id<null>)","details": "DataException: Error pa…

【Web】UUCTF 2022 新生赛 个人复现

目录 ①websign ②ez_rce ③ez_upload ④ez_unser ⑤ezsql ⑥ezpop ⑦funmd5 ⑧phonecode ⑨ezrce ①websign 右键打不开&#xff0c;直接抓包发包看源码 ②ez_rce “反引号” 在PHP中会被当作SHELL命令执行 ?codeprintf(l\s /); ?codeprintf(ta\c /ffffffffffl…