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 |
use bbs; /*帖子表,存储帖子的信息*/ drop table if exists article; create table article( id int primary key auto_increment, title varchar( 100 ), biboid int , smboid int , userid int , createtime datetime, updatetime datetime, context text, goodcount int , badcount int , reward int , score int , ispay bit, islocked bit )ENGINE=InnoDB DEFAULT CHARSET=utf8; /*用户表*/ drop table if exists user; create table user( id int primary key auto_increment, username varchar( 50 ) unique, password varchar( 100 ), nickname varchar( 50 ), salt varchar( 100 ), locked boolean )engine=InnqDB default charset=utf8; INSERT INTO `user` VALUES ( 1 , 'pwpw1218' , 'pwpw1218' , 'King-pan' ,NULL, 1 ),( 5 , 'pwpw121822' , 'pwpw1218' , 'King-Pan' ,NULL, 1 ),( 6 , 'pwpw121833' , 'pwpw1218' , 'King-Pan' ,NULL, 1 ); INSERT INTO `article` VALUES ( 1 , 'bbs通知222' , 0 , 0 , 0 , '2014-06-04 10:56:07' , '2014-06-04 11:11:06' , '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ),( 2 , 'bbs通知222' , 0 , 0 , 0 , '2014-06-04 11:10:41' , '2014-06-04 11:16:18' , '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ),( 3 , 'bbs通知' , 0 , 0 , 1 , '2014-06-06 15:48:51' ,NULL, '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ),( 4 , 'bbs通知' , 0 , 0 , 1 , '2014-06-06 15:48:56' ,NULL, '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ),( 5 , 'bbs通知' , 0 , 0 , 1 , '2014-06-06 15:49:00' ,NULL, '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ),( 6 , 'bbs通知' , 0 , 0 , 1 , '2014-06-06 15:49:04' ,NULL, '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ),( 7 , 'bbs通知' , 0 , 0 , 1 , '2014-06-06 15:49:07' ,NULL, '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ),( 8 , 'bbs通知' , 0 , 0 , 1 , '2014-06-06 15:49:12' ,NULL, '文章 马伊琍 离婚吧' , 0 , 0 , 0 , 0 , '\0' , '\0' ); |
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88 |
package com.mscncn.bbs.core.model; import java.io.Serializable; import java.util.ArrayList; import java.util.List; /** * 用户表 * @author king-pan * */ public class User implements Serializable { private static final long serialVersionUID = 1L; /** * 用户id */ private Integer id; /** * 用户名 */ private String userName; /** * 用户密码 */ private String password; /** * 用户昵称 */ private String nickName; /** * 加密密码的盐 */ private String salt; /** * 账号是否锁住 */ private List<Article> articles= new ArrayList<Article>(); private Boolean locked = Boolean.FALSE; public Integer getId() { return id; } public void setId(Integer id) { this .id = id; } public String getUserName() { return userName; } public void setUserName(String userName) { this .userName = userName; } public String getPassword() { return password; } public void setPassword(String password) { this .password = password; } public String getNickName() { return nickName; } public void setNickName(String nickName) { this .nickName = nickName; } public String getSalt() { return salt; } public void setSalt(String salt) { this .salt = salt; } public Boolean getLocked() { return locked; } public void setLocked(Boolean locked) { this .locked = locked; } @Override public String toString() { return "User [id=" + id + ", userName=" + userName + ", password=" + password + ", nickName=" + nickName + ", salt=" + salt + ", locked=" + locked + "]" ; } public List<Article> getArticles() { return articles; } public void setArticles(List<Article> articles) { this .articles = articles; } } |
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164 |
package com.mscncn.bbs.core.model; import java.io.Serializable; import java.util.Date; /** * 帖子,文章 * @author king-pan * */ public class Article implements Serializable { private static final long serialVersionUID = 1L; /** * 文章的id */ private int id; /** * 文章的标题 */ private String title; /** * 文章的内容 */ private String context; /** * BiBoid 帖子所属父版块id int */ private int biboId; /** * SmBoid 帖子所属子版块id int */ private int smboId; /** * admin 发帖者姓名 nvarchar */ private int userId; /** * createtime 发帖时间 datetime */ private Date createTime; /** * updatetime 更新时间 datetime */ private Date updateTime; /** * goodcount 帖子的好评数 int */ private int goodCount; /** * badcount 帖子的坏评数 int */ private int badCount; /** * reward 帖子的总共悬赏分(吸引浏览) int */ private int reward; /** * score 帖子悬赏分所剩下的分数 int */ private int score; /** * ispay 是否结贴 bit */ private boolean isPay; /** * islocked 是否帖子被锁定 bit */ private boolean isLocked; public int getId() { return id; } public void setId( int id) { this .id = id; } public String getTitle() { return title; } public void setTitle(String title) { this .title = title; } public String getContext() { return context; } public void setContext(String context) { this .context = context; } public int getBiboId() { return biboId; } public void setBiboId( int biboId) { this .biboId = biboId; } public int getSmboId() { return smboId; } public void setSmboId( int smboId) { this .smboId = smboId; } public int getUserId() { return userId; } public void setUserId( int userId) { this .userId = userId; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this .createTime = createTime; } public Date getUpdateTime() { return updateTime; } public void setUpdateTime(Date updateTime) { this .updateTime = updateTime; } public int getGoodCount() { return goodCount; } public void setGoodCount( int goodCount) { this .goodCount = goodCount; } public int getBadCount() { return badCount; } public void setBadCount( int badCount) { this .badCount = badCount; } public int getReward() { return reward; } public void setReward( int reward) { this .reward = reward; } public int getScore() { return score; } public void setScore( int score) { this .score = score; } public boolean isPay() { return isPay; } public void setPay( boolean isPay) { this .isPay = isPay; } public boolean isLocked() { return isLocked; } public void setLocked( boolean isLocked) { this .isLocked = isLocked; } @Override public String toString() { return "Article [id=" + id + ", title=" + title + ", content=" + context + ", biboId=" + biboId + ", smboId=" + smboId + ", userId=" + userId + ", createTime=" + createTime + ", updateTime=" + updateTime + ", goodCount=" + goodCount + ", badCount=" + badCount + ", reward=" + reward + ", score=" + score + ", isPay=" + isPay + ", isLocked=" + isLocked + "]" ; } } |
1
2
3
4
5
6
7 |
public interface UserMapper { void add(User user); void delete( @Param (value= "id" ) Integer id); void update(User user); User queryUser(Map<String,Object> params); User queryArticleByUser( @Param (value= "id" )Integer id); } |
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 |
<?xml version= "1.0" encoding= "UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <!-- 这里namespace必须是PostsMapper接口的路径,不然要运行的时候要报错 “is not known to the MapperRegistry”--> <mapper namespace= "com.mscncn.bbs.mybatis.mapper.UserMapper" > <select id= "queryUser" parameterType= "java.util.Map" resultType= "User" > select * from user <where> < if test= "userName!=null" > and userName=#{userName} </ if > < if test= "1==1" > and 1 = 1 </ if > </where> </select> <insert id= "add" parameterType= "User" > insert into user (username,password,nickname,salt,locked) values (#{userName},#{password},#{nickName},#{salt},#{locked}) </insert> <update id= "update" parameterType= "User" > update user <set> < if test= "password!=null" > password=#{password}, </ if > < if test= "nickName!=null" > nickname=#{nickName}, </ if > </set> where id=#{id} </update> <delete id= "delete" parameterType= "int" > delete from user <choose> <when test= "id!=0" > where id=#{id} </when> <otherwise> where 1 = 2 </otherwise> </choose> </delete> <select id= "queryArticleByUser" parameterType= "int" resultMap= "UserResultMap" > select u.id u_id, u.username,u.password,u.salt,a.id a_id,a.userid,a.title,a.context from user u join article a on(u.id=a.userid) and u.id=#{id} </select> <!-- private String userName; private String password; private String nickName; private String salt; --> <resultMap type= "User" id= "UserResultMap" > <id column= "u_id" javaType= "int" property= "id" /> <result property= "userName" column= "username" javaType= "String" /> <result property= "password" column= "password" javaType= "String" /> <result property= "nickName" column= "nickname" javaType= "String" /> <result property= "salt" column= "salt" javaType= "String" /> <collection property= "articles" ofType= "Article" > <id property= "id" column= "a_id" /> <result property= "title" column= "title" javaType= "String" /> <result property= "context" column= "context" javaType= "String" /> </collection> </resultMap> </mapper> |