这里基于jFinal 4.9的一个shop项目,jdk1.8。
4.7还是基于tomcat的run的,4.9版本这个可以内置java jetty server 直接启动,和4.7的jFinalConfig不一样.
发现里面缺少类,添加两个 jfinal的类,基于它来添加逻辑。
添加上类和字段,还有继承关系和生成方法签名,逻辑暂不写,再次运行,已经只会报数据库无连接,说明不需要添加这两块的逻辑了。
之后需要实现两个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.
正常启动。
然后看下国内电商平台的业务设计:、
缺失的两个表是sku和specification, 分别是库存和商品规格。就是商品和规格如颜色等,记录值就是颜色。
同一种商品,一款商品有多个颜色,就有多个sku。
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://www.php.cn/faq/602726.html
https://docshipper.co.uk/en/shipping/e-commerce-order-tracking-strategies/
https://www.investopedia.com/terms/e/ecommerce.asp