java面向对象高级分层实例_测试类(main方法所在的类)

简介: java面向对象高级分层实例_测试类(main方法所在的类)
package bdqn.studentSys;
/**
 * main类
 * @author Administrator
 *
 */
import java.util.*;
import bdqn.studentSys.Dao.StudentDao;
import bdqn.studentSys.Dao.impl.StudentDaoImpl;
import bdqn.studentSys.entity.Student;
public class StudentSys {
  public static void main(String []args){
    Scanner in=new Scanner(System.in);
    //查询全部学生
    getAllStudent();
    
    //添加
    System.out.println("==============添加学生信息==============");
    System.out.println("请输入学生姓名:");
    String name=in.next();
    System.out.println("请输入学生密码:");
    String pwd=in.next();
    System.out.println("请输入学生年龄:");
    int age=in.nextInt();
    System.out.println("请输入学生性别:");
    String sex=in.next();
    Student stu=new Student();
    stu.setName(name);
    stu.setPwd(pwd);
    stu.setAge(age);
    stu.setSex(sex);
    addStudent(stu);
    
    //修改
    System.out.println("==============修改学生信息==============");
    System.out.println("请输入要修改的学生学号:");
    int no=in.nextInt();
    System.out.println("请输入学生姓名:");
    String name1=in.next();
    System.out.println("请输入学生密码:");
    String pwd1=in.next();
    System.out.println("请输入学生年龄:");
    int age1=in.nextInt();
    System.out.println("请输入学生性别:");
    String sex1=in.next();
    Student stu1=new Student();
    stu.setName(name1);
    stu.setPwd(pwd1);
    stu.setAge(age1);
    stu.setSex(sex1);
    updateStudent(stu1);
    
    //删除
    System.out.println("==============删除学生信息==============");
    System.out.println("请输入要删除的学生学号:");
    int no1=in.nextInt();
    delStudent(no1);
  }
  static StudentDao sdao=new StudentDaoImpl();
  //查询全部学生
  static void getAllStudent(){
    List<Student> slist=sdao.getAllStudent();
    System.out.println("姓名\t\t密码\t\t年龄\t\t性别");
    for (Student stu : slist) {
      System.out.print(stu.getName()+"\t\t");
      System.out.print(stu.getPwd()+"\t\t");
      System.out.print(stu.getAge()+"\t\t");
      System.out.println(stu.getSex()+"\t\t");
    }
  }
  
  //添加学生信息
  static void addStudent(Student stu){
    int rel=sdao.addStudent(stu);
    try {
      if(rel>0){
        System.out.println("添加成功!");
      }else{
        System.out.println("添加失败!");
      }
    } catch (Exception e) {
      System.out.println("操作异常!"+e);
    }
  }
  //修改学生信息
  static void updateStudent(Student stu){
    int rel=sdao.UpdateStudent(stu);
    try {
      if(rel>0){
        System.out.println("修改成功!");
      }else{
        System.out.println("添加失败!");
      }
    } catch (Exception e) {
      // TODO: handle exception
      System.out.println("操作异常"+e);
    }
  }
  //删除学生信息
  static void delStudent(int stuno){
    int rel=sdao.delStudent(stuno);
    try {
      if(rel>0){
        System.out.println("删除成功!");
      }else{
        System.out.println("删除失败");
      }
    } catch (Exception e) {
      // TODO: handle exception
      System.out.println("操作异常"+e);
    }
  }
}


