Java实训日志06

article/2025/9/22 13:14:44

文章目录

  • 八、项目开发实现步骤
    • (八)创建服务接口
      • 1、创建学校服务接口
      • 2、创建状态服务接口
      • 3、创建学生服务接口
      • 4、创建用户服务接口
    • (九)创建服务接口实现类
      • 1、创建学校服务接口实现类
      • 2、创建状态服务接口实现类
      • 3、创建学生服务接口实现类
      • 4、创建用户服务接口实现类

八、项目开发实现步骤

(八)创建服务接口

  • 服务接口调用数据访问接口,可以添加必要的业务逻辑,而服务接口被控制层调用,获取数据传递给视图层显示。
  • net.huawei.student根包里创建service子包
    在这里插入图片描述

1、创建学校服务接口

  • net.huawei.student.service包里创建CollegeService接口
    在这里插入图片描述
package net.huawei.student.service;import net.huawei.student.bean.College;/*** 功能:学校服务接口* 作者:华卫* 日期:2023年06月16日*/
public interface CollegeService {College findCollegeById(int id); // 按标识符查询学校记录int updateCollege(College college); // 更新学校记录
}

2、创建状态服务接口

  • net.huawei.student.service包里创建StatusService接口
    在这里插入图片描述
package net.huawei.student.service;import net.huawei.student.bean.Status;/*** 功能:状态服务接口* 作者:华卫* 日期:2023年06月16日*/
public interface StatusService {Status findStatusById(int id); // 按标识符查询状态记录int updateStatus(Status status); // 更新状态记录
}

3、创建学生服务接口

  • net.huawei.student.service包里创建StudentService接口
    在这里插入图片描述
package net.huawei.student.service;import net.huawei.student.bean.Student;import java.util.List;
import java.util.Vector;/*** 功能:学生服务接口* 作者:华卫* 日期:2023年06月16日*/
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<Student> findStudentsByName(String name); // 按姓名查询学生记录List<Student> findStudentsByClass(String clazz); // 按班级查询学生记录List<Student> findStudentsByDepartment(String department); // 按系部查询学生记录List<Student> findAllStudents(); // 查询全部学生记录Vector findRowsBySex(); // 按性别统计人数Vector findRowsByClass(); // 按班级统计人数Vector findRowsByDepartment(); // 按系部统计人数
}

4、创建用户服务接口

  • net.huawei.student.service包里创建UserService接口
    在这里插入图片描述
package net.huawei.student.service;import net.huawei.student.bean.User;import java.util.List;/*** 功能:用户服务接口* 作者:华卫* 日期:2023年06月16日*/
public interface UserService {int addUser(User user); // 添加用户记录int deleteUserById(int id); // 按标识符删除用户记录int updateUser(User user); // 更新用户记录User findUserById(int id); // 按标识符查询用户记录List<User> findAllUsers(); // 查询全部用户记录User login(String username, String password); // 登录方法boolean isUsernameExisted(String username); // 用户名是否存在
}

(九)创建服务接口实现类

  • net.huawei.student.service包里创建impl子包
    在这里插入图片描述

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

  • net.huawei.student.service.impl包里创建CollegeServiceImpl
    在这里插入图片描述
  • 实现CollegeService接口,空实现所有抽象方法
    在这里插入图片描述
package net.huawei.student.service.impl;import net.huawei.student.bean.College;
import net.huawei.student.dao.CollegeDao;
import net.huawei.student.dao.impl.CollegeDaoImpl;
import net.huawei.student.service.CollegeService;/*** 功能:学校服务接口实现类* 作者:华卫* 日期:2023年06月16日*/
public class CollegeServiceImpl implements CollegeService {private CollegeDao collegeDao = new CollegeDaoImpl();@Overridepublic College findCollegeById(int id) {        return collegeDao.findById(id);}@Overridepublic int updateCollege(College college) {return collegeDao.update(college);}
}

2、创建状态服务接口实现类

  • net.huawei.student.service.impl包里创建StatusServiceImpl
    在这里插入图片描述
  • 实现StatusService接口,空实现所有抽象方法
    在这里插入图片描述
package net.huawei.student.service.impl;import net.huawei.student.bean.Status;
import net.huawei.student.dao.StatusDao;
import net.huawei.student.dao.impl.StatusDaoImpl;
import net.huawei.student.service.StatusService;/*** 功能:状态服务接口实现类* 作者:华卫* 日期:2023年06月16日*/
public class StatusServiceImpl implements StatusService {private StatusDao statusDao = new StatusDaoImpl();@Overridepublic Status findStatusById(int id) {return statusDao.findById(id);}@Overridepublic int updateStatus(Status status) {return statusDao.update(status);}
}

3、创建学生服务接口实现类

  • net.huawei.student.service.impl包里创建StudentServiceImpl
    在这里插入图片描述
  • 实现StudentService接口,空实现所有抽象方法
    在这里插入图片描述
