这里基于jFinal 4.9的一个shop项目,jdk1.8。

4.7还是基于tomcat的run的,4.9版本这个可以内置java jetty server 直接启动,和4.7的jFinalConfig不一样.

发现里面缺少类,添加两个 jfinal的类,基于它来添加逻辑。 

添加上类和字段,还有继承关系和生成方法签名,逻辑暂不写,再次运行,已经只会报数据库无连接,说明不需要添加这两块的逻辑了。

image.png

之后需要实现两个entity, activerecord中的方法。

docker pull一个mysql, 可是已经拉不下来了。

直接去mysql 官网下载一下mysql community server,系统是win11 x64的,用msi.

使用mysqlconfigurator 配置 mysql 为系统服务,配置 root密码,启动service.msc, 找到mysql 服务启动。

在mysql/bin下面找到mysql.exe 使用命令行连接。


[mysqld]

mysql_native_password=ON

skip-grant-tables


相比于mysql5.0,使用5.1.*的connector包,mysql 8.0, 改pom.xml, mysql connector 为8.0.18, 数据库驱动为com.mysql.cj.driver, 添加了.cj.的段。


mysql:

show plugins;

select user, plugin from mysql.user;

alter user 'root'@'localhost' identified with mysql_native_password by 'root';


此时只报,table builder错误,需要完善代码部分。

mysql8.04提示字段过长,将所有 varchar(255) 减为varchar(100)。


出现:

 The server time zone value '�й���׼ʱ��' is unrecognized 

,这里要在连接字符串加上 &serverTimezone=UTC. 

正常启动。

image.png


然后看下国内电商平台的业务设计:、

缺失的两个表是sku和specification, 分别是库存和商品规格。就是商品和规格如颜色等,记录值就是颜色。

同一种商品,一款商品有多个颜色,就有多个sku。

image.png

image.png

refs:

https://php.watch/articles/fix-php-mysql-84-mysql_native_password-not-loaded

https://blog.csdn.net/pythonstrat/article/details/108081203

https://blog.csdn.net/lbh19630726/article/details/102170732

https://blog.51cto.com/u_16175509/10765913

https://blog.51cto.com/u_16213347/7854914

https://localsite.baidu.com/okam/pages/article/index?categoryLv1=%E6%95%99%E8%82%B2%E5%9F%B9%E8%AE%AD&ch=54&srcid=10004&strategyId=138108202221578&source=natural

https://www.php.cn/faq/602726.html

https://www.elastic.co/cn/blog/how-to-create-a-document-schema-for-product-variants-and-skus-for-your-ecommerce-search-experience

https://docshipper.co.uk/en/shipping/e-commerce-order-tracking-strategies/

https://www.investopedia.com/terms/e/ecommerce.asp










没有登录不能评论