这次在广州实习了20天,收获还比较大。不过仍需要继续努力。这次总共布置了两个作业,我总结一下:

登记考勤信息,查看信息——主要就是往数据库增加数据,然后再从数据库中读取出来。

代码演示:

从数据库里面写入数据:

<%@page import="com.Seraphjin.Attence.model.attence"%>
<%@page import="com.Attence.BizImpl.AttenceBizImpl"%>
<%@page import="com.Attence.biz.AttenceBiz"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.text.DateFormat"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%    request.setCharacterEncoding("utf-8");String name = request.getParameter("name");String dept = request.getParameter("dept");String datetime = request.getParameter("datetime");SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");Date date = sdf.parse(datetime);int status =Integer.valueOf(request.getParameter("status")).intValue();attence a = new attence();a.setEmpName(name);a.setDept(dept);a.setDatetime(date);a.setStatus(status);AttenceBiz attenceBiz = new AttenceBizImpl();boolean result = attenceBiz.addAttence(a);if(result){//response.sendRedirect("index.jsp");out.print("成功");}else{//request.getRequestDispatcher("add.jsp").forward(request, response);out.print("失败");}%>

这个是在jsp里面写的,不是在servlet里面写的。因为好理解,不过我现在已经习惯了写在servlet里面了。

首页jsp,往里面写入数据:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>考勤记录信息统计</title><link rel="stylesheet" type="text/css" href="CSS/index.css"/></head><body><div class="all"><form id="writeDown" action="writeDown.jsp" method="post"><table border="2px"><tr><th class="zerot" colspan="2">考勤记录信息统计表</th></tr><tr><th class="onet">姓名</th><th class="twot"><input type="text" class="name" name="name"/></th></tr><tr><th class="onet">所属部门</th><th class="twot"><input type="text" class="dept" name="dept"/></th></tr><tr><th class="onet">考勤日期</th><th class="twot"><input type="date" class="atime" name="datetime" value="2017-06-26"/></th></tr><tr><th class="onet">考勤状态</th><th class="twot"><select name="status" id="status">   <option value="1">正常 </option>   <option value="2">迟到 </option>   <option value="3">早退 </option>   <option value="4">休假 </option>   <option value="5">外出 </option>   </select>   </th></tr>                </table>        <input id="btnSubmit" type="submit" name="btnSubmit" value="录入" /><input id="btnReset" type="reset" name="btnReset" value="重置" /><a href="Info.jsp">查看所有考勤信息</a></form></div></body>
</html>

获取所有数据的jsp:

<%@page import="com.Seraphjin.Attence.model.attence"%>
<%@page import="com.Attence.BizImpl.AttenceBizImpl"%>
<%@page import="com.Attence.biz.AttenceBiz"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%AttenceBiz aBiz =new AttenceBizImpl();List<attence> attences = aBiz.getAll();request.setAttribute("attences", attences);%><!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>考勤记录信息统计</title><link rel="stylesheet" type="text/css" href="CSS/index.css"/></head><body><div class="all1"><table border="2px"><tr><th class="zerot" colspan="4">考勤记录信息统计表</th></tr><tr><th class="">员工姓名</th><th class="">所属部门</th><th class="">考勤日期</th><th class="">考勤状态</th></tr><c:forEach var="attence" items="${attences}"><tr><td>${attence.empName }</td><td>${attence.dept }</td><td>${attence.datetime }</td><td>${attence.status }</td></tr>                    </c:forEach></table></div></body>
</html>

这个是把数据库里面的数据全部读取出来。

主要的方法实现:

package com.Attence.daoImpl;import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;import com.Attence.dao.AttenceDao;
import com.Seraphjin.Attence.model.attence;public class AttenceDaoImpl extends BaseDao implements AttenceDao {ArrayList<attence> attences = new ArrayList<attence>();@Overridepublic List<attence> getAll() {try {openConnection();String sql= "select * from attence";ResultSet resultSet = executeQuery(sql, null);while (resultSet.next()) {attence a = new attence();a.setId(resultSet.getInt("id"));a.setEmpName(resultSet.getString("empName"));a.setDept(resultSet.getString("dept"));a.setDatetime(resultSet.getDate("datetime"));a.setStatus(resultSet.getInt("status"));attences.add(a);}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}finally{closeResourse();}return attences;}@Overridepublic boolean addAttence(attence a) {boolean result = false;try {openConnection();String sql ="insert into attence value(?,?,?,?,?)";result =excute(sql, new Object[]{a.getId(),a.getEmpName(),a.getDept(),a.getDatetime(),a.getStatus()                });            } catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}finally{closeResourse();}return result;}@Overridepublic boolean deleteAttence(int id) {boolean result = false;try {openConnection();String sql ="delete from attence where id = ?";result = excute(sql, new Object[]{id});} catch (ClassNotFoundException e) {            e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}finally{closeResourse();}        return result;}@Overridepublic boolean updateAttence(attence a) {        boolean result = false;try {openConnection();String sql = "update attence set empName = ?, dept =?, datetime=?,status=? where id=?";result = excute(sql, new Object[]{a.getId()});} catch (ClassNotFoundException e) {            e.printStackTrace();} catch (SQLException e) {            e.printStackTrace();}finally{closeResourse();}        return result;}}