package net.huawei.student.service.impl;import net.huawei.student.bean.Student;
import net.huawei.student.dao.StudentDao;
import net.huawei.student.dao.impl.StudentDaoImpl;
import net.huawei.student.service.StudentService;import java.util.List;
import java.util.Vector;/*** 功能:学生服务接口实现类* 作者:华卫* 日期:2023年06月16日*/
public class StudentServiceImpl implements StudentService {private StudentDao studentDao = new StudentDaoImpl();@Overridepublic int addStudent(Student student) {return studentDao.insert(student);}@Overridepublic int deleteStudentById(String id) {return studentDao.deleteById(id);}@Overridepublic int deleteStudentsByClass(String clazz) {return studentDao.deleteByClass(clazz);}@Overridepublic int deleteStudentsByDepartment(String department) {return studentDao.deleteByDepartment(department);}@Overridepublic int updateStudent(Student student) {return studentDao.update(student);}@Overridepublic Student findStudentById(String id) {return studentDao.findById(id);}@Overridepublic List<Student> findStudentsByName(String name) {return studentDao.findByName(name);}@Overridepublic List<Student> findStudentsByClass(String clazz) {return studentDao.findByClass(clazz);}@Overridepublic List<Student> findStudentsByDepartment(String department) {return studentDao.findByDepartment(department);}@Overridepublic List<Student> findAllStudents() {return studentDao.findAll();}@Overridepublic Vector findRowsBySex() {return studentDao.findRowsBySex();}@Overridepublic Vector findRowsByClass() {return studentDao.findRowsByClass();}@Overridepublic Vector findRowsByDepartment() {return studentDao.findRowsByDepartment();}
}

4、创建用户服务接口实现类

  • net.huawei.student.service.impl包里创建UserServiceImpl
    在这里插入图片描述
  • 实现UserService接口,空实现所有抽象方法
    在这里插入图片描述
package net.huawei.student.service.impl;import net.huawei.student.bean.User;
import net.huawei.student.dao.UserDao;
import net.huawei.student.dao.impl.UserDaoImpl;
import net.huawei.student.service.UserService;import java.util.List;/*** 功能:用户服务接口实现类* 作者:华卫* 日期:2023年06月16日*/
public class UserServiceImpl implements UserService {private UserDao userDao = new UserDaoImpl();@Overridepublic int addUser(User user) {return userDao.insert(user);}@Overridepublic int deleteUserById(int id) {return userDao.deleteById(id);}@Overridepublic int updateUser(User user) {return userDao.update(user);}@Overridepublic User findUserById(int id) {return userDao.findById(id);}@Overridepublic List<User> findAllUsers() {return userDao.findAll();}@Overridepublic User login(String username, String password) {return userDao.login(username, password);}@Overridepublic boolean isUsernameExisted(String username) {return userDao.isUsernameExisted(username);}
}

http://chatgpt.dhexx.cn/article/my3G7QEL.shtml

相关文章

实习日志03-技术02

本节&#xff1a;工作中经常会从别的项目复制一样的功能来使用。以下&#xff0c;是在此过程中&#xff0c;一不小心就会踩到的坑。 1.前端写好了&#xff0c;但是调取接口有问题&#xff0c;还有可能是没有更新后端的代码&#xff0c;更新一下代码及就可以了。 2.复制代码&a…

项目实训日志

3月5日 这次项目实训&#xff0c;我们组做的是risc-v学习平台&#xff0c;我们前面几周的总体任务是熟悉环境&#xff0c;做一些简单的功能&#xff0c;比如登录以及页面的搭建等等&#xff0c;了解最基本的需求&#xff0c;环境的安装配置&#xff0c;对相关知识的学习&#…

JAVAEE 实训日志 一

文章目录 1. 创建 web-app 项目导入初始4个 maven 依赖TestServlet.javatest.jsp测试: 2. 连接数据库导入依赖 驱动编写连接类 JDBCUtil测试连接 3. 开发一个简单的javaweb项目EntityService 层DaoController前端 test.jsp效果 1. 创建 web-app 项目 导入初始4个 maven 依赖 &…

实训日志day5

今天主要讲解了命令行查看数据库、数据库连接、越权访问 命令行的使用 在文件根目录下执行cmd&#xff0c;输入数据库的账号和密码进行数据库的访问 输入 show databases;语句查看数据库表&#xff0c;注意是databases后面有一个分号‘&#xff1b;’ show databases;查看数据…

Java实训日志04

文章目录 八、项目开发实现步骤&#xff08;六&#xff09;创建数据访问接口1、创建学校数据访问接口2、创建状态数据访问接口3、创建学生数据访问接口4、创建用户数据访问接口 八、项目开发实现步骤 &#xff08;六&#xff09;创建数据访问接口 DAO: Data Acess Object - 数…

实训日志day7

今天主要介绍了三个工具以及工具使用的方法&#xff0c;三个工具分别是&#xff1a;Nmap、AWVS、Dirsearch Nmap Nmap的使用环境有两种&#xff1a; 1、直接能获取到需要测试和的设备的IP地址 2、只能获得需要测试的网络。 在进行渗透测试的过程中&#xff0c;利用nmap进行渗透…

day2实训日志

