分包+项目汇总

上一篇将JDBC完成之后,如果要做一个完整的项目,需要在这个基础上进行分包。

分包的意义在于将各个人的功能分开,程序运行更便利。

  • l view层作用: 视图层,即项目中的界面
  • l controller层作用: 控制层, 获取界面上的数据,为界面设置数据; 将要实现的功能交给业务层处理
  • l service层作用: 业务层, 功能的实现, controller控制层和数据访问层DAO交互, 将对数据库的操作交给DAO数据访问层来处理
  • l dao层作用: 数据访问层, 用来操作数据库表的数据
  • l db数据库: 这里指MySQL
  • l domain 实体包: 存放JavaBean
  • l tools工具包:存放项目中使用到的工具类
  • l test 测试包: 存放项目功能测试的代码

  

每层的项目分部

view菜单层

domian 实体类

controller 中转层

service 获取dao层数据

dao层,数据库层

tools工具类层

test测试类

主要实现功能

这是主要功能,代码因为过于多久不复制粘贴,主要是总结一下知识难点和一问题,还有一些容易混淆的地方

知识难点:

1、如果连续更新数据,如果只是单纯的方法联合并不需要,但结合现实我们发现,如果在修改某个数据时,往往是联合修改的。这就颠覆了最初的逻辑,后来解决这个的办法是采用了全局变量定义,局部变量在方法中定义,从而作为形参传入后续的方法中。如费用更新时的身份证,输入的费用:

变量赋值:之后获得了某个人的身份证和费用数,从而使后面的个人信息表中的个人总金额累加+费用标记结清

第二是中间表的作用,它就是两表之间的关系,如一个员工对应两个房间,你无法在房间表或员工表进行一个多条重新信息录入,这违反了我设计表时一个人对应一条信息的原则。

那它们之间如何练习起来,就用到中间表,将两表的主键放入,将关系存储在中间表,从而如果需要查询两表通过它联合即可。

中间表:

房间表:

 

员工表:

语句如何查询:

二、容易混淆的地方

dao层的几种处理结果集。

我用到的处理结果集,总共有查询时遍历数据库中的所有内容来输出。

增加修改,删除通过int值来判定是否成功,1成功,0失败。

但有时有例外就是判断查询的内容有没有。

如我想查询所有未审批的有几条信息,但是如果单纯返回的我获得的是整个遍历出来的东西,那就需要定义一个int来接收一下,while()中总共走了几次满足数据库代码的次数,统计出来就是几条未读信息。

//统计未审批的数量
            public int  getBoss( ) throws SQLException{
                Connection conn=JDBCUtils.getConn();
                String sql="SELECT  count(*) FROM jilu WHERE shenpi='0'  and dengji='A'";
                PreparedStatement pst=conn.prepareStatement(sql);
                //pst.setInt(1, shenpi);
                ResultSet rs=pst.executeQuery();
                int count = 0;
                while (rs.next()) {
                    count = rs.getInt(1);
                }
                JDBCUtils.close(rs, pst, conn);
                return count;
            }    

猜你喜欢

转载自www.cnblogs.com/a199706/p/11419306.html