连接数据库的基本操作:

package com.Attence.daoImpl;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class BaseDao {//连接数据库    private String className = "com.mysql.jdbc.Driver";private String dburl = "jdbc:mysql://localhost/ZJJexe";private String user = "root";private String password = "root";private Connection connection;private PreparedStatement statement;private ResultSet resultSet;public void openConnection() throws ClassNotFoundException, SQLException{//加载驱动
        Class.forName(className);//创建连接connection = DriverManager.getConnection(dburl,user,password);        }//查询方法public ResultSet executeQuery(String sql,Object[] params) throws SQLException{        statement =connection.prepareStatement(sql);//追加参数if(params !=null){int i=1;for (Object object : params) {statement.setObject(i, object);    i++;}}        resultSet =statement.executeQuery();return resultSet;                }//更新public boolean excute(String sql,Object[] params) throws SQLException {statement =connection.prepareStatement(sql);if(params !=null){int i=1;for (Object object : params) {statement.setObject(i, object);        i++;}}int updateCount = statement.executeUpdate();if (updateCount != 0) {return true;            }else{return false;}}//释放资源public void closeResourse(){try {if(resultSet != null){resultSet.close();}if(statement != null){statement.close();}if(connection != null){connection.close();}} catch (SQLException e) {// TODO Auto-generated catch block
            e.printStackTrace();}}}

其他就是方法的声明与调用。还有一个实体类,是员工信息:

package com.Seraphjin.Attence.model;import java.util.Date;public class attence {private int id;private String empName;private String dept;private Date datetime;private int status;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getEmpName() {return empName;}public void setEmpName(String empName) {this.empName = empName;}public String getDept() {return dept;}public void setDept(String dept) {this.dept = dept;}public Date getDatetime() {return datetime;}public void setDatetime(Date datetime) {this.datetime = datetime;}public int getStatus() {return status;}public void setStatus(int status) {this.status = status;}}

OK~

近期我要学会用小乌龟,然后将自己的小项目部署到Github上~加油!

转载于:https://www.cnblogs.com/zxcjj/p/7147419.html

