猎聘第一个项目总结


1,数据库建立

https://www.cnblogs.com/xrq730/p/8446246.html
https://www.runoob.com/mysql/mysql-data-types.html

varchar上面的字节,要根据字符集算容量,varchar最后也变了text储存

  • 所有英文无论其编码方式,都占用1个字节,但对于gbk编码,一个汉字占两个字节,因此最大M=65532/2=32766;对于utf8编码,一个汉字占3个字节,因此最大M=65532/3=21844,上面的结论都成立

但是blob完全是字节,根据照片大小限制

2,前后端项目想清楚接受的是什么,返回的是什么

springmvc 在进入方法时候自动注入parameter上的对象,但要看get请求对应的参数(可以用@requestparam控制)post请求可以用传输的格式(表单/ json)json要用@requestBody,其他对象也会帮你生成,但无实际含义

 只返回json(list时候返回对象,其他状态码),要前端控制路由
想要后端控制路由,可以配一个model,mvc就是model view control,只能用在jsp(java server page)中,原理是跳到下一个jsp(本质也是servlet)可以可以用到传过去的对象

 3,springboot的作用:约定大于配置convention over configuration

  具体实现为starter包,不用配置

4,druid,数据库连接池,可以监控

5,

6,关于base64引发的问题,因为数据是blob二进制数据,所以Java最后dao的类型是byte[],直接存,传到前端是一个编码成的string,所以要

String base64 = Base64.getEncoder().encodeToString(userDTO.getUserAddtional().getPhoto());

更多编码知识:https://www.cnblogs.com/vhyc/p/16147359.html

7, 关于form表单和ajax的上传带图片的操作,ajax可以有更多的控制权,比如什么不为空,详细方法看

https://www.cnblogs.com/vhyc/p/9005845.html

到现在,图片这里的二进制我们已经知道怎么放上去服务器,如何存在数据库,自己系统(新建文件),云

然后我们怎么才能让服务器的内容让别人下载,

先在数据库,自己系统(inputstream),云,把数据放在内存中,然后设置http的头,让他知道是下载的(文件系统也是相当于一个端,要输入输出)

相关