(粗糙版)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 ...
随机推荐
- constexpr和const
const表示一个变量的值不能改变,这个值可以使运行期间得到的const int sz = get_size(); constexpr是提示编译器,该值可以在编译期间就计算出来,并进行替换,不用等到运 ...
- DIV CSS遮罩层(弹窗窗口)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- vim超级替换
vim实现变量替换, 检测代码中#0-F0-FH替换为0x0-F0-F,例如#09FH替换为0x09F :%s/#\(\w\)\(\w\)\(\w\)H/0x\1\2\3/g 注: 标准格式 :s/p ...
- umi build出现的Path must be a string的问题解决
问题 使用umi build出现的Path must be a string恶心解决方法 umi build出现的Path must be a string的问题解决 解决方案 参考链接:https: ...
- Java基础之类型转换
类型转换 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换 低 --------------------------------------------------------&g ...
- Vue.Draggable使用总结
Draggable为基于Sortable.js的vue组件,用以实现拖拽功能. 特性 支持触摸设备 支持拖拽和选择文本 支持智能滚动 支持不同列表之间的拖拽 不以jQuery为基础 和视图模型同步刷新 ...
- 在element plus中使用checkbox 多选框实现大区省市区选择回选
1.产品拿来淘宝后台页面,希望我们的快递发货也用这一套 长这样: 2.后端说提供的数据是树形结构,大区id不要传,传省的id,勾选哪个传哪个 3.element ui的树形插件和级联选择器在数据上是 ...
- sql server 检测是否更新并输出更新的数据
create table dbo.test1 (id int,name varchar(10))create table dbo.test2 (id int) insert into dbo.test ...
- JavaScript判断是否包含中文字符
一. <script language="javascript"> function funcChina(){ var obj = document.form1.txt ...
- 启动anaconda的报错:There is an instance of anaconda navigator already running error
首先调出控制台(win+r,输入cmd),然后在控制台输入 tasklist | findstr "pythonw" 在显示出pythonw.exe后,找到其后面的pid(数字), ...