Servlet使用适配器模式进行增删改查案例(BaseServiceImplTest.java)

简介: Servlet使用适配器模式进行增删改查案例(BaseServiceImplTest.java)
package org.service.impl;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import org.entity.Dept;
import org.entity.Emp;
import org.junit.Test;
import org.service.IDeptService;
import org.service.IEmpService;
public class BaseServiceImplTest {
  /**
  * @Fields deptService :该字段的意思:部门的Service
  */
  private IDeptService deptService = new DeptServiceImpl();
  /**
  * @Fields empService :该字段的意思:员工的Service
  */
  private IEmpService empService  = new EmpServiceImpl();
  /**
  * @Fields EMP :该字段的意思:代表Emp
  */
  private String EMP = "emp";                                     //emp
  /**
  * @Fields DEPT :该字段的意思:代表dept
  */
  private String DEPT = "dept";                                     //dept
  
  /**
   * 
  * @Description: 该方法的主要作用:添加部门
  * @Title: test
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_save_dept() {
    Dept  dept = new Dept();
    dept.setDeptno(5);
    dept.setDname("研发部");
    dept.setLoc("山东济南");
    int rel = deptService.save(dept, DEPT);
    if(rel>0){
      System.out.println("成功!");
    }else {
      System.out.println("失败!");
    }
    
  }
  /**
   * 
  * @Description: 该方法的主要作用:修改部门
  * @Title: test_update_dept
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_update_dept() {
    Dept  dept = new Dept();
    dept.setDeptno(5);
    dept.setDname("研发部1");
    dept.setLoc("山东济南1");
    int rel = deptService.update(dept,DEPT);
    if(rel>0){
      System.out.println("成功!");
    }else {
      System.out.println("失败!");
    }
    
  }
  
  
  /**
   * 
  * @Description: 该方法的主要作用:删除部门
  * @Title: test_delete_dept
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_delete_dept() {
    int     deptno      =   5; 
    int rel = deptService.delete(deptno, DEPT);
    if(rel>0){
      System.out.println("成功!");
    }else {
      System.out.println("失败!");
    }
    
  }
  
  /**
   * 
  * @Description: 该方法的主要作用:根据编号查询部门
  * @Title: test_queryById_dept
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_queryById_dept() {
    int     deptno    =     4;
    Dept  dept       =  deptService.queryById(deptno, DEPT);
    if (dept == null) {
      System.out.println("没有该部门!!!");
    } else {
      System.out.println("部门名称是:" + dept.getDname());
    }
  }
  
  
  /**
   * 
  * @Description: 该方法的主要作用:查询全部的部门
  * @Title: test_queryAll_dept
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_queryAll_dept() {
    List<Dept>  deptList       =  deptService.queryAll( DEPT);
    for (Dept dept : deptList) {
      System.out.println("部门编号:"+dept.getDeptno()+"\t"+"部门名称:"+dept.getDname()+"\t"+"部门地址:"+dept.getLoc());
    }
  }
  
  
  /**
   * 
  * @Description: 该方法的主要作用:添加员工
  * @Title: test_save_emp
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_save_emp() {
  Emp     emp   =   new     Emp();
  emp.setEmpno(5);
  emp.setEname("李四");
  Date      date   =  new Date();
  SimpleDateFormat simpleDateFormat  = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
  String    date_new    =   simpleDateFormat.format(date);
  emp.setHiredate(date_new);
  emp.setComm(3200f);
  emp.setDeptno(10);
  emp.setJob("实施");
  emp.setMgr(7839);
  emp.setSal(2500f);
    int rel =empService.save(emp, EMP);
    if(rel>0){
      System.out.println("成功!");
    }else {
      System.out.println("失败!");
    }
    
  }
  /**
   * 
  * @Description: 该方法的主要作用:修改员工
  * @Title: test_update_dept
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_update_emp() {
    Emp emp = new Emp();
    emp.setComm(2600f);
    emp.setDeptno(10);
    emp.setEmpno(3);
    emp.setEname("张三");
    Date      date   =  new Date();
    SimpleDateFormat simpleDateFormat  = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    String    date_new    =   simpleDateFormat.format(date);
    emp.setHiredate(date_new);
    emp.setJob("开发");
    emp.setMgr(7839);
    emp.setSal(3200f);
    int rel =empService.update(emp,EMP);
    if(rel>0){
      System.out.println("成功!");
    }else {
      System.out.println("失败!");
    }
    
  }
  
  
  /**
   * 
  * @Description: 该方法的主要作用:删除员工
  * @Title: test_delete_emp
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_delete_emp() {
    int     empno       =   2; 
    int rel = empService.delete(empno, EMP);
    if(rel>0){
      System.out.println("成功!");
    }else {
      System.out.println("失败!");
    }
    
  }
  
  /**
   * 
  * @Description: 该方法的主要作用:根据编号查询员工
  * @Title: test_queryById_emp
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_queryById_emp() {
    int     empno     =     7839;
    Emp   emp      =  empService.queryById(empno, EMP);
    if (emp == null) {
      System.out.println("没有该员工!!!");
    } else {
      System.out.println("员工名称是:" + emp.getEname());
    }
  }
  
  
  /**
   * 
  * @Description: 该方法的主要作用:查询全部的员工
  * @Title: test_queryAll_emp
  * @param   设定文件  
  * @return  返回类型:void   
  * @throws
   */
  @Test
  public void test_queryAll_emp() {
    List<Emp>  emplist = empService.queryAll(EMP);
    for (Emp emp : emplist) {
      System.out.println(emp.getEname());
    }
  }
}