上午课程 课程大纲 1.web 重点介绍了web1.0和web2.0时代采用的技术&#xff0c;web1.0时代主要采用dos攻击html静态网页&#xff0c;虽然静态网页没有数据库&#xff0c;但是拒接服务式攻击可以将网络响应攻击瘫痪&#xff0c;web2.0时代新增了数据库&#xff0c;黑客所攻击的…

项目实训-个人开发日志02-初识微信小程序开发

今天开始正式进入微信小程序端的开发&#xff0c;由于本人从未学习过小程序开发&#xff0c;所以在此一并把学习过程记录。 安装微信开发者工具&#xff0c;以非云开发的基础模板创建文件&#xff0c;得到如下项目结构&#xff1a; page即为页面&#xff0c;目前有两个文件夹&…

JAVA实训项目第六次日志

实训目的&#xff1a;让学生综合运用J2SE有关知识开发【学生信息管理系统】。主要涉及程序控制结构、面向对象编程、图形用户界面、Java数据库应用、MySQL数据库这几个方面的内容。通过本项目的开发&#xff0c;让学生了解系统开发的一般流程&#xff0c;初步了解MVC模式与单元…

实训日志——第三天

在敲代码的过程中&#xff0c;也是经常犯错的&#xff0c;大大小小的错&#xff0c;有时候反复检查都不知道有什么错。目前&#xff0c;我总结到&#xff0c;对于我来说&#xff0c;出错就是经常打错字母的大小写&#xff0c;少打一行代码之类的。但就是这些小错&#xff0c;在…

实训日志6

上一次太累了没写博客&#xff0c;这次打完了所有的内容&#xff0c;认真总结一下这次的实训 这次实训主要涉及程序控制结构、面向对象编程、图形用户界面、Java数据库应用、MySQL数据库这几个方面的内容。通过本项目的开发&#xff0c;让我了解系统开发的一般流程&#xff0c;…

将实对称矩阵正交对角化的流程

摘自《矩阵论教程》第2版&#xff0c;张绍飞&#xff0c;p52

实对称矩阵可对角化证明

在极化分解的证明中使用过此定理&#xff0c;证明于此。 埃尔米特矩阵是指复对称矩阵&#xff0c;实对称矩阵是其特例。 转载于:https://www.cnblogs.com/zhixingr/p/8750210.html

矩阵可对角化的条件

总结&#xff1a;对于任意方阵&#xff0c;如果没有重根&#xff0c;矩阵总是可以对角化。麻烦的是重根问题 如果有重根&#xff0c;那么需要验证所谓几何重数&#xff0c;与代数重数相等。 那么对于有重根&#xff0c;不能对角化的矩阵怎么办&#xff1f;这就引入了Jordan标…

线性代数笔记5.3实对称矩阵的对角化(前瞻知识)

实对称矩阵都能对角化 内积 简单来说&#xff0c;内积就是两个向量的对应分量相乘再相加 内积是个数&#xff01;&#xff01; 内积的性质 注意最后一条性质 两个向量和与第三个向量的内积 两个向量分别与第三个向量内积的和&#xff0c;这条性质可以与上面的性质配合使…

含重根的三阶实对称矩阵的快速对角化方法

众所周知&#xff0c;实对称矩阵一定可以相似对角化。而考试中考察的三阶实对称矩阵对角化基本都是三阶的。而且正常情况下特征根一定是整数。因此基于此&#xff0c;有一些特殊的方法可以快速计算三阶实对称矩阵的特征值和特征向量。 一. 猜根法计算特征值 特征值之和等于矩阵…

矩阵的相似对角化

矩阵相似的定义 设 A与B都是N阶方阵&#xff0c;若是一个可逆的N阶矩阵P&#xff0c;使得&#xff0c;则称A与B相似&#xff0c;记作&#xff0c;P成为由A到B的相似变换矩阵 相似矩阵的性质 1、 矩阵A与它自身相似 2、若&#xff0c;则 如果A与B相似&#xff0c;那么B与A…

矩阵对角化

一、矩阵对角化的理论 一个映射或者一个线性变换&#xff0c;都有一个矩阵和它相对应。矩阵或者映射是不是可以对角化&#xff0c;对工程应用来说比较重要&#xff0c;因为对角化后的矩阵&#xff0c;乘积简单&#xff0c;经过多次变换的话&#xff0c;相当于矩阵的多次方。矩…

实对称矩阵必可正交对角化证明

我的小程序&#xff1a; 待办计划&#xff1a;给自己立个小目标吧&#xff01; n阶矩阵A可正交对角化的充分条件是A是实对称矩阵&#xff0c;即若A是实对称矩阵则A必可正交对角化。 首先&#xff0c;有以下定理&#xff1a; 若的特征值为&#xff0c;且&#xff0c;则存在正交…

实对称阵的正交相似对角化

一、正交向量组与正交矩阵 正交向量组的定义&#xff0c;是一组非零向量&#xff0c;且两两正交&#xff0c;那么这组向量&#xff0c;则成为正交向量组。 两个向量正交的意思是&#xff0c;两个向量的内积为0&#xff0c;什么是两个向量的内积&#xff0c;就是向量内对应元素…