0


2021 大数据应用开发Java 1+x中级实操题答案汇总--含3篇

2021 大数据应用开发Java 1+x中级实操题答案汇总–含3篇

2021实操题答案

食用须知:
答案是我自己试过运行了的,不能说是最正确的答案,仅供参考哈!
为了方便复制粘贴,sql语句就没有加分号了;
特别注意:如测试失败了,要检查sql表是否产生了变化,如果有变化,可能会一直报错的。可以使用命令重置mysql数据:

  1. mysql -uroot < /home/project/init-MySql.sql

20211030 1+X 中级实操考试样题

【5 分】步骤 1:项目准备
根据提示复制粘贴运行即可!
【5 分】步骤 2:完成实体类 Member

  1. //以提供Memeber类的属性,补充完成该累的有参(四个参数)及无参构造方法
  2. public Member(){}
  3. public Member(String name,String pwd,float score,int rank){
  4. this.name = name;
  5. this.pwd = pwd;
  6. this.score = score;
  7. this.rank = rank;
  8. }

【10 分】步骤 3:完成实体类 Goods

  1. //请修改该方法,并且在赋值时,商品数量不能超过100
  2. public void setNum(int num){
  3. if(0<num && num<=100){
  4. this.num=num;
  5. }
  6. }

【10 分】步骤 4:完成工具类 DateUtil的convertFromStringToDate方法

  1. public static Date convertFromStringToDate(String stringDate){
  2. Date date = null;
  3. try{
  4. date = sdf.parse(stringDate);
  5. } catch(ParseException e){
  6. // TODO Auto-generated catch block
  7. e.printStackTrace();
  8. };
  9. return date;
  10. }

【10 分】步骤 5:完成工具类 DateUtil的convertFromDateToString方法

  1. /**
  2. * 使用全局变量: sdf,将日期转换成字符串
  3. * @param date 需要被转换的日期
  4. * @return 转换之后的字符串形式的日期
  5. */
  6. public static String convertFromDateToString(Date date) {
  7. // 补全或替换代码
  8. return sdf.format(date);
  9. }

【10 分】步骤 6:完成 GoodsDaoImpl 的 queryExpensiveGoods 方法
sql语句:

  1. select name from goods where price=(select max(price) from goods)

【10 分】步骤 7:完成 GoodsDaoImpl 的 querySum 方法

  1. for (Goods goods : list) {
  2. // 请补全代码
  3. sum += goods.getPrice()*goods.getNum();
  4. }
  5. return sum;

【10 分】步骤 8:完成 MemberDaoImpl 的 updatePwd 方法
sql语句:

  1. update member set pwd=reverse(pwd)

【10 分】步骤 9:完成 MemberDaoImpl 的 updateRank 方法
sql语句:

  1. update member set `rank`=(case when score between 0 and 99 then 0 when score between 100 and 199 then 1 when score between 200 and 299 then 2 when score between 300 and 400 then 3 when score between 400 and 500 then 4 when score>=500 then 5 end)

【10 分】步骤 10:完成 OrderDaoImpl 的 queryNum 方法

  1. for(Order order:o){
  2. // 请补全语句
  3. s.add(order.getId())
  4. }

【10 分】步骤 11:完成 OrderDaoImpl 的 queryMax 方法
sql语句

  1. select mname from (select mname,sum(num*price) prices from `order` group by mname)a where prices=(select max(prices) from (select mname,sum(num*price) prices from `order` group by mname)b)

20211127 1+X 中级实操考试样题

【5 分】步骤 1项目准备

【5 分】步骤 2:完成实体类 Student
//已经提供Student类的属性,补充完成该类的有参(五个参数)及无参构造方法

  1. public Student(){}
  2. public Student(String name, String pwd,int age,int grade, int rate){
  3. this.name = name;
  4. this.pwd = pwd;
  5. this.age = age;
  6. this.grade = grade;
  7. this.rate = rate;
  8. }

【10 分】步骤 3:完成实体类 Course
//请修改该方法,并且在赋值时,课程难度只能为:高、中、低这三种之一,其余值不做任何处理。

  1. public void setDifficulty(String difficulty) {
  2. if(difficulty.equals("高")||difficulty.equals("中")||difficulty.equals("低")){
  3. this.difficulty = difficulty;
  4. }
  5. }

【10 分】步骤 4:完成实体类 Score
//请修改该方法,以保证打印对象时输出格式如下:

  1. (sname=zs;cname=语文;score=80)
  2. @Override
  3. public String toString() {
  4. return "(sname="+this.sname+";cname="+this.cname+";score="+this.score+")"; }
  5. 10 分】步骤 5:完成 StudentDaoImpl add 方法
  6. public int add(Student s) {
  7. // 请补全sql语句
  8. String sql = "insert into student values(?,?,?,?,?)";
  9. return studentUtil.add(sql, s.getName(),s.getPwd(),s.getAge(),s.getGrade(),s.getRate());
  10. }

