水果商城管理系统笔记
一、打开idea,新建一个包,确定好路径和名称,路径不要包含中文:
添加web框架支持:
添加项目框架:
添加配置:
配置本地Tomcat:
添加构件:
修改一下项目访问路径:
前:
后:
在server中设置热部署:
导入SQL文件:
创建lib库,导入jar包:
对lib库进行添加依赖:
导入配置文件:
导入到src下
将页面导入到web下:
在src中创建包:
dao业务逻辑层
controller控制层
service业务层
util
逻辑图:
先写用户表的表结构
在domain中添加user用户类:
写出相关的信息,生成set和get和tostring方法,User代码如下:
package com.tuling.domain;/*** 用户实体类,用于封装用户相关信息*/ public class User {// 用户唯一标识IDprivate int id;// 用户邮箱地址private String email;// 用户手机号码private String phone;// 用户登录密码private String pwd;// 用户显示名称private String uname;/*** 默认构造函数*/public User(){}/*** 仅使用ID创建用户对象* @param id 用户ID*/public User(int id){this.id = id;}/*** 使用完整信息创建用户对象(不含ID)* @param email 用户邮箱* @param phone 用户手机号* @param pwd 用户密码* @param uname 用户名称*/public User(String email, String phone, String pwd, String uname) {this.email = email;this.phone = phone;this.pwd = pwd;this.uname = uname;}/*** 使用完整信息创建用户对象(含ID)* @param id 用户ID* @param email 用户邮箱* @param phone 用户手机号* @param pwd 用户密码* @param uname 用户名称*/public User(int id, String email, String phone, String pwd, String uname) {this.id = id;this.email = email;this.phone = phone;this.pwd = pwd;this.uname = uname;}/*** 获取用户ID* @return 用户ID*/public int getId() {return id;}/*** 设置用户ID* @param id 新的用户ID*/public void setId(int id) {this.id = id;}/*** 获取用户邮箱* @return 用户邮箱地址*/public String getEmail() {return email;}/*** 设置用户邮箱* @param email 新的邮箱地址*/public void setEmail(String email) {this.email = email;}/*** 获取用户手机号* @return 用户手机号*/public String getPhone() {return phone;}/*** 设置用户手机号* @param phone 新的手机号*/public void setPhone(String phone) {this.phone = phone;}/*** 获取用户密码* @return 用户密码*/public String getPwd() {return pwd;}/*** 设置用户密码* @param pwd 新的密码*/public void setPwd(String pwd) {this.pwd = pwd;}/*** 获取用户名称* @return 用户名称*/public String getUname() {return uname;}/*** 设置用户名称* @param uname 新的用户名称*/public void setUname(String uname) {this.uname = uname;}/*** 返回用户对象的字符串表示形式* @return 包含用户信息的字符串*/@Overridepublic String toString() {return "User{" +"id=" + id +", email='" + email + '\'' +", phone='" + phone + '\'' +", pwd='" + pwd + '\'' +", uname='" + uname + '\'' +'}';} }
水果表代码:
package com.tuling.domain;/*** 水果实体类,用于封装水果商品信息*/ public class Fruit {// 水果唯一标识编号private int fid;// 水果名称private String fname;// 水果规格(如:500g/盒)private String spec;// 水果单价(元)private double up;// 商品简介private String t1;// 温馨提示信息private String t2;// 水果图片数量private int inum;/*** 使用完整信息创建水果对象* @param fid 水果编号* @param fname 水果名称* @param spec 规格描述* @param price 单价* @param t1 商品简介* @param t2 温馨提示* @param inum 图片数量*/public Fruit(int fid, String fname, String spec, double price, String t1, String t2, int inum) {this.fid = fid;this.fname = fname;this.spec = spec;this.up = price;this.t1 = t1;this.t2 = t2;this.inum = inum;}/*** 获取水果编号* @return 水果编号*/public int getFid() {return fid;}/*** 设置水果编号* @param fid 新的水果编号*/public void setFid(int fid) {this.fid = fid;}/*** 获取水果名称* @return 水果名称*/public String getFname() {return fname;}/*** 设置水果名称* @param fname 新的水果名称*/public void setFname(String fname) {this.fname = fname;}/*** 获取水果规格* @return 规格描述*/public String getSpec() {return spec;}/*** 设置水果规格* @param spec 新的规格描述*/public void setSpec(String spec) {this.spec = spec;}/*** 获取水果单价* @return 单价(元)*/public double getUp() {return up;}/*** 设置水果单价* @param up 新的单价(元)*/public void setUp(double up) {this.up = up;}/*** 获取商品简介* @return 商品简介信息*/public String getT1() {return t1;}/*** 设置商品简介* @param t1 新的商品简介*/public void setT1(String t1) {this.t1 = t1;}/*** 获取温馨提示* @return 温馨提示信息*/public String getT2() {return t2;}/*** 设置温馨提示* @param t2 新的温馨提示*/public void setT2(String t2) {this.t2 = t2;}/*** 获取图片数量* @return 图片数量*/public int getInum() {return inum;}/*** 设置图片数量* @param inum 新的图片数量*/public void setInum(int inum) {this.inum = inum;}/*** 返回水果对象的字符串表示形式* @return 包含水果信息的字符串*/@Overridepublic String toString() {return "Fruit{" +"fid=" + fid +", fname='" + fname + '\'' +", spec='" + spec + '\'' +", up=" + up +", t1='" + t1 + '\'' +", t2='" + t2 + '\'' +", inum=" + inum +'}';} }
购物车:
package com.tuling.domain;/*** 购物车与收藏关联实体类* 用于记录用户对水果的购物车添加状态和收藏状态*/ public class Cart {// 用户ID,关联User表的主键private int uid;// 水果ID,关联Fruit表的主键private int fid;// 是否添加到购物车(true=已添加,false=未添加)private boolean isCart;// 是否收藏(true=已收藏,false=未收藏)private boolean isStar;/*** 获取用户ID* @return 用户ID*/public int getUid() {return uid;}/*** 设置用户ID* @param uid 新的用户ID*/public void setUid(int uid) {this.uid = uid;}/*** 获取水果ID* @return 水果ID*/public int getFid() {return fid;}/*** 设置水果ID* @param fid 新的水果ID*/public void setFid(int fid) {this.fid = fid;}/*** 检查是否已添加到购物车* @return true=已添加,false=未添加*/public boolean isCart() {return isCart;}/*** 设置购物车状态* @param cart 新的购物车状态*/public void setIsCart(boolean cart) {isCart = cart;}/*** 检查是否已收藏* @return true=已收藏,false=未收藏*/public boolean isStar() {return isStar;}/*** 设置收藏状态* @param star 新的收藏状态*/public void setIsStar(boolean star) {isStar = star;}/*** 返回购物车与收藏信息的字符串表示* @return 包含用户ID、水果ID、购物车状态和收藏状态的字符串*/@Overridepublic String toString() {return "Cart{" +"uid=" + uid +", fid=" + fid +", isCart=" + isCart +", isStar=" + isStar +'}';} }