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

2021实操题答案

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

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

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

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

//以提供Memeber类的属性,补充完成该累的有参(四个参数)及无参构造方法
public Member(){}

public Member(String name,String pwd,float score,int rank){
	this.name = name;
	this.pwd = pwd;
	this.score = score;
	this.rank = rank;
}

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

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

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

public static Date convertFromStringToDate(String stringDate){
	Date date = null;
	try{
		date = sdf.parse(stringDate);
	} catch(ParseException e){
		// TODO Auto-generated catch block
		e.printStackTrace();
	};
	return date;
}

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

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

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

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

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

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

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

update member set pwd=reverse(pwd)

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

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 方法

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

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

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类的属性,补充完成该类的有参(五个参数)及无参构造方法

    public Student(){}

    public Student(String name, String pwd,int age,int grade, int rate){
        this.name = name;
        this.pwd = pwd;
        this.age = age;
        this.grade = grade;
        this.rate = rate;
    }

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

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

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

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

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

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

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

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

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

select * from course where name=?

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

update course set difficulty=? where name=?

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

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 方法

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

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

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

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

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

    public Student(){}

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

public static Date convertFromStringToDate(String stringDate) {
        // 补全代码:
        Date date = null;
        try {
            date = sdf.parse(stringDate);
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        };

        return date;
    }

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

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

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

select * from book where name=?

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

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

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

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

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

public void changePwd(String name,String oldPwd,String newPwd){
                // 1.先判断学生姓名和旧密码是否正确
                // 请补全sql语句
                String sql1 = "select * from student where name=? and pwd=?";
                Student s = ou.getOne(sql1, Student.class, name, oldPwd);

                // 2.姓名和旧密码正确,则更新;姓名和旧密码不正确,则不更新
                if(s!=null){
                        // 请补全sql语句
                        String sql2 = "update student set pwd=? where name=?";
                        ou.update(sql2, newPwd, name);
                }
        }

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

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

sql语句2:

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

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

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

sql语句2:

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

sql语句3:

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

结语

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

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>