JAVA WEB 使用dao方式实现增加雇员、修改雇员信息,显示雇员图片等功能

本文主要是介绍JAVA WEB 使用dao方式实现增加雇员、修改雇员信息,显示雇员图片等功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

整个项目的目录架构如下:
在这里插入图片描述

废话不多说,直接上代码:
Emp.java

package dao;
import java.util.Date;import org.eclipse.jdt.internal.compiler.ast.ThisReference;import com.mysql.jdbc.Blob;public class Emp {private int empno;private String ename;private String job;private Date hiredate;private float sal;private float comm;private String image;public int getEmpno() {return empno;}public void setEmpno(int empno) {this.empno = empno;}public String getEname() {return ename;}public void setEname(String ename) {this.ename = ename;}public String getJob() {return job;}public void setJob(String job) {this.job = job;}public Date getHiredate() {return hiredate;}public void setHiredate(Date hiredate) {this.hiredate = hiredate;}public float getSal() {return sal;}public void setSal(float sal) {this.sal = sal;}public float getComm() {return comm;}public void setComm(float comm) {this.comm = comm;}public String getImage() {return image;}public void setImage(String image) {this.image=image;}}

DatabaseConnection.java

package dao;
import java.sql.Connection;
import java.sql.DriverManager;//定义数据库连接类
public class DatabaseConnection {public static final String DBDRIVER = "com.mysql.jdbc.Driver";public static final String DBURL = "jdbc:mysql://localhost:3306/demo";public static final String DBUSER = "root";public static final String DBPASS = "root";private Connection conn = null;public DatabaseConnection() throws Exception {Class.forName(DBDRIVER);conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS);}public Connection getConnection() {return this.conn;}public void close() throws Exception {if (this.conn != null) {try {this.conn.close();} catch (Exception e) {throw e;}}}
}

IEmpDAO.java

package dao;
//定义数据库操作的接口import java.util.List;public interface IEmpDAO {public boolean doCreate(Emp emp) throws Exception;public List<Emp> findALL(String keyWord) throws Exception;public Emp findByid(int empno) throws Exception;public boolean doUpdate(Emp emp) throws Exception;}

EmpDAOImpl.java