相关文章
|
12天前
|
jenkins Java 测试技术
如何使用 Jenkins 自动发布 Java 代码,通过一个电商公司后端服务的实际案例详细说明
本文介绍了如何使用 Jenkins 自动发布 Java 代码,通过一个电商公司后端服务的实际案例,详细说明了从 Jenkins 安装配置到自动构建、测试和部署的全流程。文中还提供了一个 Jenkinsfile 示例,并分享了实践经验,强调了版本控制、自动化测试等关键点的重要性。
42 3
|
14天前
|
存储 Java 关系型数据库
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践,包括连接创建、分配、复用和释放等操作,并通过电商应用实例展示了如何选择合适的连接池库(如HikariCP)和配置参数,实现高效、稳定的数据库连接管理。
31 2
|
15天前
|
Java 关系型数据库 数据库
面向对象设计原则在Java中的实现与案例分析
【10月更文挑战第25天】本文通过Java语言的具体实现和案例分析,详细介绍了面向对象设计的五大核心原则:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则帮助开发者构建更加灵活、可维护和可扩展的系统,不仅适用于Java,也适用于其他面向对象编程语言。
10 2
|
20天前
|
安全 Java
Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧
【10月更文挑战第20天】Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧,包括避免在循环外调用wait()、优先使用notifyAll()、确保线程安全及处理InterruptedException等,帮助读者更好地掌握这些方法的应用。
14 1
|
1月前
|
Java 数据库
案例一:去掉数据库某列中的所有英文,利用java正则表达式去做,核心:去掉字符串中的英文
这篇文章介绍了如何使用Java正则表达式从数据库某列中去除所有英文字符。
42 15
|
1月前
|
jenkins Java 测试技术
如何使用 Jenkins 自动发布 Java 代码,通过一个电商公司后端服务的实际案例详细说明
【10月更文挑战第8天】本文介绍了如何使用 Jenkins 自动发布 Java 代码,通过一个电商公司后端服务的实际案例,详细说明了从 Jenkins 安装配置到自动构建、测试和部署的全流程。文中还提供了一个 Jenkinsfile 示例,并分享了实践经验,强调了版本控制、自动化测试等关键点的重要性。
32 5
|
1月前
|
分布式计算 NoSQL Java
Hadoop-32 ZooKeeper 分布式锁问题 分布式锁Java实现 附带案例和实现思路代码
Hadoop-32 ZooKeeper 分布式锁问题 分布式锁Java实现 附带案例和实现思路代码
41 2
|
2月前
|
设计模式 Java 程序员
Java设计模式-适配器模式(8)
Java设计模式-适配器模式(8)
|
1月前
|
Java C#
Java的监听处理事件--小球移动案例
Java的监听处理事件--小球移动案例
13 0
|
1月前
|
设计模式 Java
Java设计模式之适配器模式
这篇文章详细讲解了Java设计模式中的适配器模式,包括其应用场景、实现方式及代码示例。
40 0