Java第五次实训

目录标题

  • 1. 创建服务类接口
    • (1)创建学校类接口
    • (2) 创建状态服务类接口
    • (3)创建学生服务类接口对象
    • (4)创建用户服务接口
  • 2.创建服务接口实现类
    • (1)创建学校服务接口实现类
    • (1.1)创建学校接口测试类
    • (1.1.1)创建testFindCollegeById()测试方法
    • (1.1.2)编写testUpdateCollege()测试方法

1. 创建服务类接口

在net.lyq.student包下创建一个service包用来存放服务接口类。
Java第五次实训_第1张图片

(1)创建学校类接口

在service包中创建学校类接口CollegeService
Java第五次实训_第2张图片
在该接口中加入以下代码:

package net.lyq.student.service;

import net.lyq.student.bean.College;

public interface CollegeService {
    College findCollegeById(int id);
    int updateCollege(College college);
}

(2) 创建状态服务类接口

创建如下图所示的服务类接口:
Java第五次实训_第3张图片
填充如下代码:

package net.lyq.student.service;

import net.lyq.student.bean.Status;

public interface StatusService {
    Status findStatusById(int id);
    int updateStatus(Status status);
}

(3)创建学生服务类接口对象

创建如下图所示的接口类:
Java第五次实训_第4张图片
并向其中添加代码:

package net.lyq.student.service;

import net.lyq.student.bean.Student;

import java.util.List;
import java.util.Vector;

public interface StudentService {
    int addStudent(Student student);
    int deleteStudentById(String id);
    int deleteStudentsByClass(String clazz);
    int deleteStudentsByDepartment(String department);
    int updateStudent(Student student);
    Student findStudentById(String id);
    List findStudentByName(String name);
    List findStudentsByClass(String clazz);
    List findStudentsByDepartment(String department);
    List findAllStudents();
    Vector findRowsBySex();
    Vector findRowsByClass();
    Vector findRowsByDepartment();

}

(4)创建用户服务接口

创建如下图所示的接口类:
Java第五次实训_第5张图片
插入如下代码:

package net.lyq.student.service;

import net.lyq.student.bean.User;

import java.util.List;

public interface UserService {
    int addUser(User user);
    int deleteUserById(int id);
    int updateUser(User user);
    User findUserById(int id);
    List findAllUsers();
    User login(String username,String password);
    boolean isUsernameExisted(String username);
}

到此服务类接口完全创建完毕,创建结束以后,就应该进行实现接口操作了。

2.创建服务接口实现类

如同数据访问接口一样,进行服务接口访问时同样需要建立子包,我们可以在service包下建立一个名叫impl的子包,用来存放服务接口实现类。
Java第五次实训_第6张图片

(1)创建学校服务接口实现类

在impl包下创建第一个接口实现类–学校服务接口实现类。
Java第五次实训_第7张图片
关于学校接口实现类的具体代码如下:

package net.lyq.student.service.impl;


import net.lyq.student.bean.College;
import net.lyq.student.dao.CollegeDao;
import net.lyq.student.dao.impl.CollegeDaoImpl;
import net.lyq.student.service.CollegeService;

public class CollegeServiceImpl implements CollegeService {
    /**
     * 声明学校数据访问对象
     */
    private CollegeDao collegeDao = new CollegeDaoImpl();


    @Override
    public College findCollegeById(int id) {
        return null;
    }

    @Override
    public int updateCollege(College college) {
        return 0;
    }
}

创建完实现类之后,就应该创建测试类来进行学校服务接口类的测试操作

(1.1)创建学校接口测试类

跟上次博客的内容一样,在test包里创建测试类:
Java第五次实训_第8张图片

(1.1.1)创建testFindCollegeById()测试方法

详细代码如下:
Java第五次实训_第9张图片
运行结果为:
出现如下错误:
Java第五次实训_第10张图片
经过一番探寻,发现是dao包下的impl子包里面的如图所示文件发生错误
Java第五次实训_第11张图片
最后发现是缺少如图所示的一行代码,添加以后就成功运行
Java第五次实训_第12张图片
改正后的运行结果如下:
Java第五次实训_第13张图片

(1.1.2)编写testUpdateCollege()测试方法

详细代码如图所示:
Java第五次实训_第14张图片
数据表的内容为:
在这里插入图片描述
修改后的数据表为:
在这里插入图片描述
==中途发生更新数据表失败的问题,原因是因为CollegeDaoImpla中发生了SQL语句的编写错误。 ==
在这里插入图片描述

你可能感兴趣的:(Java第五次实训)