Servlet 添加员工功能

Servlet

添加员工功能

思路

  1. 数据在哪里,如何处理这些数据
    1. insert into …
  2. 使用JDBC操作数据库
  3. EmpDao封装插入操作,saveEmp
  4. 利用表单收集数据
  5. 利用Servlet接收数据,调用saveEmp完成操作

原理:

[(add-emp.png)]

案例步骤

  1. 创建数据层访问方法
   /**
   	 * 将emp对象中的数据保存到数据库中
   	 * @param emp 代表新添加的数据
   	 */
   	public void saveEmp(Emp emp) {
   		String sql = "insert into emp "
   				+ "(empno, ename, job, mgr, "
   				+ "hiredate, sal, comm, deptno) "
   				+ "values (?,?,?,?,?,?,?,?)"; 
   		Connection conn = null;
   		try {
   			conn = DBUtil.getConnection();
   			PreparedStatement ps=conn.prepareStatement(sql);
   			ps.setInt(1, emp.getEmpno());
   			ps.setString(2, emp.getEname());
   			ps.setString(3, emp.getJob());
   			ps.setInt(4, emp.getMgr());
   			ps.setDate(5, emp.getHiredate());
   			ps.setDouble(6, emp.getSal());
   			ps.setDouble(7, emp.getComm());
   			ps.setInt(8, emp.getDeptno());
   			int n = ps.executeUpdate();
   			if(n!=1) {
   				throw new RuntimeException("插入失败!");
   			}
   		} catch (Exception e) {
   			e.printStackTrace();
   			throw new RuntimeException(e);
   		}finally {
   			DBUtil.close(conn);
   		}
   	}
  1. 测试
   @Test
   	public void testSaveEmp() {
   		long now = System.currentTimeMillis();
   		Emp emp=new Emp(8000, "Tom", "端茶的", 7839, 
   				new Date(now), 2000.0, 100.0, 10); 
   		EmpDao dao = new EmpDao();
   		dao.saveEmp(emp); 
   	}
  1. 利用模板starter.html 创建add-emp.html

    核心代码

      <div class="row">
        <!-- left column -->
        <div class="col-md-8">
          <!-- general form elements -->
          <div class="box box-primary">
            <div class="box-header with-border">
              <h3 class="box-title">新员工信息</h3>
            </div>
            <!-- /.box-header -->
            <!-- form start -->
            <form role="form" action="saveEmp" method="post">
              <div class="box-body">
                <div class="form-group">
                  <label for="empno">员工号</label>
                  <input type="text" class="form-control" 
                    id="empno" placeholder="输入新员工号"
                    name="empno">
                </div>
                <div class="form-group">
                  <label for="ename">员工名</label>
                  <input type="text" class="form-control" 
                  id="ename" placeholder="输入员工名"
                  name="ename">
                </div>
                <div class="form-group">
                  <label for="job">工作</label>
                  <input type="text" class="form-control" 
                  id="job" placeholder="输入工作"
                  name="job">
                </div>
                <div class="form-group">
                  <label for="hiredate">入职日期</label>
                  <input type="date" class="form-control" 
                  id="hiredate&
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值