(粗糙版)DeptDao,Service
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的更多相关文章
- 基于gSOAP使用头文件的C语言版web service开发过程例子
基于gSOAP使用头文件的C语言版web service开发过程例子 一服务端 1 打开VS2005,创建一个工程,命名为calcServer. 2 添加一个头文件calc.h,编辑内容如下: 1// ...
- python-优酷系统管理员视图粗糙版(无详细注释)
目录 Tank-YouKu(仅管理员功能粗糙版) 优酷系统管理员视图功能 前期准备 创库创表语句 安装pymysql模块 安装DBUtils模块 配置 db_pool 项目架构与数据流向 目录结构 s ...
- 【伪一周小结(没错我一周就做了这么点微小的工作)】HDOJ-1241 Oil Deposits 初次AC粗糙版对比代码框架重构版
2016 11月最后一周 这一周复习了一下目前大概了解的唯一算法--深度优先搜索算法(DFS).关于各种细节的处理还是极为不熟练,根据题意判断是否还原标记也无法轻松得出结论.不得不说,距离一个准ACM ...
- Apache Tomcat 绿色版安装Service(服务)
1.配置CATALINA_HOME的环境变量: 变量名:CATALINA_HOME 值:tomcat安装或解压的根目录如:c:\Apache tomcat6.0 2.开始->运行->c ...
- 粗糙版ORM(附详细注释)
目录 ORM 其他 ORM代码 数据库表代码 mysql代码 db/models.py db/pymysql_opreator.py ORM 作为数据库表记录 和 python中对象的映射关系中间件 ...
- web框架和django基础(粗糙版)
web框架本质: 浏览器:socket客户端 服务器:socket服务端 1.自己写socket服务端(最傻) #!/usr/bin/env python ...
- 【粗糙版】javascript的变量、数据类型、运算符、流程结构
本文内容: javascript的变量 javascript的数据类型 javascript的运算符 javascript的流程结构 首发日期:2018-05-09 javascript的变量 创建变 ...
- 前端小练习-Michael的博客界面(粗糙版)
michael-blog.html <!DOCTYPE html> <html lang="en"> <head> <meta chars ...
- 低功耗蓝牙ATT/GATT/Profile/Service/Characteristic规格解读
什么是蓝牙service和characteristic?到底怎么理解蓝牙profile?ATT和GATT两者如何区分?什么又是attribute?attribute和characteristic的区别 ...
- 【Android】家庭记账本手机版开发报告五
一.说在前面 昨天 1.添加菜单(查询.清除所有等)2.使用滑动删除 今天 1.创建登入和注册界面 2.向数据库添加一张用户表 问题 做完后在登入时有bug(未解决) 二.界面的搭建 1 ...
随机推荐
- springboot配置文件中的基本配置
#应用启动端口设置server.port=9088#=================================微信相关====================================# ...
- python pip 下载出问题解决方法(超时出错)
问题如下, 百度了一下找到了解决方法 这样的原因是连接不到国外的安装源,在下载的代码行中手动输入国内安装源 例如: pip install itchat -i https://pypi.tuna.ts ...
- K8s高可用集群部署(四)
k8s官网高可用部署参考:https://kubernetes.io/docs/setup/independent/high-availability/ 目录 一 ,k ...
- MySQL 常用命令(3)------表基本操作
五.表的基本操作 1.创建表 语法:create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]); ...
- nacos之配置中心使用
发布配置 dataId 数据的key group 组id 获取配置 通过group,dataId获取配置信息 监听配置 Listening-Configs里的值是重点,组成方式 dataId的值%02 ...
- labwindows/cvi activex 控件无法正常使用问题解决
在进行labwindows/cvi编程时,想使用时间控件,需要在界面上点击右键的activex选项中选择Microsoft Data and Time picker control6.0(SP4).如 ...
- Lua监听事件观察者模式(多个监听者监听)
fireEvent 产生事件,创建协程分发(在registerEventListener注册过的事件中通过事件名字找到对应的信息,然后执行对应模块的OnEvent函数),多个地方都注册了同一个事件的话 ...
- 开始学习Linux
1.路径: 绝对路径: 从根目录开始描述; 相对路径: 从当前位置开始描述的路径; . 当前目录 .. 上级目录 ~/ <===> /home/acs 家目录 ...
- Flash、EEPROM、SRAM的区别与理解
Flash.EEPROM.SRAM的区别与理解1. Flash.EEPROM.SRAM的区别(1) Flash存储器Flash适用于速度要求高.容量要求大.掉电时要求数据不丢失的场合. (2) EEP ...
- DevOps Gitlab环境部署
DevOps 介绍 目录 DevOps 介绍 一.DevOps 介绍 1.1.1 DevOps 介绍 1.1.2 CI/CD简介 1.1.2 Gitlab安装与使用 一.DevOps 介绍 1.1.1 ...