《Java从入门到放弃》JavaSE入门篇:练习——单身狗租赁系统
2017-09-20 16:28
323 查看
今天,我们要玩个大的!!!
我们把之前使用数组做的这个单身狗系统改版成数据库版本,并且使用面向对象里面的一些简单思想。如果有不知道这个系统的看官,请跳转到目录页,然后再选择单身狗系统(数组版)先围观五分钟吧。里面的功能很简单。。。。。。。。。
五分钟之后···
好了,五分钟到了,我们继续吧·
![](http://img.baidu.com/hi/jx2/j_0048.gif)
![](https://s2.51cto.com/wyfs02/M01/04/D7/wKiom1mk32_RKxTSAABqzHxYcxI569.png)
要完成的功能还是如上图所示,只不过实现的代码有翻天覆地的变化而已。。。
第一步:分析
一般做一个项目,根据侧重点不同,会把整个项目分成三大部分:界面、功能业务实现、数据库操作。具体三层架构的内容,等后面JSP的时候再来细讲哈。
所以首先要有三个不同的包来保存这三大部分的内容。
![](https://s5.51cto.com/wyfs02/M00/06/FC/wKiom1nBw36zoZkoAAAdHmQBB9Y622.png)
com.test:包含main方法的程序入口类放在这个包下。
com.dog.ui:界面相关的类文件放在这个包下。
com.dog.service:功能中的业务逻辑的处理放在这个包下。
com.dog.dao:和数据库打交道的类放在这个包下。
包分好了,我们再来分析要创建哪些类,根据引用顺序,ui要调用service,service要调用dao,而类与类之间的方法如何进行数据传递呢?一般使用实体类。所以我们还要再创建一个entity包存放所有的实体类。项目结构如下图:
![](https://s4.51cto.com/wyfs02/M00/06/FE/wKiom1nB1FijBbcOAAA0v6B-BV8885.png)
昨天文章讲到了JDBC的常用操作分为两类,增、删、改是一样的操作,查询是一样的操作,所以我们可以再写一个通用操作类(DBManager),类中包含两个方法,分别用来操作数据和查询数据。最终的项目结构图如下:
![](https://s4.51cto.com/wyfs02/M02/A5/AF/wKioL1nB1PWwE651AAA4LOLM5Ts743.png)
分析过程就到这儿吧,下面进入编码环节。
二、编码
按照调用的先后顺序,我们先编写entity包中的实体类。
2.1 Dog类
再编写dao包下面的类。
2.2 DBManager类是一个通用操作类,代码如下:
后面主要使用getResultSet()方法和modifyEntiy()方法。
2.3 DogDao类代码如下:
主要包括四个操作,添加、删除、更新借出状态和日期、查询所有。等所有功能实现后,小伙伴们可以自己尝试写一写搜索功能。
接下来编写service中的类。
2.4 DogService类
再接下来写UI包中的类
2.5 Face类
注意代码中有些方法的注释,大家如果要做完整版的,可以自行优化!!!
最后,main方法:
到这儿,所有的代码就编写完成了,测试过程如下:
![](https://s1.51cto.com/wyfs02/M02/07/05/wKiom1nCJVizpNfYAAAOjbhzrL0019.png)
![](https://s1.51cto.com/wyfs02/M02/A5/B6/wKioL1nCJSWza1hRAAAVG3GDI1s760.png)
![](https://s1.51cto.com/wyfs02/M00/07/05/wKiom1nCJVnQ1GfcAAAcDPfPuBM755.png)
![](https://s1.51cto.com/wyfs02/M00/A5/B6/wKioL1nCJSXQK2fJAAAfcHOi2LA575.png)
![](https://s1.51cto.com/wyfs02/M01/A5/B6/wKioL1nCJSXSunhDAAAOgWy4p0I197.png)
![](https://s5.51cto.com/wyfs02/M01/07/05/wKiom1nCJVnwvUEWAAAhG4LOApM274.png)
![](https://s1.51cto.com/wyfs02/M01/A5/B6/wKioL1nCJSWAkSvkAAAMaSguaw8190.png)
![](https://s1.51cto.com/wyfs02/M00/07/05/wKiom1nCJVnxekLhAAAQzRb53-Y170.png)
今天有很多地方因为懒病发作,所以···,大家懂的,一个完整的流程,很多步骤都需要进行判断,看官中的小萌新们,你们就不要懒了,把该补完整的代码补上吧,之后就可以去比你更新的萌新面前得瑟了,哈哈哈!
![](http://img.baidu.com/hi/jx2/j_0028.gif)
“软件思维”博客地址:51CTO,博客园,感兴趣的小伙伴可以去看相关的其它博文。
我们把之前使用数组做的这个单身狗系统改版成数据库版本,并且使用面向对象里面的一些简单思想。如果有不知道这个系统的看官,请跳转到目录页,然后再选择单身狗系统(数组版)先围观五分钟吧。里面的功能很简单。。。。。。。。。
五分钟之后···
好了,五分钟到了,我们继续吧·
![](http://img.baidu.com/hi/jx2/j_0048.gif)
![](https://s2.51cto.com/wyfs02/M01/04/D7/wKiom1mk32_RKxTSAABqzHxYcxI569.png)
要完成的功能还是如上图所示,只不过实现的代码有翻天覆地的变化而已。。。
第一步:分析
一般做一个项目,根据侧重点不同,会把整个项目分成三大部分:界面、功能业务实现、数据库操作。具体三层架构的内容,等后面JSP的时候再来细讲哈。
所以首先要有三个不同的包来保存这三大部分的内容。
![](https://s5.51cto.com/wyfs02/M00/06/FC/wKiom1nBw36zoZkoAAAdHmQBB9Y622.png)
com.test:包含main方法的程序入口类放在这个包下。
com.dog.ui:界面相关的类文件放在这个包下。
com.dog.service:功能中的业务逻辑的处理放在这个包下。
com.dog.dao:和数据库打交道的类放在这个包下。
包分好了,我们再来分析要创建哪些类,根据引用顺序,ui要调用service,service要调用dao,而类与类之间的方法如何进行数据传递呢?一般使用实体类。所以我们还要再创建一个entity包存放所有的实体类。项目结构如下图:
![](https://s4.51cto.com/wyfs02/M00/06/FE/wKiom1nB1FijBbcOAAA0v6B-BV8885.png)
昨天文章讲到了JDBC的常用操作分为两类,增、删、改是一样的操作,查询是一样的操作,所以我们可以再写一个通用操作类(DBManager),类中包含两个方法,分别用来操作数据和查询数据。最终的项目结构图如下:
![](https://s4.51cto.com/wyfs02/M02/A5/AF/wKioL1nB1PWwE651AAA4LOLM5Ts743.png)
分析过程就到这儿吧,下面进入编码环节。
二、编码
按照调用的先后顺序,我们先编写entity包中的实体类。
2.1 Dog类
2.2 DBManager类是一个通用操作类,代码如下:
2.3 DogDao类代码如下:
接下来编写service中的类。
2.4 DogService类
2.5 Face类
最后,main方法:
![](https://s1.51cto.com/wyfs02/M02/07/05/wKiom1nCJVizpNfYAAAOjbhzrL0019.png)
![](https://s1.51cto.com/wyfs02/M02/A5/B6/wKioL1nCJSWza1hRAAAVG3GDI1s760.png)
![](https://s1.51cto.com/wyfs02/M00/07/05/wKiom1nCJVnQ1GfcAAAcDPfPuBM755.png)
![](https://s1.51cto.com/wyfs02/M00/A5/B6/wKioL1nCJSXQK2fJAAAfcHOi2LA575.png)
![](https://s1.51cto.com/wyfs02/M01/A5/B6/wKioL1nCJSXSunhDAAAOgWy4p0I197.png)
![](https://s5.51cto.com/wyfs02/M01/07/05/wKiom1nCJVnwvUEWAAAhG4LOApM274.png)
![](https://s1.51cto.com/wyfs02/M01/A5/B6/wKioL1nCJSWAkSvkAAAMaSguaw8190.png)
![](https://s1.51cto.com/wyfs02/M00/07/05/wKiom1nCJVnxekLhAAAQzRb53-Y170.png)
今天有很多地方因为懒病发作,所以···,大家懂的,一个完整的流程,很多步骤都需要进行判断,看官中的小萌新们,你们就不要懒了,把该补完整的代码补上吧,之后就可以去比你更新的萌新面前得瑟了,哈哈哈!
![](http://img.baidu.com/hi/jx2/j_0028.gif)
“软件思维”博客地址:51CTO,博客园,感兴趣的小伙伴可以去看相关的其它博文。
相关文章推荐
- 《Java从入门到放弃》JavaSE入门篇:练习——单身狗租赁系统
- 《Java从入门到放弃》JavaSE篇:练习——单身狗租赁系统(数组版)
- 《Java从入门到放弃》JavaSE篇:综合练习——单身狗租赁系统(数组版)
- 《Java从入门到放弃》JavaSE入门篇:面向对象语法一(入门版)
- 《Java从入门到放弃》JavaSE入门篇:面向对象概念(入门版)
- 《Java从入门到放弃》JavaSE入门篇:面向对象语法二(入门版)
- 《Java从入门到放弃》JavaSE入门篇:运算符
- 《Java从入门到放弃》JavaSE入门篇:异常
- 《Java从入门到放弃》JavaSE入门篇:单元测试
- 《Java从入门到放弃》JavaSE入门篇:面向对象语法一(入门版)
- 《Java从入门到放弃》JavaSE入门篇:文件操作
- 慕课网-Java入门第二季实战练习-答答租车系统
- 《Java从入门到放弃》JavaSE入门篇:异常
- 《Java从入门到放弃》JavaSE入门篇:面向对象语法二(入门版)
- 慕课网JAVA入门第二季综合练习答答租车系统
- 《Java从入门到放弃》JavaSE入门篇:面向对象概念(入门版)
- 《Java从入门到放弃》JavaSE入门篇:异常
- 《Java从入门到放弃》JavaSE入门篇:程序结构 推荐
- 《Java从入门到放弃》JavaSE入门篇:集合
- 《Java从入门到放弃》JavaSE入门篇:数组