模 块 复 用

原本还要测试一会的,突然出现一连串诡异的问题,比如,编译少加载个类啊,输入地址少个字母啊,改几行代码一改就是半小时啊。这是在提醒我们大脑疲倦了,所以果断小结,下次继续。这一次简单完成了一个复用性功能模块,用户模块。程序,是为了解决问题的,那么用户模块解决了什么问题呢?对用户而言,用户注册,用户登录,用户应用;对管理者而言,用户权限;对商人而言,用户筛选,用户定位,用户......用户都快被玩坏了,比如多系统单点登录sso,对用户有好处,商业价值不可估量。所以,每一种技术的出现,必然是因为产生了新的社会需求,商业需求尤其明显。多找商业伙伴聊天,这是一件有趣的事情。

  时间不早了,记录下大致思路:

1、一个常用用户级联,公司-》部门-》职务-》员工,编写四个实体类。

2、一个实体类,对应数据库一张表,用sqldeveloper创建四张表。建表前,登录system,(1)创建表空间,(2)创建一个新用户,(3)赋予dba等权限,方便以后数据库存储备份导入导出。用创建的新用户登录,创建表格。

3、数据持久层,dao接口。查询,将数据库的相关数据复制一份到计算机内存。增加、修改,将计算机内存的相关数据写入数据库。删除,删除计算机内存的一个对象,删除数据库的一条数据。

4、数据持久层,dao实现类。用户登录(根据用户名和密码查找员工,返回一个员工对象,属性和值)。用户登录是查询操作,将数据库的相关数据复制一份到计算机内存。

5、工厂设计模式。在数据持久层和业务逻辑层之间,做一个纽带,方便更改接口实现方式,方便维护。

6、业务逻辑层接口和实现类,用于做一些有效性验证的工作。比如,完成数据添加、修改和查询业务等;不允许指定的文本框中输入空字符串,数据格式是否正确以及数据类型验证;用户权限的合法性判断等。

7、Junit4单元测试。逻辑是否合理?是否遗漏情况?类、方法、变量是否正常使用?参数是否正确书写?......只要是人,都会犯错。

8、控制层,逻辑层和表示层之间的纽带。表示层对控制层说:我要取份数据。控制层没有数据,于是对逻辑层说:我要取份数据。逻辑层回答:我这里有很多类型的数据模型,你得带上需求类型选择适合的。控制层表示毫无压力:我设计个开关好了,表示层1来了,我给她数据模型1;表示层2来了,我给她数据模型2;表示层3来了,我给,等等,你的需求太特别了,我得找总部申请,给您私人定制。

9、web.xml配置。这个稍微有点复杂,后面用多了再做小结。

10、最高权限管理员dyl登陆。话说,想让Google Chrome浏览器保存您的密码吗?保存密码 or 此网站一律不保存密码。在用户界面上测试,一边测试一边修改,然后一连串诡异的事情相聚发生,我们的大脑里冒出了一连串的问号,哪里出问题呢?哪里出问题呢?哪里出问题呢?......

平时空闲时间修修补补,会把用户模块界面测试通过;1000个知识点收集的事情,竟然还没有完成,三分之一,我们已经迫不及待想开发知识体的功能模块了,一边等待一边多想想也是好的。下次,我们会考虑,(1)用框架修改控制层,(2)或者数据层,(3)或者写一个实用的小功能模块。OK,我们下次见。

