JAVAWEB的驾校培训管理系统的员工管理子系统的实现

第五章 驾校员工管理子系统的实现与测试

5.1 项目地址

点击查看

5.1.1 环境搭建

项目结构实现说明,如图5.1所示:

图 5.1 项目结构图

5.1.2 数据层的实现

本课题数据库采用SQL Server 2008,数据库名称DrivingSchoolStaffManagementDB,登录名:sa,密码:123456。

5.1.3 数据连接层的实现

该系统数据连接层访问数据库采用Hibernate技术[9],示例代码如下,其配置文件详细代码见附录

<hibernate-configuration>

    <session-factory>

       <property name="dialect">

           org.hibernate.dialect.SQLServerDialect

       </property>

       <property name="connection.url">

           jdbc:sqlserver://localhost:1433;DatabaseName=DrivingSchoolStaffManagementDB

       </property>

       <property name="connection.username">sa</property>

       <property name="connection.password">123456</property>

       <property name="connection.driver_class">

           com.microsoft.sqlserver.jdbc.SQLServerDriver

       </property>

       <property name="myeclipse.connection.profile">

           DrivingSchoolStaffManagementDB

       </property>

   </session-factory>

<hibernate-configuration>

 

5.1.4基于hibernate的数据库连接创建的调用

示例代码:

public interface iHibBaseDAO {

   public int inser4t(Object obj);

   public boolean insert(List<Object> list);

   public boolean delete(Object obj);

   public boolean update(Object obj);

   public List select(String hql);

public List select(String hql,int startIndex, int length);

}

 

 

 

 

 

 

5.1.5数据操作层的实现

示例代码如下,详细代码见附录

public class HibBaseDAO implements iHibBaseDAO {

   Session globesession = null;

   private static final Log log = LogFactory.getLog(HibBaseDAO.class);

   public static final int INSERT = 1; //代表添加操作

   public static final int UPDATE = 2; //代表修改操作

   public static final int DELETE = 3; //代表删除操作

   public void close(){

       globesession.close();

   }

    @Override

 

 

 

 

 

5.1.6 数据操作层的调用实现

业务层根据业务模块先定义DAO业务接口,再实现DAO以创建IMPL业务实现类[10]。示例代码见附录:

public class AdminUserDAOImpl implements  AdminUserDAO

{

   private HibBaseDAO bdao = null;

 

   public void setBdao(HibBaseDAO bdao) {

       this.bdao = bdao;

   }

  

   @Override

   public VAdminUser login(String AdminUserID, String pwd)

   {

       String hql = "from VAdminUser where AdminUserid = ? and pwd= ?";

       Object[] para = {  AdminUserid , pwd };

       List list = bdao.select(hql, para);

       if(list.size() > 0)

       {

          return (VAdminUser )list.get(0);

       }

       else

       {

          return null;

       }

   }

}

5.1.7 实体交换层的实现

实体交换层,用于存储数据对象,实体对象一般自动生成为.xml文件[11],放在model层。

示例代码如下,详细代码见附录。

<hibernate-mapping>

    <class name="model.TAdminUser" table="T_TAdminUser" schema="dbo" catalog="DrivingSchoolStaffManagementDB"  dynamic-insert="true">

        <id name="AdminUserID" type="java.lang.String">

            <column name="AdminUserID" length="50" />

            <generator class="assigned"></generator>

        </id>

        <property name="AdminUserName" type="java.lang.String">

            <column name="AdminUserName" length="50" />

        </property>

        <property name="pwd" type="java.lang.String">

            <column name="pwd" length="50"/>

        </property>

    </class>

</hibernate-mapping>

 

对应实体示例代码,详细代码见附录

public class TAdminUser implements java.io.Serializable {

   // Fields

   private Integer AdminUserID;

   private String AdminUserName;

   private String pwd;

   // Constructors

   public Integer getAdminUserID() {

       return this.AdminUserID;

   }

   public String getAdminUserName() {

       return this.AdminUserName;

   }

   public void setAdminUserName(String AdminUserName) {

       this.AdminUserName = AdminUserName;

   }

   public String getPwd() {

       return this.pwd;

   }

 

