3. 代码实现
3.1 数据准备
创建商品表
CREATE TABLE `tb_item` (
`pid` bigint(11) NOT NULL AUTO_INCREMENT,
`name` varchar(2000) CHARACTER SET latin1 DEFAULT NULL,
`types` varchar(2000) CHARACTER SET latin1 DEFAULT NULL,
PRIMARY KEY (`pid`)
) ENGINE=InnoDB AUTO_INCREMENT=65134 DEFAULT CHARSET=utf8;
创建用户偏好表
CREATE TABLE `user_pianhao_data1` (
`id` bigint(11) NOT NULL AUTO_INCREMENT,
`uid` bigint(11) DEFAULT NULL,
`pid` bigint(11) DEFAULT NULL,
`val` bigint(11) DEFAULT NULL,
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1001 DEFAULT CHARSET=utf8;
表中测试数据较多,可在网盘下载数据进行初始化链接:https://pan.baidu.com/s/1VSgD2uiJ69zDsw-KCtfEUQ
3.2 搭建springboot工程
3.3 编写application.properties配置文件
#DB Configuration:
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/recommend?useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=123456
#spring集成Mybatis环境
#pojo别名扫描包
mybatis.type-aliases-package=cn.itcast.domain
#加载Mybatis映射文件
mybatis.mapper-locations=classpath:mapper/*Mapper.xml
3.4 编写domain实体类
package cn.itcast.domain;
public class Item {
private Long pid;
private String name;
private String types;
public Long getPid() {
return pid;
}
public void setPid(Long pid) {
this.pid = pid;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getTypes() {
return types;
}
public void setTypes(String types) {
this.types = types;
}
@Overrid