服务接口调用数据访问接口,可以添加必要的业务逻辑。服务接口被控制层调用。
(1)学校服务接口CollegeService
(2)状态服务接口StatusService
(3)学生服务接口StudentService
(4)用户服务接口UserService
2.服务接口实现类
(1)学校服务接口实现类CollegeServiceImpl
在net.lyy.student.test包里创建测试类TestCollegeServiceImpl
编写测试方法testFindCollegeById():
运行该测试方法,结果如下
编写测试方法testUpdateCollege():
运行该方法结果如下:
(2)状态服务接口实现类StatusServiceImpl
在net.lyy.student.test包里创建测试类TestStatusServiceImpl:
编写测试方法testFindStatusById():
运行结果如下:
编写测试方法testUpdateStatus():
运行结果如下:
(3)学生服务接口实现类StudentServiceImpl
package net.lyy.student.service.impl;
import net.lyy.student.bean.Student;
import net.lyy.student.dao.StudentDao;
import net.lyy.student.dao.impl.StudentDaoImpl;
import net.lyy.student.service.StudentService;
import java.util.List;
import java.util.Vector;
/**
-
功能:学生服务接口实现类
-
作者:李远燕
-
日期:2019年6月29日
/
public class StudentServiceImpl implements StudentService {
/*- 声明学生数据访问对象
*/
private StudentDao studentDao = new StudentDaoImpl();
@Override
public int addStudent(Student student) {
return studentDao.insert(student);
}@Override
public int deleteStudentById(String id) {
return studentDao.deleteById(id);
}@Override
public int deleteStudentsByClass(String clazz) {
return studentDao.deleteByClass(clazz);
}@Override
public int deleteStudentsByDepartment(String department) {
return studentDao.deleteByDepartment(department);
}@Override
public List findAllStudents() {
return studentDao.findAll();
}@Override
public Vector findRowsByClass() {
return studentDao.findRowsByClass();
}@Override
public Vector findRowsByDepartment() {
return studentDao.findRowsByDepartment();
}@Override
public Vector findRowsBySex() {
return studentDao.findRowsBySex();
}@Override
public Student findStudentById(String id) {
return studentDao.findById(id);
}@Override
public List findStudentsByClass(String clazz) {
return studentDao.findByClass(clazz);
}@Override
public List findStudentsByDepartment(String department) {
return studentDao.findByDepartment(department);
}@Override
public List findStudentsByName(String name) {
return studentDao.findByName(name);
}@Override
public int updateStudent(Student student) {
return studentDao.update(student);
}
} - 声明学生数据访问对象
在net.lyy.student.test包里创建测试类TestStudentServiceImpl:
编写测试方法testFindStudentsByName():
运行结果如下:
(4)用户服务接口实现类UserServiceImpl
package net.lyy.student.service.impl;
import net.lyy.student.bean.User;
import net.lyy.student.dao.UserDao;
import net.lyy.student.dao.impl.UserDaoImpl;
import net.lyy.student.service.UserService;
import java.util.List;
/**
- 功能:用户服务接口实现类
- 作者:李远燕
- 日期:2019年6月29日
*/
public class UserServiceImpl implements UserService{
/**
* 声明用户数据访问对象
*/
private UserDao userDao = new UserDaoImpl();
@Override
public int addUser(User user) {
return userDao.insert(user);
}
@Override
public int deleteUserById(int id) {
return userDao.deleteById(id);
}
@Override
public List<User> findAllUsers() {
return userDao.findAll();
}
@Override
public User findUserById(int id) {
return userDao.findById(id);
}
@Override
public User login(String username, String password) {
return userDao.login(username, password);
}
@Override
public int updateUser(User user) {
return userDao.update(user);
}
@Override
public boolean isUsernameExisted(String username) {
return userDao.isUsernameExisted(username);
}
}
在net.lyy.student.test包里创建测试类TestUserServiceImpl:
编写测试方法testLogin()方法:
运行结果如下:
修改用户名和密码再试一次
运行结果如下:
终于做完了一半,做了这么久,得出只要你认真学、努力学习还是可以学懂一点的,其实也不是很难。