DeptDao

package com.javasm.dao;

import com.javasm.bean.Dept;
import com.javasm.util.JDBCUtils; import java.sql.*;
import java.util.ArrayList;
import java.util.List; /**
* @Author:Zxb
* @Version:1.0
* @Date:2022/12/12-14:37
* @Since:jdk1.8
* @Description:
*/
public class DeptDao { /**
* 添加部门
*
* @param dept
* @return 返回受影响行数
*/
public int addDept(Dept dept) {
int i = 0;
//准备sql
String sql = "insert into tb_department values(?,?)";
//获取数据库连接对象
Connection connection = JDBCUtils.getConnection();
PreparedStatement statement = null;
//先判断
if (JDBCUtils.isConnection(connection)) {
try {
//获取执行对象
statement = connection.prepareStatement(sql);
statement.setInt(1, dept.getDeptId());
statement.setString(2, dept.getDeptName());
//发送语句并执行
i = statement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
//资源回收
JDBCUtils.close(connection, statement);
}
}
return i;
} /**
* 根据id删除部门
*
* @param id
* @return 受影响行数
*/
public int deleteDeptById(int id) {
int i = 0;
String sql = "delete from tb_department where dept_id=?";
//获取数据库连接对象
Connection connection = JDBCUtils.getConnection();
//执行对象
PreparedStatement statement = null;
//先判断
if (JDBCUtils.isConnection(connection)){
try {
//获取执行对象
statement = connection.prepareStatement(sql);
//解决参数
statement.setInt(1, id);
//执行
i = statement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtils.close(connection, statement);
}
} //返回受影响行数
return i;
} /**
* 修改
*
* @param dept
* @return 返回收影响行数
*/
public int updateDept(Dept dept) {
int i = 0;
String sql = "update tb_department set dept_name=? where dept_id=?";
//获取连接对象
Connection connection = JDBCUtils.getConnection();
//执行对象
PreparedStatement statement = null;
try {
statement = connection.prepareStatement(sql);
//解决参数
statement.setString(1, dept.getDeptName());
statement.setInt(2, dept.getDeptId());
//执行
i = statement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtils.close(connection, statement);
}
return i;
} /**
* 根据编号查询部门信息
* @param id
* @return
*/
public Dept getDeptById(int id) {
//准备对象
Dept dept = null;
//准备sql
String sql = "select * from tb_department where dept_id=?";
//获取连接对象
Connection connection = JDBCUtils.getConnection();
//执行对象
PreparedStatement statement = null;
//结果集
ResultSet resultSet = null;
//先判断
if (JDBCUtils.isConnection(connection)) {
try {
statement = connection.prepareStatement(sql);
//解决参数
statement.setInt(1, id);
//执行
resultSet = statement.executeQuery();
if (resultSet.next()) {
dept = new Dept();
dept.setDeptId(resultSet.getInt("dept_id"));
dept.setDeptName(resultSet.getString("dept_name"));
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
JDBCUtils.close(connection,statement,resultSet);
}
}
return dept;
} /**
* 查询全部部门信息
* @return
*/
public List<Dept> findAllDept(){
//准备集合
List<Dept> deptList = new ArrayList<>(10);
//准备sql
String sql="select * from tb_department order by dept_id";
//获取连接对象
Connection connection = JDBCUtils.getConnection();
//执行对象
PreparedStatement statement = null;
ResultSet resultSet = null;
if(JDBCUtils.isConnection(connection)){
try {
statement=connection.prepareStatement(sql);
//执行
resultSet=statement.executeQuery();
//循环判断
while (resultSet.next()){
//创建一个部门对象
Dept dept = new Dept();
//取值存入到属性中
dept.setDeptId(resultSet.getInt("dept_id"));
dept.setDeptName(resultSet.getString("dept_name"));
//将对象存入到集合中
deptList.add(dept);
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
JDBCUtils.close(connection,statement,resultSet);
}
}
return deptList;
} }

DeptService

package com.javasm.service;

import com.javasm.bean.Dept;
import com.javasm.dao.DeptDao; import javax.sound.midi.Soundbank;
import java.util.List;
import java.util.Scanner; /**
* @Author:Zxb
* @Version:1.0
* @Date:2022/12/12-15:29
* @Since:jdk1.8
* @Description:
*/
public class DeptService { private Scanner scanner = new Scanner(System.in); private DeptDao deptDao = new DeptDao(); /**
* 添加
*/
public void add(){
System.out.println("部门管理>>>添加部门");
Dept dept = new Dept();
System.out.println("请输入部门的编号");
dept.setDeptId(scanner.nextInt());
System.out.println("请输入部门的名称");
dept.setDeptName(scanner.next());
int i = deptDao.addDept(dept);
if(i>0){
System.out.println("添加成功");
}else{
System.out.println("添加失败");
}
} /**
* 删除
*/
public void delete(){
System.out.println("部门管理>>>删除部门");
System.out.println("请输入要删除的部门编号:");
int inputId = scanner.nextInt();
int i=deptDao.deleteDeptById(inputId);
if(i>0){
System.out.println("删除成功");
}else{
System.out.println("删除失败");
}
} /**
* 修改
*/
public void update(){
System.out.println("部门管理>>>修改部门");
System.out.println("请输入修改部门的编号");
int id = scanner.nextInt();
//根据编号查找部门信息
Dept dept = deptDao.getDeptById(id);
if (dept == null) {
System.out.println("[修改失败,该部门不存在!]");
return;
}
System.out.println("原部门名称:<" + dept.getDeptName() + ">请输入修改之后的部门名称:");
dept.setDeptName(scanner.next());
int i = deptDao.updateDept(dept);
if(i>0){
System.out.println("修改成功");
}else{
System.out.println("修改失败");
}
} /**
* 查询
*/
public void find(){
System.out.println("部门管理>>>查看部门");
List<Dept> deptList = deptDao.findAllDept();
if(deptList.isEmpty()){
System.out.println("还没有任何部门信息");
return;
}
for (Dept dept : deptList) {
System.out.println(dept);
}
} }

(粗糙版)DeptDao,Service的更多相关文章

  1. 基于gSOAP使用头文件的C语言版web service开发过程例子

    基于gSOAP使用头文件的C语言版web service开发过程例子 一服务端 1 打开VS2005,创建一个工程,命名为calcServer. 2 添加一个头文件calc.h,编辑内容如下: 1// ...

  2. python-优酷系统管理员视图粗糙版(无详细注释)

    目录 Tank-YouKu(仅管理员功能粗糙版) 优酷系统管理员视图功能 前期准备 创库创表语句 安装pymysql模块 安装DBUtils模块 配置 db_pool 项目架构与数据流向 目录结构 s ...

  3. 【伪一周小结(没错我一周就做了这么点微小的工作)】HDOJ-1241 Oil Deposits 初次AC粗糙版对比代码框架重构版

    2016 11月最后一周 这一周复习了一下目前大概了解的唯一算法--深度优先搜索算法(DFS).关于各种细节的处理还是极为不熟练,根据题意判断是否还原标记也无法轻松得出结论.不得不说,距离一个准ACM ...

  4. Apache Tomcat 绿色版安装Service(服务)

    1.配置CATALINA_HOME的环境变量:  变量名:CATALINA_HOME  值:tomcat安装或解压的根目录如:c:\Apache tomcat6.0 2.开始->运行->c ...

  5. 粗糙版ORM(附详细注释)

    目录 ORM 其他 ORM代码 数据库表代码 mysql代码 db/models.py db/pymysql_opreator.py ORM 作为数据库表记录 和 python中对象的映射关系中间件 ...

  6. web框架和django基础(粗糙版)

    web框架本质:    浏览器:socket客户端    服务器:socket服务端        1.自己写socket服务端(最傻)        #!/usr/bin/env python    ...

  7. 【粗糙版】javascript的变量、数据类型、运算符、流程结构

    本文内容: javascript的变量 javascript的数据类型 javascript的运算符 javascript的流程结构 首发日期:2018-05-09 javascript的变量 创建变 ...

  8. 前端小练习-Michael的博客界面(粗糙版)

    michael-blog.html <!DOCTYPE html> <html lang="en"> <head> <meta chars ...

  9. 低功耗蓝牙ATT/GATT/Profile/Service/Characteristic规格解读

    什么是蓝牙service和characteristic?到底怎么理解蓝牙profile?ATT和GATT两者如何区分?什么又是attribute?attribute和characteristic的区别 ...

  10. 【Android】家庭记账本手机版开发报告五

    一.说在前面   昨天  1.添加菜单(查询.清除所有等)2.使用滑动删除   今天 1.创建登入和注册界面 2.向数据库添加一张用户表   问题 做完后在登入时有bug(未解决) 二.界面的搭建 1 ...

随机推荐

  1. springboot配置文件中的基本配置

    #应用启动端口设置server.port=9088#=================================微信相关====================================# ...

  2. python pip 下载出问题解决方法(超时出错)

    问题如下, 百度了一下找到了解决方法 这样的原因是连接不到国外的安装源,在下载的代码行中手动输入国内安装源 例如: pip install itchat -i https://pypi.tuna.ts ...

  3. K8s高可用集群部署(四)

    k8s官网高可用部署参考:https://kubernetes.io/docs/setup/independent/high-availability/                 目录 一 ,k ...

  4. MySQL 常用命令(3)------表基本操作

    五.表的基本操作 1.创建表 语法:create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]); ...

  5. nacos之配置中心使用

    发布配置 dataId 数据的key group 组id 获取配置 通过group,dataId获取配置信息 监听配置 Listening-Configs里的值是重点,组成方式 dataId的值%02 ...

  6. labwindows/cvi activex 控件无法正常使用问题解决

    在进行labwindows/cvi编程时,想使用时间控件,需要在界面上点击右键的activex选项中选择Microsoft Data and Time picker control6.0(SP4).如 ...

  7. Lua监听事件观察者模式(多个监听者监听)

    fireEvent 产生事件,创建协程分发(在registerEventListener注册过的事件中通过事件名字找到对应的信息,然后执行对应模块的OnEvent函数),多个地方都注册了同一个事件的话 ...

  8. 开始学习Linux

    1.路径:    绝对路径: 从根目录开始描述;    相对路径: 从当前位置开始描述的路径;    . 当前目录    .. 上级目录    ~/ <===> /home/acs 家目录 ...

  9. Flash、EEPROM、SRAM的区别与理解

    Flash.EEPROM.SRAM的区别与理解1. Flash.EEPROM.SRAM的区别(1) Flash存储器Flash适用于速度要求高.容量要求大.掉电时要求数据不丢失的场合. (2) EEP ...

  10. DevOps Gitlab环境部署

    DevOps 介绍 目录 DevOps 介绍 一.DevOps 介绍 1.1.1 DevOps 介绍 1.1.2 CI/CD简介 1.1.2 Gitlab安装与使用 一.DevOps 介绍 1.1.1 ...