笔记学习,记录步骤7与步骤8中出现的错误

目录

【5 分】步骤 1:项目准备

【10 分】步骤 2:完成实体类 Info

【10 分】步骤 3:完成 Info 的 toString 方法

【10 分】步骤 4:完成 Score

【10 分】步骤 5:完成 SSDaoImpl 的 queryInfo 方法

【10 分】步骤 6:继续完善 SSDaoImpl 类

【15 分】步骤 7:继续完善 SBDaoImpl 类

【15 分】步骤 8:继续完善 SSDaoImpl 类

【15 分】步骤 9:继续完善 SSDaoImpl 类


【5 分】步骤 1:项目准备

复制粘贴即可

【10 分】步骤 2:完成实体类 Info

    //补充完成该类的含参构造方法public Info(String id, String name, int age, String sex, String provice) {}

需求:补充有参构造函数

 //补充完成该类的含参构造方法public Info(String id, String name, int age, String sex, String provice) {this.id = id;this.name = name;this.age = age;this.sex = sex;this.provice = provice;}

【10 分】步骤 3:完成 Info 的 toString 方法

    // 请修改该方法,以保证打印对象时输出格式如下:// {id:"001";name:"zs";age:20;sex:"男";provice:"四川"}@Overridepublic String toString() {return "";}

答案

 public String toString() {return "{id:\""+id+"\";name:\""+name+"\";age:"+age+";sex:\""+sex+"\";provice:\""+provice+"\"}";}

【10 分】步骤 4:完成 Score

    // 缺失代码:请补全以下方法,要求英语成绩的范围在:0<=num<150 之间// 当参数在规定范围外时,不做任何动作public void setEnglish(int english) {}

答案

 public void setEnglish(int english) {if(english >= 0 && english < 150){this.english = english;}}

