源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

javaweb实战之商城项目开发(一)

  • 时间:2022-01-31 07:12 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:javaweb实战之商城项目开发(一)
一.项目功能结构 1.功能 [img]http://files.jb51.net/file_images/article/201602/201622490302055.jpg?20161249312[/img] 2.实体 [img]http://files.jb51.net/file_images/article/201602/201622490325288.jpg?20161249333[/img] 3.对应sql语句
CREATE DATABASE shop;
use shop;

create table user(
 id int(11) primary key auto_increment,
 username varchar(100),
 password varchar(100),
 nickname varchar(100),
 type int(5)
);

INSERT INTO user VALUES (null,'admin','7946521','管理员',1);

CREATE TABLE address(
 id INT(10) PRIMARY KEY AUTO_INCREMENT,
 name VARCHAR(255),
 phone VARCHAR(100),
 postcode VARCHAR(100),
 user_id INT(10),
 CONSTRAINT FOREIGN KEY (user_id) REFERENCES user(id)
);
INSERT INTO address VALUES (NULL ,'安徽阜阳','1234567890','236000','1');

SELECT t1.*,t2.* FROM address t1 LEFT JOIN user t2 ON t1.user_id = t2.id where t1.user_id =1 ;

create table orders(
 id int(11) primary key auto_increment,
 buy_date datetime,
 pay_date datetime,
 confirm_date datetime,
 status int(5),
 user_id int(11),
 address_id int(11),
 CONSTRAINT FOREIGN KEY(user_id) REFERENCES user(id),
 CONSTRAINT FOREIGN KEY(address_id) REFERENCES address(id)
);

create table category(
 id int(11) primary key auto_increment,
 name varchar(100)
);

create table goods(
 id int(11) primary key auto_increment,
 name varchar(100),
 price double,
 intro text,
 img varchar(100),
 stock int(10),
 c_id int(10),
 CONSTRAINT FOREIGN KEY(c_id) REFERENCES category(id)
);

create table goods_orders(
 id int(11) primary key auto_increment,
 goods_id int(10),
 orders_id int(10),
 CONSTRAINT FOREIGN KEY(goods_id) REFERENCES goods(id),
 CONSTRAINT FOREIGN KEY(orders_id) REFERENCES orders(id)
);
[b]二.项目准备[/b] [b]1.实体类实现[/b] 分别建立dao,filter,model,util的包,并在model中实现实体类,这里以User.java为例. 注意对于数据库中外键,比如adress表中有外键user_id,那么在Adress.java中就可以直接给个User对象,在取adress表的时候就把user一并取出来. User.java
package com.model;

import java.util.List;

/**
 * Created by nl101 on 2016/2/22.
 */
public class User {
 private int id;//id
 private String username;
 private String password;
 private String nickname;//昵称
 private int type;//1表示管理员,2表示注册用户

 private List<Address> addresses;

 public List<Address> getAddresses() {
  return addresses;
 }

 public void setAddresses(List<Address> addresses) {
  this.addresses = addresses;
 }

 public int getId() {
  return id;
 }

 public void setId(int id) {
  this.id = id;
 }

 public String getUsername() {
  return username;
 }

 public void setUsername(String username) {
  this.username = username;
 }

 public String getPassword() {
  return password;
 }

 public void setPassword(String password) {
  this.password = password;
 }

 public String getNickname() {
  return nickname;
 }

 public void setNickname(String nickname) {
  this.nickname = nickname;
 }

 public int getType() {
  return type;
 }

 public void setType(int type) {
  this.type = type;
 }
}

Adress.java
package com.model;

/**
 * Created by nl101 on 2016/2/22.
 */
public class Address {
 private int id;
 private String name;
 private String phone;
 private String postcode;
 //直接给user对象,来代替user_id
 private User user;

 public int getId() {
  return id;
 }

 public void setId(int id) {
  this.id = id;
 }

 public String getName() {
  return name;
 }

 public void setName(String name) {
  this.name = name;
 }

 public String getPhone() {
  return phone;
 }

 public void setPhone(String phone) {
  this.phone = phone;
 }

 public String getPostcode() {
  return postcode;
 }

 public void setPostcode(String postcode) {
  this.postcode = postcode;
 }

 public User getUser() {
  return user;
 }

 public void setUser(User user) {
  this.user = user;
 }
}

[b]2.分页框架准备[/b] 分页主要是写pager.java和SystemContext.java以及SystemFilter.java三个类. 完整建立后如下 [img]http://files.jb51.net/file_images/article/201602/201622490343641.png?20161249410[/img] 本文是项目实战的第一篇,之后还有更新,希望大家不要错过。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部