个人知识管理系统Version1.0开发记录(07)的更多相关文章

  1. 个人知识管理系统Version1.0开发记录(09)

    MyBatis初试 MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.   运用Mybatis框 ...

  2. 个人知识管理系统Version1.0开发记录(01)

    架 构 描 述 01.数据层,数据源,有形资源入库,无形资源整理,对外搜索引擎,对内平台搜索,数据类型(文字.图片.声音.视频.组合),数据时空优化,数据安全方案(数据进站关卡,数据出战关卡),数据并 ...

  3. 个人知识管理系统Version1.0开发记录(02)

    第 一 步 做 什 么 我们该如何入手呢?先来看看目前常用的三个方法. 1.从事物产生的源头出发,层层推进,步步验证,最后开花结果.这种方法经常用于科研项目,或者三期以后的工程,国家政府项目用的较多. ...

  4. 个人知识管理系统Version1.0开发记录(12)

    最近碰到个问题,在五个工作日内阅读一个百万行左右代码量的新项目集合,如何解决呢? 第一个工作日,环境观察.待在那个项目组,看项目成员们在做些什么事情,开发,测试,聊天,或多或少可以收集到一些项目相关的 ...

  5. 个人知识管理系统Version1.0开发记录(10)

    物理分页 这次我们运用Mybatis拦截器来实现物理分页,后面会运用动态sql来实现,或者运用Map/CollectionUtils/StringUtils编写工具类来实现.oracle是运用的row ...

  6. 个人知识管理系统Version1.0开发记录(11)

    (1)匹配单个属性的关键字:(2)匹配单个对象的关键字:(3)匹配对象集合的关键字:(4)基于事件驱动的:(5)实时搜索,参考win7的搜索功能. 1.备份,java代码,数据库数据. 2.oracl ...

  7. 个人知识管理系统Version1.0开发记录(08)

    切入点 前面,我们已经搭建好了web端的一种基本结构,需要进一步定位的主要问题有三点: 1.界面的选择和确定,用extjs做的初步样式,进一步改动为jqueryUI/html,再进一步改变为HTML5 ...

  8. 个人知识管理系统Version1.0开发记录(05)

    demo controller我们从前面的实现过程可以得出三种普遍使用的信息处理方式:1.操作数据库,对数据进行增删改查,比如运用sqldevloper查看数据信息.2.运用计算机程序语言,对数据进行 ...

  9. 个人知识管理系统Version1.0开发记录(06)

    demo view 夜已深,我们先简单演示一下,完成一个小段落了.涉及工具及技术知识:图形处理软件photoshop cs6,js类库ext. 思路如下: 1.下载ps6,有破解版本的,dll文件覆盖 ...

随机推荐

  1. Tfs 2015 代理池配置笔记

    Tfs的构建代理池其实是在代理服务器上开启一个TFSBuild的代理服务,配好相关的Tfs地址后,就能在Tfs管理界面看到了. 如果是Tfs服务和发布代理是同一台服务器,具体操作详见: 安装TFS20 ...

  2. android的一些类库的优缺点

    经过本人的面试经验,以及接触的android项目,总结了一下android的一些类库的优缺点: 一,线程方面 1.AsyncTask 首先是线程优化以及缺陷方面,针对目前大多数类库来说,都有好的设计方 ...

  3. django通用视图

    通用视图 1. 前言 回想一下,在Django中view层起到的作用是相当于controller的角色,在view中实施的 动作,一般是取得请求参数,再从model中得到数据,再通过数据创建模板,返回 ...

  4. 安装Anaconda3

    wget https://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh bash Anaconda3-5.0.1-Linux-x8 ...

  5. PROPAGATION_REQUIRES_NEW VS PROPAGATION_NESTED

    PROPAGATION_REQUIRES_NEW, in contrast to PROPAGATION_REQUIRED, uses a completely independent transac ...

  6. (2.2)DDL增强功能-自定义函数与存储过程

    1.存储过程 精华总结: 通过对比@@ERROR一般和if判断结合使用,@@TRANCOUNT和try catch块结合使用,xact_abort为on可以单独使用Xact_abort为off时,如果 ...

  7. centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课

    centos  lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress  安装phpmyadmin  定时备份mysql两种方法  第二十五节 ...

  8. expdp&impdp备份恢复常用命令

    备份前准备 创建备份用户 create user backup identified by backup#2018 ; 授予导入导出角色 grant connect,resource to backu ...

  9. 网络协议TCP、Http、webservice、socket区别

    网络协议TCP.Http.webservice.socket区别 http 和 webservice 都是基于TCP/IP协议的应用层协议 webservice是基于http的soap协议传输数据 w ...

  10. ReactNative Ios报出 'React/RCTBundleURLProvider.h' file not found错误

    我在创建react-native项目时  npm了一个第三方库  结果一打开 xcode 竟然报错 React/RCTBundleURLProvider.h' file not found: 然后 我 ...