package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;public class EmpDAOImpl implements IEmpDAO {private Connection conn = null;private PreparedStatement pstmt = null;public EmpDAOImpl(Connection conn) {this.conn = conn;}public boolean doCreate(Emp emp) throws Exception {boolean flag = false;String sql = "insert into emp(empno,ename,job,hiredate,sal,comm,image) values(?,?,?,?,?,?,?)";this.pstmt = this.conn.prepareStatement(sql);this.pstmt.setInt(1, emp.getEmpno());this.pstmt.setString(2, emp.getEname());this.pstmt.setString(3, emp.getJob());this.pstmt.setDate(4, new java.sql.Date(emp.getHiredate().getTime()));this.pstmt.setFloat(5, emp.getSal());this.pstmt.setFloat(6, emp.getComm());this.pstmt.setString(7, emp.getImage());if (this.pstmt.executeUpdate() > 0) {flag = true;}this.pstmt.close();return flag;}public List<Emp> findALL(String keyWord) throws Exception {List<Emp> all = new ArrayList<Emp>();String sql = "select empno,ename,job,hiredate,sal,comm,image From emp where ename like ? or job like ?";this.pstmt=this.conn.prepareStatement(sql);this.pstmt.setString(1, "%" + keyWord + "%");this.pstmt.setString(2, "%" + keyWord + "%");ResultSet rs = this.pstmt.executeQuery();Emp emp = null;while (rs.next()) {emp = new Emp();emp.setEmpno(rs.getInt(1));emp.setEname(rs.getString(2));emp.setJob(rs.getString(3));emp.setHiredate(rs.getDate(4));emp.setSal(rs.getFloat(5));emp.setComm(rs.getFloat(6));emp.setImage(rs.getString(7));all.add(emp);}this.pstmt.close();return all;}public Emp findByid(int empno) throws Exception {Emp emp = null;String sql = "select empno,ename,job,hiredate,sal,comm,image from emp where empno=?";this.pstmt = this.conn.prepareStatement(sql);this.pstmt.setInt(1, empno);ResultSet rs = this.pstmt.executeQuery();if (rs.next()) {emp = new Emp();emp.setEmpno((rs.getInt(1)));emp.setEname(rs.getString(2));emp.setJob(rs.getString(3));emp.setHiredate(rs.getDate(4));emp.setSal(rs.getFloat(5));emp.setComm(rs.getFloat(6));emp.setImage(rs.getString(7));}this.pstmt.close();return emp;}public boolean doUpdate(Emp emp) throws Exception {boolean flag = false;String sql = "update emp set ename=?,job=?,hiredate=?,sal=?,comm=?,image=? where empno=?";this.pstmt = this.conn.prepareStatement(sql);this.pstmt.setString(1, emp.getEname());this.pstmt.setString(2, emp.getJob

这篇关于JAVA WEB 使用dao方式实现增加雇员、修改雇员信息,显示雇员图片等功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/203654

相关文章

grom设置全局日志实现执行并打印sql语句

《grom设置全局日志实现执行并打印sql语句》本文主要介绍了grom设置全局日志实现执行并打印sql语句,包括设置日志级别、实现自定义Logger接口以及如何使用GORM的默认logger,通过这些... 目录gorm中的自定义日志gorm中日志的其他操作日志级别Debug自定义 Loggergorm中的

MySQL InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据

《MySQLInnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据》mysql的ibdata文件被误删、被恶意修改,没有从库和备份数据的情况下的数据恢复,不能保证数据库所有表数据... 参考:mysql Innodb表空间卸载、迁移、装载的使用方法注意!此方法只适用于innodb_fi

Spring Boot整合消息队列RabbitMQ的实现示例

《SpringBoot整合消息队列RabbitMQ的实现示例》本文主要介绍了SpringBoot整合消息队列RabbitMQ的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录RabbitMQ 简介与安装1. RabbitMQ 简介2. RabbitMQ 安装Spring

Gin框架中的GET和POST表单处理的实现

《Gin框架中的GET和POST表单处理的实现》Gin框架提供了简单而强大的机制来处理GET和POST表单提交的数据,通过c.Query、c.PostForm、c.Bind和c.Request.For... 目录一、GET表单处理二、POST表单处理1. 使用c.PostForm获取表单字段:2. 绑定到结

nginx upstream六种方式分配小结

《nginxupstream六种方式分配小结》本文主要介绍了nginxupstream六种方式分配小结,包括轮询、加权轮询、IP哈希、公平轮询、URL哈希和备份服务器,具有一定的参考价格,感兴趣的可... 目录1 轮询(默认)2 weight3 ip_hash4 fair(第三方)5 url_hash(第三

springMVC返回Http响应的实现

《springMVC返回Http响应的实现》本文主要介绍了在SpringBoot中使用@Controller、@ResponseBody和@RestController注解进行HTTP响应返回的方法,... 目录一、返回页面二、@Controller和@ResponseBody与RestController

JAVA集成本地部署的DeepSeek的图文教程

《JAVA集成本地部署的DeepSeek的图文教程》本文主要介绍了JAVA集成本地部署的DeepSeek的图文教程,包含配置环境变量及下载DeepSeek-R1模型并启动,具有一定的参考价值,感兴趣的... 目录一、下载部署DeepSeek1.下载ollama2.下载DeepSeek-R1模型并启动 二、J

nginx中重定向的实现

《nginx中重定向的实现》本文主要介绍了Nginx中location匹配和rewrite重定向的规则与应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下... 目录一、location1、 location匹配2、 location匹配的分类2.1 精确匹配2

Nginx之upstream被动式重试机制的实现

《Nginx之upstream被动式重试机制的实现》本文主要介绍了Nginx之upstream被动式重试机制的实现,可以通过proxy_next_upstream来自定义配置,具有一定的参考价值,感兴... 目录默认错误选择定义错误指令配置proxy_next_upstreamproxy_next_upst

nginx生成自签名SSL证书配置HTTPS的实现

《nginx生成自签名SSL证书配置HTTPS的实现》本文主要介绍在Nginx中生成自签名SSL证书并配置HTTPS,包括安装Nginx、创建证书、配置证书以及测试访问,具有一定的参考价值,感兴趣的可... 目录一、安装nginx二、创建证书三、配置证书并验证四、测试一、安装nginxnginx必须有"-