作业1:小型考勤登记表相关推荐

  1. HTML5作业1员工信息登记表

    首先,我们的作业是写个表单,如图所示 然后我们开始对它进行分析排版 1.一般来说表单位置应当居中,我们可以在外部利用margin: 0 auto;position: relative;内部利用left ...

  2. 基于jsp(java)高校学生考勤管理系统设计与实现

    获取项目源文件,学习交流联系Q:1415736481,可指导毕设,课设 本系统主要针对目前高校学生在线请假以及学生上课出勤管理而设计的信息系统.本系统总体上由三大功能模块:请假系统模块.考勤系统模块. ...

  3. java学生考勤代码免费,基于jsp的学生考勤管理-JavaEE实现学生考勤管理 - java项目源码...

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的学生考勤管理, 该项目可用各类java课程设计大作业中, 学生考勤管理的系统架构分为前后台两部分, 最终实现在线上 ...

  4. HTML学生考勤界面代码,基于jsp的学生考勤系统-JavaEE实现学生考勤系统 - java项目源码...

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的学生考勤系统, 该项目可用各类java课程设计大作业中, 学生考勤系统的系统架构分为前后台两部分, 最终实现在线上 ...

  5. java EE crm代码_基于jsp的小型企业CRM系统-JavaEE实现小型企业CRM系统 - java项目源码...

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的小型企业CRM系统, 该项目可用各类java课程设计大作业中, 小型企业CRM系统的系统架构分为前后台两部分, 最 ...

  6. java EE crm代码_基于jsp的小型企业CRM-JavaEE实现小型企业CRM - java项目源码

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的小型企业CRM, 该项目可用各类java课程设计大作业中, 小型企业CRM的系统架构分为前后台两部分, 最终实现在 ...

  7. 如何跟踪员工考勤时间和出勤率

    用于跟踪员工考勤时间和出勤的程序可以为企业带来各种好处,它可以帮助管理人员掌握正在进行的项目及其完成状态,并让员工更好地了解某些任务需要多长时间,以便他们可以做出相应的计划.当您有效地跟踪员工的出勤时 ...

  8. 学生考勤及行为管理系统_学生考勤管理系统_考勤管理系统-先知科技

    考勤管理系统简介: 先知智慧校园考勤管理系统帮助各大院校解决教职工考勤,学生上课考勤多种方式考勤.可通过手机端app考勤,终端考勤机器考勤,刷卡通过人形通道考勤,电子班牌考勤,人脸识别考勤多种方式正对 ...

  9. 跟踪员工考勤时间和出勤率的四种方法

    用于跟踪员工考勤时间和出勤的程序可以为企业带来各种好处,它可以帮助管理人员掌握正在进行的项目及其完成状态,并让员工更好地了解某些任务需要多长时间,以便他们可以做出相应的计划.当您有效地跟踪员工的出勤时 ...

  10. 计算机与网络基础知识的问答

    计算机系统偏软件部分的组成是什么 操作系统的简介 简述进程管理 简述存储管理 简述设备管理 简述文件管理 简述作业管理 简介网络操作系统 简述数据库系统基础知识 简述关系数据库的设计 简述分布式数据库 ...

最新文章

  1. dma接收双缓存 stm32_容易被大多数人忽视的STM32串口DMA问题
  2. Android 判断屏幕方向一个大坑
  3. 程序员应该具备的能力
  4. 第十三天-linux正则表达式及重点命令
  5. shiro认证授权过程
  6. 基于JAVA+SpringMVC+Mybatis+MYSQL的铁路售票系统
  7. linux每日一练:Enable multithreading to use std::thread: Operation not permitted问题解决
  8. POJ 1015 Jury Compromise
  9. 带存储功能的计算器是什么样的_19年中级会计考生能不能带计算器考试?今天统一回复!...
  10. 数控dda法直线插补程序c语言,DDA法直线插补
  11. yapi 权限_YApi内部部署文档
  12. HTML制作水波纹,怎样制作水波纹
  13. [机缘参悟-36]:鬼谷子-飞箝篇 - 面对捧杀与诱饵的防范之道
  14. 从荣耀V20看技术人怎么销售自己
  15. 一个花里胡哨的渐变雷达图 echarts图表
  16. 工业物联网解决方案:该如何打造智能工厂
  17. 数据分析三剑客之特征值提取(七)
  18. 从零开始建立机械臂URDF模型
  19. Linux用户的基本操作1 用户相关信息 及useradd /usermod 部分
  20. spring boot如何引入XML文件

热门文章

  1. 【CSS笔记】CSS实现后台管理系统主界面布局
  2. Java实现Base64的编码与解码
  3. Qt Https http 请求案例
  4. 济南:建设中国软件名城
  5. 运维向运营转型,会是企业IT传统运维的发展方向吗?
  6. IT与DT技术几点解释
  7. 如何清除浏览器历史记录-在Chrome,Firefox和Safari中删除浏览历史记录
  8. 最新版gg服务器框架安装器,GG服务框架安装器
  9. java拆箱 装箱 一篇文章就够了
  10. Ubiquitous Religions(并查集)