【10 分】步骤 5:完成 SSDaoImpl 的 queryInfo 方法

    /*** 依据学生考号查询学生信息* @param id 学生考号* @return 有的话返回学生对象,没有的话返回null*/public Info queryInfo(String id){// 请补全sql语句String sql = "###";Info i = infoUtil.getOne(sql, Info.class, id);return i;}

答案

 public Info queryInfo(String id){// 请补全sql语句String sql = "select * from info where id=?";Info i = infoUtil.getOne(sql, Info.class, id);return i;}

【10 分】步骤 6:继续完善 SSDaoImpl 类

    /*** 依据学生考号查询学生成绩,返回4门成绩之和* @param id 学生考号* @return 返回4门成绩之和*/public int querySum(String id){// 请补全sql语句String sql = "###";Score s = infoUtil.getOne(sql, Score.class, id);int sum = s.getChinese() + s.getMaths() + s.getEnglish() + s.getComposite();return sum;}

答案

 public int querySum(String id){// 请补全sql语句String sql = "select * from score where id = ?";Score s = scoreUtil.getOne(sql, Score.class, id);int sum = s.getChinese() + s.getMaths() + s.getEnglish() + s.getComposite();return sum;}

【15 分】步骤 7:继续完善 SBDaoImpl 类

    /*** 依据学生姓名查询学生成绩,返回4门成绩之和* @param name 学生姓名* @return 返回4门成绩之和*/public int querySumByName(String name){// 请补全sql语句String sql = "###";Score s = scoreUtil.getOne(sql, Score.class, name);int sum = s.getChinese() + s.getMaths() + s.getEnglish() + s.getComposite();return sum;}

这里是通过info表的name获取到id,然后通过id去查找到四门的成绩

答案

                String sql_in = "select * from info where name = ?";Info in = infoUtil.getOne(sql_in, Info.class, name);String sql_sc = "select * from score where id="+in.getId();Score sc = scoreUtil.getOne(sql_sc, Score.class);int sum = sc.getChinese() + sc.getMaths() + sc.getEnglish() + sc.getComposite();return sum;

这个代码在实验13是可以通过的,但是不够完整,如果说找不到人或者找到人没成绩,那就要判断是不是null

                // 请补全sql语句String sql_in = "select * from info where name = ?";Info in = infoUtil.getOne(sql_in, Info.class, name);if (in != null){String sql_sc = "select * from score where id="+in.getId();Score sc = scoreUtil.getOne(sql_sc, Score.class);if(sc != null){int sum = sc.getChinese() + sc.getMaths() + sc.getEnglish() + sc.getComposite();return sum;}} return 0;

(这里是用了分布查询,当然还可以通过子查询查询到数据)

============子查询================

 public int querySumByName(String name){// 请补全sql语句String sql = "select * from score where id = (select id from info where name = ?)";Score s = scoreUtil.getOne(sql, Score.class, name);int sum = s.getChinese() + s.getMaths() + s.getEnglish() + s.getComposite();return sum;}

【15 分】步骤 8:继续完善 SSDaoImpl 类

    /*** 查询4门成绩之和的最大值* @return 返回最大值*/public int queryMaxSum(){// 请补全sql语句String sql = "###";Score s = scoreUtil.getOne(sql, Score.class);int sum = s.getChinese() + s.getMaths() + s.getEnglish() + s.getComposite();return sum;}

这里查询的四门成绩最大值,是查询几个学生里面的总分最高的

答案

                // 请补全sql语句String sql = "select * from score order by chinese DESC,maths DESC,English DESC,Composite DESC limit 1";Score s = scoreUtil.getOne(sql, Score.class);int sum = s.getChinese() + s.getMaths() + s.getEnglish() + s.getComposite();return sum;

这个是可以通过的,但是存在bug(因为这个题目给出的成绩数据里面,这样排序刚好获取到了总分数最高的,如果不是,就出现了错误),所以对总成绩做一个排序

总分排序答案

                // // 请补全sql语句String sql = "select * from score order by chinese+maths+english+composite desc limit 1";Score s = scoreUtil.getOne(sql, Score.class);int sum = s.getChinese() + s.getMaths() + s.getEnglish() + s.getComposite();return sum;

【15 分】步骤 9:继续完善 SSDaoImpl 类

    /*** 依据姓名更新年龄* @return name 姓名* @return age 年龄*/public void updateAge(String name,int age){// 请补全sql语句String sql = "###";int i = infoUtil.update(sql,age,name);}

答案

 public void updateAge(String name,int age){// 请补全sql语句String sql = "update info set age = ? where name = ?";int i = infoUtil.update(sql,age,name);}

实验13:20220625 1+X 中级实操考试(id:3411)相关推荐

  1. 2021/12/19 1+X 大数据应用开发(Java)中级实操考试

    目录 步骤二: 步骤三: 步骤四: 步骤五: 步骤六: 步骤七: 步骤八: 步骤九: 步骤十: 步骤十一: 步骤二: //补充完成该类的含参构造方法public Student(String name ...

  2. 2021年茶艺师(中级)考试及茶艺师(中级)实操考试视频

    题库来源:安全生产模拟考试一点通公众号小程序 茶艺师(中级)考试根据新茶艺师(中级)考试大纲要求,安全生产模拟考试一点通将茶艺师(中级)模拟考试试题进行汇编,组成一套茶艺师(中级)全真模拟考试试题,学 ...

  3. 2021年中式烹调师(中级)考试内容及中式烹调师(中级)实操考试视频

    题库来源:安全生产模拟考试一点通公众号小程序 中式烹调师(中级)考试内容考前必练!安全生产模拟考试一点通每个月更新中式烹调师(中级)实操考试视频题目及答案!多做几遍,其实通过中式烹调师(中级)考试试题 ...

  4. 2021年中式烹调师(中级)报名考试及中式烹调师(中级)实操考试视频

    题库来源:安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通:中式烹调师(中级)报名考试考前必练!安全生产模拟考试一点通每个月更新中式烹调师(中级)实操考试视频题目及答案!多做几遍,其实通过中 ...

  5. 2020汽车修理工(中级)实操考试视频及汽车修理工(中级)考试试题

    题库来源:安全生产模拟考试一点通公众号小程序 2020汽车修理工(中级)实操考试视频及汽车修理工(中级)考试试题,包含汽车修理工(中级)实操考试视频答案解析及汽车修理工(中级)考试试题练习.由安全生产 ...

  6. 2021年美容师(中级)考试技巧及美容师(中级)实操考试视频

    题库来源:安全生产模拟考试一点通公众号小程序 美容师(中级)考试技巧是安全生产模拟考试一点通生成的,美容师(中级)证模拟考试题库是根据美容师(中级)最新版教材汇编出美容师(中级)仿真模拟考试.2021 ...

  7. 2021年美容师(中级)实操考试视频及美容师(中级)作业模拟考试

    题库来源:安全生产模拟考试一点通公众号小程序 美容师(中级)实操考试视频参考答案及美容师(中级)考试试题解析是安全生产模拟考试一点通题库老师及美容师(中级)操作证已考过的学员汇总,相对有效帮助美容师( ...

  8. 2020年电工(中级)实操考试视频及电工(中级)操作证考试

    题库来源:安全生产模拟考试一点通公众号小程序 2020年电工(中级)实操考试视频及电工(中级)操作证考试,包含电工(中级)实操考试视频答案和解析及电工(中级)操作证考试练习.由安全生产模拟考试一点通公 ...

  9. 2021年西式面点师(中级)考试报名及西式面点师(中级)实操考试视频

    题库来源:安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通:西式面点师(中级)考试报名是安全生产模拟考试一点通总题库中生成的一套西式面点师(中级)实操考试视频,安全生产模拟考试一点通上西式面 ...

最新文章

  1. Codeforces 768E:Game of Stones
  2. 前端框架Bootstrap 教程
  3. 为什么中国的程序员技术偏低
  4. 三十三、深入Vue.js语法(上篇)
  5. Django出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0xda in position 134: invalid
  6. 为移动端网页构造快速响应按钮
  7. MYSQL 5.7 解压版 windows 环境下安装
  8. 信息学奥赛一本通(1158:求1+2+3+...)
  9. axure原型案例_AXURE原型设计:移动端搜索原型案例
  10. Android-- SharedPreferences数据存储XML文件的方法
  11. 算法的优缺点_逻辑回归算法的优缺点
  12. [线筛五连]线筛莫比乌斯函数
  13. 分享 :理解和管理社交媒体算法的4个想法
  14. android 涨水的动画,Android -- 贝塞尔实现水波纹动画(划重点!!)
  15. 装出一个好的WIN2000最经典的步骤
  16. boss是董卓的java游戏_武将列传世界BOSS董卓-殒命长安攻略
  17. NISP二级证书换CISP证书是怎么回事?
  18. openlayers4+中台风路径播放优化
  19. 工程测量实训心得体会
  20. pasa查看mysql_PASA的安装与使用

热门文章

  1. 清除U盘内所占的隐藏空间(U盘容量突然变小了)
  2. 域名微信拦截html代码,多域名下获取微信openId,通过拦截器注解实现,减少代码量以及业务混淆...
  3. 内网渗透之域内信息收集
  4. 第七周 项目四-队列数组
  5. css筋斗云,CSS3 七龙珠筋斗云动画
  6. WPS中文档横线的问题
  7. API 夺命四连杀:接口如何设计?安全如何保证?签名如何实现?防重如何实现?...
  8. 20-Netty TCP 粘包和拆包及解决方案
  9. 硫化铜纳米粒/ZIF-8复合材料(CuS@ZIF8载体)|UiO-66/CoSO复合材料|ZIF-67纳米晶表面修饰六咪唑环三磷腈
  10. JavaScript replace() 方法转换时间数据中的“-”和“/”