   public void setPwd(String pwd) {

       this.pwd= pwd;

   }

   }

 

 

 

5.1.8系统业务层的实现

系统业务层接口调用model层。示例代码见附录。

public interface AdminUserDAO {

   public VAdminUser login(Int Adminuserid,String pwd);

}

}

 

5.1.9信息业务层的调用实现

示例代码:

public class DAOFactory {

   public static AdminUserDAO getAdminUserDAO(){

       return new adminuserdaoImpl();

    }

}

}

 

 

 

5.1.10控制层的实现

示例代码如下,详细代码见附录:

public class LoginAction extends BaseAction {

   //出啊入的参数需要使用set方法

   private TAdminUser Adminuserid; //login.jsp中传入的学员账号

   private String requestin;

   //项目表传出参数set,直接在jsp种是永久性

private String errorstext;

   private String backurl;

   public String getErrorstext() {

       return errorstext;

}

   public String getBackurl() {

       return backurl;

   }

   public TUser getUser() {

       return user;

   }

   public void setUser(TUser user) {

       this.user = user;

   }

 

 

 

 

 

 

 

 

 

 

 

 

5.1.11控制层的调用实现

通过ajax异步请求来调用控制层[12],示例代码如下,详细代码见附录。

$.ajax({

type : 'get',

url :'../admin/adminuserlogin?adminuserid='+username+'&pwd='+password,

});

 

 

 

 

5.1.12表示层的实现

表示层用layui编写,是一个jsp户登录的页面。后台管理端主要采用jQuery。示例代码见如下:

<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<!DOCTYPE html>

<html class="loginHtml">

<head>

<link rel="stylesheet" href="../layui/css/layui.css" media="all" />

    <link rel="stylesheet" href="../css/login.css" media="all" />

</head>

<body class="loginBody">

    <form class="layui-form" id="loginForm" method="post" action="">

       <div class="login-title">用户登录</div>

   

    <div class="layui-form-item input-item layui-input-active">

           <label for="userName">用户名</label>

           <input type="text" placeholder="登录用户名"id="userid"  >

       </div>

       <div class="layui-form-item input-item layui-input-active">

           <label for="password">密码</label>

           <input type="password" placeholder="登录密码" id="password">

       </div>

      

       <div class="layui-form-item input-item layui-input-active">

           <span id="input"></span>

       </div>

      

       <div class="layui-form-item">

           <button type="button" id ="login-button">登录</button>

       </div>

    </form>

    <script type="text/javascript" src="../layui/layui.js"></script>

<script type="text/javascript" src="../js/login.js"></script>

</body>

</html>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.1.13实现结果

驾校员工管理子系统已经实现对员工基本信息、考勤信息、调配信息、绩效信息、薪资信息、部门信息的全

面管理以及管理员登录等功能操作。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该项目是用JAVA-Swing编写。需要建立一个mysql表。因为软件问题无法导出,请读者自行创建。表的列数据在下载文件的截图中,因为程序有导出数据库到Excel文件和界面美化(共27个皮肤),所以需要导入两个jar包,在下载文件里,复制这两个文件在exlipse中点击课程设计然后粘贴,再右击这两个包点击build path->第一个,这就是这两个包的导入方法。皮肤无法动态更换,在主界面中代码可以找到。下面是整个课程设计的需求。 天津市瑞聪驾驶员学校为简化人工劳动,提高管理效率,帮助管理者便捷科学管理培训信息,决定开发一套驾校管理系统实现以下需求。 1)软件的使用者是驾校负责人,负责人可以通过软件录入驾校学员信息(包括姓名、性别、电话、身份证号码、照片、报名时间、学费金额、考试进度)。 2)负责人可以通过软件录入驾校教练信息(包括姓名、电话、照片等)、驾校车辆信息(车牌号、车型、车龄)。 3)负责人可以在软件中浏览学员、教练和车辆的信息概况(JTable或JList),可以查看选中记录的详细信息;可以编辑更新记录信息。 4)负责人可以通过软件为一个或一批学员新建学车记录,即为学员安排教练、车辆、练车日期和练车时长等信息。 5)软件可以根据练车记录,计指定时间段内学员的练车总时间、教练教学总时间、驾校报名总收入等不同信息。 6)负责人可以将学员练车记录导出到txt文件或excel文件 7)除以上功能外,还可根据实际需要添加其他功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值