所有回答列表(1)
最代码官方 LV168
2014年7月26日
整个源码限于时间,等有空分享吧,先只说下db设计吧。
提问表已经解答过,请参考这个:最代码数据库设计,期待牛哥分析~大家快来学习啦~!
回答表结构如下:
CREATE TABLE `zuidaima_answer` ( `id` bigint(20) unsigned NOT NULL auto_increment, `create_time` datetime NOT NULL, `update_time` datetime default NULL, `user_id` bigint(20) NOT NULL, `content` longtext NOT NULL, `extend_json` varchar(10000) default '', `target_id` bigint(20) NOT NULL COMMENT '项目id,或分享,或寻求', `is_perfect` int(2) NOT NULL default '0' COMMENT '是否是最完美回答,0否1是', `status` int(2) NOT NULL COMMENT '-1删除0待审核2正常', `publish_time` datetime default NULL, `first_sort` int(11) NOT NULL default '0', `second_sort` int(11) NOT NULL default '0', `third_sort` int(11) NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8
提问可以有多个回答。
java bean类如下:
Project.java
package com.zuidaima.core.module;
/**
**@author www.zuidaima.com
2013-06-13 23:23:35
*/
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import net.sf.json.JSONObject;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.log4j.Logger;
import org.springframework.data.domain.Page;
import com.javaniu.core.constants.ModuleConstants;
import com.javaniu.core.util.StringUtil;
@Entity
@Table(name = "zuidaima_project")
public class Project extends BaseEntity {
private static final Logger logger = Logger.getLogger(Project.class);
private long userId = 0;
private User user;
private int type;
private String title;
private String content;
private int status = ModuleConstants.MODULE_STATUS_VERIFING;
private String extendJson;
private JSONObject extend;
private String topics;
private long sourceId = 0;
private BaseEntity source;
private int firstSort;// view count sort
private int secondSort;// download count sort
private int thirdSort;// comment count sort
private Page<Comment> comments;
private Date publishTime;
private String contentExt;
private String contentExt2;
private String contentExt3;
private String fromUrl;
private long uuid;
private String tags;
public Project() {
this.createTime = new Date();
this.updateTime = createTime;
}
@Column(name = "user_id")
public long getUserId() {
return this.userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public int getType() {
return this.type;
}
public void setType(int type) {
this.type = type;
}
public String getTitle() {
return this.title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContent() {
return this.content;
}
public void setContent(String content) {
this.content = content;
}
public int getStatus() {
return this.status;
}
public void setStatus(int status) {
this.status = status;
}
@Column(name = "extend_json")
public String getExtendJson() {
return this.extendJson;
}
public void setExtendJson(String extendJson) {
this.extendJson = extendJson;
}
@Transient
public JSONObject getExtend() {
if (extendJson == null || extendJson.trim().equals("")) {
extend = new JSONObject();
} else {
try {
extend = JSONObject.fromObject(extendJson);
} catch (Exception e) {
logger.error("JSONObject.fromObject():" + e.getMessage()
+ ",extendJson:" + extendJson);
extend = new JSONObject();
}
}
if (!extend
.containsKey(ModuleConstants.PROJECT_EXTEND_JSON_ANSWER_COUNT)) {
extend.put(ModuleConstants.PROJECT_EXTEND_JSON_ANSWER_COUNT, 0);
}
if (!extend.containsKey(ModuleConstants.PROJECT_EXTEND_JSON_NIUBI)) {
extend.put(ModuleConstants.PROJECT_EXTEND_JSON_NIUBI,
ModuleConstants.PROJECT_DEFAULT_NIUBI);
}
if (!extend
.containsKey(ModuleConstants.PROJECT_EXTEND_JSON_COLLECT_COUNT)) {
extend.put(ModuleConstants.PROJECT_EXTEND_JSON_COLLECT_COUNT, 0);
}
if (!extend.containsKey(ModuleConstants.PROJECT_EXTEND_IS_VALIDATED)) {
extend.put(ModuleConstants.PROJECT_EXTEND_IS_VALIDATED, 0);
}
if (!extend.containsKey(ModuleConstants.PROJECT_EXTEND_IS_PERFECT)) {
extend.put(ModuleConstants.PROJECT_EXTEND_IS_PERFECT, 0);
}
if (!extend.containsKey(ModuleConstants.PROJECT_EXTEND_IS_ORGINAL)) {
extend.put(ModuleConstants.PROJECT_EXTEND_IS_ORGINAL, 0);
}
if (!extend.containsKey(ModuleConstants.PROJECT_EXTEND_IS_REORGANIZE)) {
extend.put(ModuleConstants.PROJECT_EXTEND_IS_REORGANIZE, 1);
}
return extend;
}
public void setExtend(JSONObject extend) {
this.extend = extend;
}
public String getTopics() {
return this.topics;
}
public void setTopics(String topics) {
this.topics = topics;
}
@Column(name = "source_id")
public long getSourceId() {
return this.sourceId;
}
public void setSourceId(long sourceId) {
this.sourceId = sourceId;
}
@Transient
public BaseEntity getSource() {
return source;
}
public void setSource(BaseEntity source) {
this.source = source;
}
@Column(name = "first_sort")
public int getFirstSort() {
return firstSort;
}
public void setFirstSort(int firstSort) {
this.firstSort = firstSort;
}
@Column(name = "second_sort")
public int getSecondSort() {
return secondSort;
}
public void setSecondSort(int secondSort) {
this.secondSort = secondSort;
}
@Column(name = "third_sort")
public int getThirdSort() {
return thirdSort;
}
public void setThirdSort(int thirdSort) {
this.thirdSort = thirdSort;
}
@Transient
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
@Transient
public Page<Comment> getComments() {
return comments;
}
public void setComments(Page<Comment> comments) {
this.comments = comments;
}
@Column(name = "publish_time")
public Date getPublishTime() {
return publishTime;
}
public void setPublishTime(Date publishTime) {
this.publishTime = publishTime;
}
@Transient
public String getContentExt() {
contentExt = StringUtil.formatContent(content);
return contentExt;
}
public void setContentExt(String contentExt) {
this.contentExt = contentExt;
}
@Transient
public String getContentExt2() {
contentExt2 = StringUtil.formatContentImgs(content);
return contentExt2;
}
public void setContentExt2(String contentExt2) {
this.contentExt2 = contentExt2;
}
@Transient
public String getContentExt3() {
contentExt3 = StringUtil.formatContentImgs2(content);
return contentExt3;
}
public void setContentExt3(String contentExt3) {
this.contentExt3 = contentExt3;
}
@Column(name = "from_url")
public String getFromUrl() {
return fromUrl;
}
public void setFromUrl(String fromUrl) {
this.fromUrl = fromUrl;
}
public long getUuid() {
return uuid;
}
public void setUuid(long uuid) {
this.uuid = uuid;
}
public String getTags() {
return tags;
}
public void setTags(String tags) {
this.tags = tags;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}
}
Answer.java
package com.zuidaima.core.module;
/**
**@author www.zuidaima.com
2013-06-13 23:27:04
*/
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import net.sf.json.JSONObject;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.springframework.data.domain.Page;
import com.javaniu.core.constants.ModuleConstants;
import com.javaniu.core.util.StringUtil;
@Entity
@Table(name = "zuidaima_answer")
public class Answer extends BaseEntity {
private long userId = 0;
private User user;
private String content;
private String extendJson;
private JSONObject extend;
private long targetId = 0;
private BaseEntity target;
private int isPerfect = ModuleConstants.ANSWER_IS_PERFECT_NO;
private int status = ModuleConstants.MODULE_STATUS_NORMAL;
private Page<Comment> comments;
private Date publishTime;
private String contentExt;
private String contentExt2;
private int firstSort;
private int secondSort;
private int thirdSort;// comment count sort
public Answer() {
this.createTime = new Date();
this.updateTime = createTime;
}
@Column(name = "user_id")
public long getUserId() {
return this.userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public String getContent() {
return this.content;
}
public void setContent(String content) {
this.content = content;
}
@Column(name = "extend_json")
public String getExtendJson() {
return this.extendJson;
}
public void setExtendJson(String extendJson) {
this.extendJson = extendJson;
}
@Transient
public JSONObject getExtend() {
if (extendJson == null) {
extend = new JSONObject();
} else {
extend = JSONObject.fromObject(extendJson);
}
if (!extend
.containsKey(ModuleConstants.ANSWER_EXTEND_JSON_DOWNLOAD_COUNT)) {
extend.put(ModuleConstants.ANSWER_EXTEND_JSON_DOWNLOAD_COUNT, 0);
}
if (!extend.containsKey(ModuleConstants.ANSWER_EXTEND_JSON_FILE_SIZE)) {
extend.put(ModuleConstants.ANSWER_EXTEND_JSON_FILE_SIZE, 0);
}
return extend;
}
public void setExtend(JSONObject extend) {
this.extend = extend;
}
@Column(name = "target_id")
public long getTargetId() {
return this.targetId;
}
public void setTargetId(long targetId) {
this.targetId = targetId;
}
@Transient
public BaseEntity getTarget() {
return target;
}
public void setTarget(BaseEntity target) {
this.target = target;
}
@Column(name = "is_perfect")
public int getIsPerfect() {
return this.isPerfect;
}
public void setIsPerfect(int isPerfect) {
this.isPerfect = isPerfect;
}
public int getStatus() {
return this.status;
}
public void setStatus(int status) {
this.status = status;
}
@Transient
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
@Transient
public Page<Comment> getComments() {
return comments;
}
public void setComments(Page<Comment> comments) {
this.comments = comments;
}
@Column(name = "publish_time")
public Date getPublishTime() {
return publishTime;
}
public void setPublishTime(Date publishTime) {
this.publishTime = publishTime;
}
@Transient
public String getContentExt() {
contentExt = StringUtil.formatContent(content);
return contentExt;
}
public void setContentExt(String contentExt) {
this.contentExt = contentExt;
}
@Transient
public String getContentExt2() {
contentExt2 = StringUtil.formatContentImgs(content);
return contentExt2;
}
public void setContentExt2(String contentExt2) {
this.contentExt2 = contentExt2;
}
@Column(name = "first_sort")
public int getFirstSort() {
return firstSort;
}
public void setFirstSort(int firstSort) {
this.firstSort = firstSort;
}
@Column(name = "second_sort")
public int getSecondSort() {
return secondSort;
}
public void setSecondSort(int secondSort) {
this.secondSort = secondSort;
}
@Column(name = "third_sort")
public int getThirdSort() {
return thirdSort;
}
public void setThirdSort(int thirdSort) {
this.thirdSort = thirdSort;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}
}
- 等 最代码怎么获取牛币啊?
- 完 谁来告诉我最代码上线的时间,答对者给5牛币,先来先得
- 等 牛友们,大家好,你们做程序员多久了?现在还好吗?
- 完 在微信打开的页面里进行app下载
- 等 最代码2014年欢乐聚声会
- 完 mysql如何查询表数据并且对3个字段降序的SQL?
- 完 最代码牛币机制改革
- 完 成功的在bae上使用了自定义运行环境 jetty+nginx的组合,大家对jetty+nginx优化有哪些心得?
- 完 进来分享一下各位牛牛是如何加入最代码大家庭的?
- 等 为什么java BufferedImage类处理大图直接抛出内存溢出的异常?
- 等 最代码是否开发手机app客户端?
- 完 java程序员学习哪些java的技术?java有哪些框架?都能做哪方面的开发?
- 等 php格式网页文件怎么运行?
- 等 Java volatile值获取的问题
- 等 前端vue,拦截了登录后台后,返回的token,requests拦截token,但是发送请求的时候,就出现跨越异常
- 等 大专本科计算机科班怎么找到Java工作?
- 等 eclipse怎么把三个java swing游戏项目合成一个项目?
- 完 伙伴们,大家都有什么好的解压方式么,分享一下~
- 完 三四线城市,6、7k,运维工作,索然无味,想去辞职上培训,各位牛牛有什么建议嘛
- 等 jsp页面输入中文变成问号
- 等 JPA在线上运行一段时间后报错Caused by: java.lang.IncompatibleClassChangeError: null
- 等 PHP 这个规则用preg_match_all怎么写
- 等 大佬们,有没有知道Alfresco如何配置LDAP登录呢?
- 等 php的install目录是框架带的吗?




相关问答
最近浏览
