前言
这里我会采用mybatis3.2做数据库的持久化,很多小伙伴或许还停留在老师的教导下,仍然停留在使用传统的JDBC持久化访问数据层。今天,我们来聊聊面向接口编程和怎么充分利用注解的优势!
实现DAO持久层
从目前的Java框架趋势来看,spring框架仍旧占据主流,不论你使用SSH框架和SSM框架开发,必透彻spring是无可厚非的。
从目前互联网公司的分布来看,中小型公司仍旧拥有半壁江山,它们没有雄厚的资金和开发资源,也就是说极少有公司会使用hibernate+struts开发项目,对中小型公司来说开发超大型项目是不在它们的考虑范围之内的。那么,mybatis+springmvc开发框架就此兴起…
闲聊结束,我先说说原理吧:
使用mybatis定义接口完成sql语句的映射,该接口还可以直接作为DAO的组件使用。
桥接模式知道吗?
桥接模式在这里的应用:
使用该模式能够体现业务逻辑组件封装DAO组件的模式,也可以分离业务逻辑组件和DAO组件的功能。也就是说,业务逻辑组件负责业务逻辑的变化,而DAO组件负责持久化的变化。
这样做的好处:
①每个DAO组件包含了数据库的访问逻辑。
②每个DAO组件可对一个数据表完成基本的CRUD等操作。
1.公共常量类
HrmConstants 类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
/**
*
* 常量
*
*/
public
class
HrmConstants {
//数据库表常量
public
static
final
String USERTABLE=
"user_inf"
;
public
static
final
String DEPTTABLE=
"dept_inf"
;
public
static
final
String JOBTABLE=
"job_inf"
;
public
static
final
String EMPLOYEETABLE=
"employee_inf"
;
public
static
final
String NOTICETABLE=
"notice_inf"
;
public
static
final
String DOCUMENTTABLE=
"document_inf"
;
//登录
public
static
final
String LOGIN=
"loginFrom"
;
//用户的session对象
public
static
final
String USER_SESSION=
"user_session"
;
//默认每页4条数据
public
static
int
PAGE_DEFAULT_SIZE=
4
;
}
|
这里数据库我就不贴出来了。这个公共常量类根据数据库表的结构定义得,也就是说在数据库里面我一共创建了6个表,每个表和此类是一一对应的。至于这里的session对象,是为了后期编写控制层所铺垫的,与本次所讲内容无影响噢。
2.实体类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
/**
*
* 用户实体类
*
*/
|