【10 分】步骤 6:完成 StudentDaoImpl 的 queryNum 方法

  1. public int queryNum() {
  2. String sql = "select * from student";
  3. List<Student> list = studentUtil.getList(sql, Student.class);
  4. // 请修改以下代码,保证返回值为总人数,假设所有学生名字都不一样
  5. int num = 0;
  6. num = list.size();
  7. return num;
  8. }

【10 分】步骤 7:完成 StudentDaoImpl 的 queryMinAge 方法
sql语句:

  1. select name from student where age=(select min(age) from student)

【10 分】步骤 8:完成 CourseDaoImpl 的 queryCourse 方法
sql语句:

  1. select * from course where name=?

【10 分】步骤 9:完成 CourseDaoImpl 的 updateDifficultyByName 方法
sql语句:

  1. update course set difficulty=? where name=?

【10 分】步骤 10:完成 ScoreDaoImpl 的 queryAvgMax 方法
sql语句:

  1. select sname from (select sname,avg(score) sss from score group by sname)t1 where sss=(select max(sss) from (select sname,avg(score) sss from score group by sname)t2)

【10 分】步骤 11:完成 ScoreDaoImpl 的 queryName 方法

  1. //把集合li中的每个成绩对象的名字取出来放进集合s中,并返回
  2. //请补全一下代码
  3. for(Score i:li){
  4. s.add(i.getSname())
  5. }
  6. return s;

20210620 1+X 中级实操考试样题

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

【5 分】步骤 2:完成实体类 Student

  1. //已经提供Student类的属性,补充完成该类的有参(两个参数)及无参构造方法
  2. public Student(String name,String pwd){
  3. this.name = name;
  4. this.pwd = pwd;
  5. }
  6. public Student(){}

【10 分】步骤 3:完成工具类 DateUtil的convertFromStringToDate方法

  1. public static Date convertFromStringToDate(String stringDate) {
  2. // 补全代码:
  3. Date date = null;
  4. try {
  5. date = sdf.parse(stringDate);
  6. } catch (ParseException e) {
  7. // TODO Auto-generated catch block
  8. e.printStackTrace();
  9. };
  10. return date;
  11. }

【10 分】步骤 4:完成工具类 DateUtil的convertFromDateToString方法

  1. public static String convertFromDateToString(Date date) {
  2. // 补全或替换代码
  3. return sdf.format(date);
  4. }

【10 分】步骤 5:完成 SBDaoImpl 的 findByName 方法
sql语句:

  1. select * from book where name=?

【10 分】步骤 6:继续完善 SBDaoImpl 类
sql语句:

  1. select name from book where price=(select max(price) from book)

【10 分】步骤 7:继续完善 SBDaoImpl 类
sql语句:

  1. delete from student where exists(select * from(select name from student where name=?)a) and name=student.name

【10 分】步骤 8:继续完善 SBDaoImpl 类

  1. public void changePwd(String name,String oldPwd,String newPwd){
  2. // 1.先判断学生姓名和旧密码是否正确
  3. // 请补全sql语句
  4. String sql1 = "select * from student where name=? and pwd=?";
  5. Student s = ou.getOne(sql1, Student.class, name, oldPwd);
  6. // 2.姓名和旧密码正确,则更新;姓名和旧密码不正确,则不更新
  7. if(s!=null){
  8. // 请补全sql语句
  9. String sql2 = "update student set pwd=? where name=?";
  10. ou.update(sql2, newPwd, name);
  11. }
  12. }

【15 分】步骤 9:继续完善 SBDaoImpl 类
sql语句1:

  1. insert into sb(sname,bname,begintime) values(?,?,?)

sql语句2:

  1. update book set num=num-1 where name=?

【15 分】步骤 10:继续完善 SBDaoImpl 类
sql语句1:

  1. select * from sb where sname=? and bname=? and begintime=?

sql语句2:

  1. update sb set endtime=? where sname=? and bname=? and begintime=?

sql语句3:

  1. update book set num=num+1 where name=?

结语

这是我的第一篇博文,仅供学习参考,写的不好或者错误之处,欢迎各方大佬指正!

标签: java big data mysql

本文转载自: https://blog.csdn.net/qq_46416934/article/details/125056634
版权归原作者 xiaoweiwei99 所有, 如有侵权,请联系我们删除。

“2021 大数据应用开发Java 1+x中级实操题答案汇总--含3篇”的评论:

还没有评论