第二天,呜呜呜,有事做了,早上听了一个项目的会议,半懂不懂的(不懂占大头嘎嘎),下午被分配了一项任务,建表!原来的表,字段类型全是文本,有一些数据未做抽离,所以任务目的是优化存储结构,数据一部分文本-->富文本,一部分文本-->文本+文件,剩下的不变;一部分字段的数据单独再建一个表,让信息的可维护性提高;增加一些字段(处理的状态);新增一个措施的统计表,统计各个问题的措施条数统计(问题,3个状态,每个状态的措施数量,该问题的措施总数,第一条记录统计总数)。整篇文章也就“面临的主要问题”有价值,其他的都是本人的日记。
主要面临的问题
- 文件存储和多媒体文件存储
存储路径,文件名+路径,采用相对路径。问题就是我不会相对路径的用法,现在看到的示例都是用本地文件来演示相对路径,但要实现的可能是访问某个服务器或是其他非本地库里的(菜麻了,找到示例后来更新)。
- 富文本存储
在此站上搜到了两个方法(应该还有别的方式,待后续补充)。文章链接在此:http://t.csdn.cn/NA0Yq
第一种:将富文本内容保存成HTML文件,将文件上传至文件服务器(我不懂这种上传到服务器怎么弄,不过这不是现在要考虑的)。
第二种:直接把HTML内容存到数据库中。获取HTML内容 --> 处理特殊标签,使用org.springframework.web.util.HtmlUtils这个工具类,属于Springboot web包里。工具类里提供了三种处理特殊标签的方法,htmlEscapeHex方法:将所有特殊字符转义为对应的数字以十六进制格式引用;htmlEscape方法:将所有特殊字符转义到对应的本质引用;htmlEscapeDecimal方法:将所有特殊字符以十进制格式转义到对应的数字引用 --> 存储,使用longtext类型 --> 读取,解析,使用该工具类中的htmlUnescape方法 --> 解析后将数据传给前端。
设计表
首先明确需要用到四张表,一张总表,一张牵头单位表、一张问题类型表和一张措施统计表(突然想到后两张表是否可以考虑合并,因为措施统计表中要按问题类型来统计,但敲字过程中的思考是倾向于不合并,理由是问题类型如果减少,措施表中的记录应该是要保留,就会造成前端在列出问题类型时会将已减少的问题类型也列出)。
然后就是给每个表添加字段,id、is_delete、 create_time、updata_time 这四个字段铁要,乐观锁是否需要,且看原库中是否设置+问师父再做决定,其他字段参考原库(咱就是说有ip地址,数据库名字密码都有了,但根本不知道怎么访问呢),今晚收拾完刚租到的房子要是还活着,我就搜搜怎么弄,要是累瘫,明早再搜,实在搞不定呃呃呃还有师父。
OK,就码到这,只希望赶紧搞定房子,得抓紧看看java、mybatis的网课,表建完了就要写库操作的接口了,救,相对路径都不会写,真的笑死。