本次课设14天,第一次写前后端分离项目的经验总结,基本上就是边学习边做的
网站地址
www.dcool.xyz:8888
restful风格的前后端接口没有一开始就写好,导致后面的增加就会各种冲突 Ambiguous handler methods mapped for ‘xxx’,
这个API文档本来就应该在开发前写好,这样前后端就可以同时开发了,但我这是边学边做,所以API文档是写完后生成的,哈哈哈
我一直用的是application/x-www-form-urlencoded,将参数添加在url后面,但局限性很大,下面我会使用一下其他的格式
这次让我明白开发前清晰的需求是多么重要
vue.js学得太快了,基础不太好,有时间继续补补,下面是官网链接地址
https://cn.vuejs.org/
我依稀记得当初第一个项目什么框架都没有用,直接各种HTML页面中写各种原生JDBC操作,但那时候其实也就隐约用iframe实现了单页面,vue.js更加方便
我使用数据库存储的相对地址,就不会显示,此问题到现在还没有解决,我用的都是网上搜的图片地址
这个要一开始文档我觉得就要写好,或者注释好,是不是所有的一个功能点,从dao,idao,service,iservice,controller的名字都需要统一成为一样的最好吗?
我贴一个,以免以后到处翻
@Select("select count(*) as ${field}_num from good_${field} where good_id=#{goodId} and " +
" customer_id=#{customerId} group by good_id ;")
String getIsLoveOrStar(String customerId,String goodId,String field);
/*查看分页查询的物品*/
@Select(" ")
List<Good> getLimitGoods(String page, Integer size,Good good);
/*插入订单*/
@Options(useGeneratedKeys = true,keyProperty = "orderId")
@Insert("insert into new.order (customer_id) values (#{customerId})")
Order insertOrder (long customerId);
是我的基础不牢,这个问题还没有解决,上面方法一用这个就是报类型不对应的问题,导致我都是先查找表里面最大的Id,然后用这个最大的id+1作为主键再插入,因为后续操作我需要知道这个id是多少
https://blog.csdn.net/thc1987/article/details/80426063
上面是我设计时参考的用户表
在设计时,比如我的用户表,为了满足第三范式(不能有部分和传递依赖)将用户表拆成用户表和用户积分信息表
然后为了做到冷热分离,再将用户表分为用户登录表,用户实名表,用户信息表
https://blog.csdn.net/madehaiyoushei/article/details/84136908
上面是商品表设计参考,但是在使用的时候无法满足我的需求,即不同规格应该不同库存,可能是我的经验不够,等以后再琢磨琢磨
因为上面表的分离,所以多个表各种左连右连查询,sql语句也就变复杂了
sql语句没有进行优化
我不是一个表对应一个实体,我也不太清楚一般的用法,
我都是从多个表中提取出需要的字段,然后再映射到实体中,比如下面