相关文章
|
2天前
|
安全 Java API
告别繁琐编码,拥抱Java 8新特性:Stream API与Optional类助你高效编程,成就卓越开发者!
【8月更文挑战第29天】Java 8为开发者引入了多项新特性,其中Stream API和Optional类尤其值得关注。Stream API对集合操作进行了高级抽象,支持声明式的数据处理,避免了显式循环代码的编写;而Optional类则作为非空值的容器,有效减少了空指针异常的风险。通过几个实战示例,我们展示了如何利用Stream API进行过滤与转换操作,以及如何借助Optional类安全地处理可能为null的数据,从而使代码更加简洁和健壮。
16 0
|
2天前
|
IDE Java 测试技术
揭秘Java高效编程:测试与调试实战策略,让你代码质量飞跃,职场竞争力飙升!
【8月更文挑战第30天】在软件开发中,测试与调试对确保代码质量至关重要。本文通过对比单元测试、集成测试、调试技巧及静态代码分析,探讨了多种实用的Java测试与调试策略。JUnit和Mockito分别用于单元测试与集成测试,有助于提前发现错误并提高代码可维护性;Eclipse和IntelliJ IDEA内置调试器则能快速定位问题;Checkstyle和PMD等工具则通过静态代码分析发现潜在问题。综合运用这些策略,可显著提升代码质量,为项目成功打下坚实基础。
|
4天前
|
机器学习/深度学习 人工智能 算法
探索人工智能在医疗诊断中的应用与挑战Java编程中的对象和类:基础与实践
【8月更文挑战第27天】随着人工智能(AI)技术的飞速发展,其在医疗领域的应用日益广泛。本文深入探讨了AI技术在医疗诊断中的具体应用案例,包括图像识别、疾病预测和药物研发等方面,并分析了当前面临的主要挑战,如数据隐私、算法偏见和法规限制等。文章旨在为读者提供一个全面的视角,理解AI在改善医疗服务质量方面的潜力及其局限性。
|
5天前
|
Java 应用服务中间件 HSF
Java应用结构规范问题之AllLoggers接口获取异常日志的Logger实例的问题如何解决
Java应用结构规范问题之AllLoggers接口获取异常日志的Logger实例的问题如何解决
|
4天前
|
Java Spring 容器
Java获取接口的所有实现类方法
这篇文章介绍了在Java中获取接口所有实现类的方法,包括使用JDK的ServiceLoader(SPI机制)和Spring Boot中的@Autowired自动注入及ApplicationContextAware接口两种方式。
23 1
|
7天前
|
SQL Java 测试技术
SpringBoot单元测试快速写法问题之PorkService 接口中的 getPork 方法的作用如何解决
SpringBoot单元测试快速写法问题之PorkService 接口中的 getPork 方法的作用如何解决
|
3天前
|
缓存 安全 Java
Java String类
Java String类
8 0
|
5天前
|
安全 Java API
Java多线程编程:使用Atomic类实现原子操作
在Java多线程环境中,共享资源的并发访问可能导致数据不一致。传统的同步机制如`synchronized`关键字或显式锁虽能保障数据一致性,但在高并发场景下可能导致线程阻塞和性能下降。为此,Java提供了`java.util.concurrent.atomic`包下的原子类,利用底层硬件的原子操作确保变量更新的原子性,实现无锁线程安全。
8 0
|
7天前
|
Java Maven C++
【Azure Developer】记录一次使用Java Azure Key Vault Secret示例代码生成的Jar包,单独运行出现 no main manifest attribute, in target/demo-1.0-SNAPSHOT.jar 错误消息
【Azure Developer】记录一次使用Java Azure Key Vault Secret示例代码生成的Jar包,单独运行出现 no main manifest attribute, in target/demo-1.0-SNAPSHOT.jar 错误消息
|
4天前
|
网络协议 测试技术 网络安全
Python进行Socket接口测试的实现
在现代软件开发中,网络通信是不可或缺的一部分。无论是传输数据、获取信息还是实现实时通讯,都离不开可靠的网络连接和有效的数据交换机制。而在网络编程的基础中,Socket(套接字)技术扮演了重要角色。 Socket 允许计算机上的程序通过网络进行通信,它是网络通信的基础。Python 提供了强大且易于使用的 socket 模块,使开发者能够轻松地创建客户端和服务器应用,实现数据传输和交互。 本文将深入探讨如何利用 Python 编程语言来进行 Socket 接口测试。我们将从基础概念开始介绍,逐步引导大家掌握创建、测试和优化 socket 接口的关键技能。希望本文可以给大家的工作带来一些帮助~

热门文章

最新文章

下一篇
云函数