Skip to content

Commit 8377713

Browse files
committed
Full Stack Backend DataStructure
1 parent acef098 commit 8377713

File tree

22 files changed

+103
-778
lines changed

22 files changed

+103
-778
lines changed

Part-9.SpringBoot-React-Projects/Project-2.SpringBoot-React-ShoppingMall/fullstack/backend/pom.xml

Lines changed: 21 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
</parent>
1111
<groupId>com.urunov</groupId>
1212
<artifactId>shopping</artifactId>
13-
<version>0.0.1</version>
13+
<version>0.0.1-SNAPSHOT</version>
1414
<name>shopping</name>
1515
<description>Demo project for Spring Boot</description>
1616

@@ -21,7 +21,7 @@
2121
<dependencies>
2222
<dependency>
2323
<groupId>org.springframework.boot</groupId>
24-
<artifactId>spring-boot-starter</artifactId>
24+
<artifactId>spring-boot-starter-web</artifactId>
2525
</dependency>
2626

2727
<dependency>
@@ -30,161 +30,51 @@
3030
<scope>runtime</scope>
3131
<optional>true</optional>
3232
</dependency>
33+
<dependency>
34+
<groupId>mysql</groupId>
35+
<artifactId>mysql-connector-java</artifactId>
36+
<scope>runtime</scope>
37+
</dependency>
3338
<dependency>
3439
<groupId>org.projectlombok</groupId>
3540
<artifactId>lombok</artifactId>
3641
<optional>true</optional>
3742
</dependency>
38-
<dependency>
39-
<groupId>org.springframework.boot</groupId>
40-
<artifactId>spring-boot-starter-test</artifactId>
41-
<scope>test</scope>
42-
<exclusions>
43-
<exclusion>
44-
<groupId>org.junit.vintage</groupId>
45-
<artifactId>junit-vintage-engine</artifactId>
46-
</exclusion>
47-
</exclusions>
48-
</dependency>
4943

50-
<dependency>
51-
<groupId> org.apache.cassandra</groupId>
52-
<artifactId>cassandra-all</artifactId>
53-
<version>0.8.1</version>
54-
55-
<exclusions>
56-
<exclusion>
57-
<groupId>org.slf4j</groupId>
58-
<artifactId>slf4j-log4j12</artifactId>
59-
</exclusion>
60-
<exclusion>
61-
<groupId>log4j</groupId>
62-
<artifactId>log4j</artifactId>
63-
</exclusion>
64-
</exclusions>
65-
66-
</dependency>
44+
<!--I added for annotation-->
6745
<dependency>
6846
<groupId>org.springframework.boot</groupId>
6947
<artifactId>spring-boot-starter-data-jpa</artifactId>
7048
</dependency>
71-
<!-- <dependency>-->
72-
<!-- <groupId>org.springframework.boot</groupId>-->
73-
<!-- <artifactId>spring-boot-starter-jdbc</artifactId>-->
74-
<!-- </dependency>-->
75-
<dependency>
76-
<groupId>org.assertj</groupId>
77-
<artifactId>assertj-core</artifactId>
78-
</dependency>
79-
80-
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
81-
<dependency>
82-
<groupId>mysql</groupId>
83-
<artifactId>mysql-connector-java</artifactId>
84-
<scope>runtime</scope>
85-
</dependency>
8649
<dependency>
8750
<groupId>org.springframework.boot</groupId>
88-
<artifactId>spring-boot-starter-test</artifactId>
89-
<scope>test</scope>
90-
<exclusions>
91-
<exclusion>
92-
<groupId>org.junit.vintage</groupId>
93-
<artifactId>junit-vintage-engine</artifactId>
94-
</exclusion>
95-
</exclusions>
51+
<artifactId>spring-boot-starter-web</artifactId>
9652
</dependency>
9753

9854
<dependency>
99-
<groupId>com.fasterxml.jackson.core</groupId>
100-
<artifactId>jackson-annotations</artifactId>
101-
<version>2.9.8</version>
102-
</dependency>
103-
<dependency>
104-
<groupId>com.fasterxml.jackson.core</groupId>
105-
<artifactId>jackson-core</artifactId>
106-
<version>2.9.8</version>
107-
</dependency>
108-
<dependency>
109-
<groupId>com.fasterxml.jackson.datatype</groupId>
110-
<artifactId>jackson-datatype-jsr310</artifactId>
111-
<version>2.9.8</version>
112-
</dependency>
113-
<dependency>
114-
<groupId>com.fasterxml.jackson.core</groupId>
115-
<artifactId>jackson-databind</artifactId>
116-
<version>2.9.8</version>
55+
<groupId>javax.validation</groupId>
56+
<artifactId>validation-api</artifactId>
57+
<version>2.0.1.Final</version>
11758
</dependency>
59+
<!---->
11860

119-
<!-- &lt;!&ndash; For Working with Json Web Tokens (JWT) &ndash;&gt;-->
120-
<dependency>
121-
<groupId>io.jsonwebtoken</groupId>
122-
<artifactId>jjwt</artifactId>
123-
<version>0.9.0</version>
124-
</dependency>
12561

126-
<dependency>
127-
<groupId>com.zaxxer</groupId>
128-
<artifactId>HikariCP</artifactId>
129-
</dependency>
13062

131-
<dependency>
132-
<groupId>com.thetransactioncompany</groupId>
133-
<artifactId>cors-filter</artifactId>
134-
<version>2.5</version>
135-
</dependency>
13663

137-
<dependency>
138-
<groupId>javax.inject</groupId>
139-
<artifactId>javax.inject</artifactId>
140-
<version>1</version>
141-
</dependency>
142-
<!-- <dependency>-->
143-
<!-- <groupId>org.mockito</groupId>-->
144-
<!-- <artifactId>mockito-all</artifactId>-->
145-
<!-- <version>1.10.19</version>-->
146-
<!-- <scope>test</scope>-->
147-
<!-- </dependency>-->
14864

149-
<!-- <dependency>-->
150-
<!-- <groupId>org.springframework.kafka</groupId>-->
151-
<!-- <artifactId>spring-kafka</artifactId>-->
152-
<!-- </dependency>-->
15365

154-
<!-- <dependency>-->
155-
<!-- <groupId>org.springframework.kafka</groupId>-->
156-
<!-- <artifactId>spring-kafka-test</artifactId>-->
157-
<!-- <scope>test</scope>-->
158-
<!-- </dependency>-->
159-
<dependency>
160-
<groupId>com.google.code.gson</groupId>
161-
<artifactId>gson</artifactId>
162-
<version>2.8.6</version>
163-
</dependency>
16466

16567
<dependency>
16668
<groupId>org.springframework.boot</groupId>
167-
<artifactId>spring-boot-starter-log4j2</artifactId>
168-
</dependency>
169-
170-
<dependency>
171-
<groupId>com.googlecode.json-simple</groupId>
172-
<artifactId>json-simple</artifactId>
173-
<version>1.1.1</version>
174-
</dependency>
175-
176-
<!-- <dependency>-->
177-
<!-- <groupId>org.apache.httpcomponents</groupId>-->
178-
<!-- <artifactId>httpclient</artifactId>-->
179-
<!-- <version>4.5.10</version>-->
180-
<!-- </dependency>-->
181-
<!-- https://mvnrepository.com/artifact/javax.validation/validation-api -->
182-
<dependency>
183-
<groupId>javax.validation</groupId>
184-
<artifactId>validation-api</artifactId>
185-
<version>2.0.0.Final</version>
69+
<artifactId>spring-boot-starter-test</artifactId>
70+
<scope>test</scope>
71+
<exclusions>
72+
<exclusion>
73+
<groupId>org.junit.vintage</groupId>
74+
<artifactId>junit-vintage-engine</artifactId>
75+
</exclusion>
76+
</exclusions>
18677
</dependency>
187-
18878
</dependencies>
18979

19080
<build>
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.urunov.model;
22

3-
import com.urunov.model.retailer.Retailer;
3+
import com.urunov.model.audit.DateAudit;
44
import lombok.*;
55

66
import javax.persistence.*;
@@ -15,18 +15,20 @@
1515
@Data
1616
@Getter
1717
@Setter
18-
@NoArgsConstructor
1918
@AllArgsConstructor
19+
@NoArgsConstructor
2020
@ToString
2121
@Entity
22-
public class Good{
22+
public class Good extends DateAudit {
2323

2424
@Id
2525
@GeneratedValue(strategy = GenerationType.IDENTITY)
2626
private Long id;
2727

2828
private String internalCode;
29+
2930
private String name;
31+
3032
private BigDecimal currentPrice;
3133

3234
@Transient
@@ -35,19 +37,15 @@ public class Good{
3537
@Transient
3638
private Boolean isAddToBucket;
3739

38-
@Transient
40+
@Lob
3941
private byte[] image;
4042

41-
4243
@Lob
4344
@Column
4445
private String description;
4546

46-
@ManyToOne(optional = false, cascade = CascadeType.ALL)
47-
@JoinColumn(name = "retailers_id")
48-
private Retailer retialer;
49-
50-
private Boolean isOutdated = false;
51-
47+
// @ManyToOne(optional = false, cascade = CascadeType.MERGE)
48+
// @JoinColumn(name = "retailers_id")
49+
// private Retailer retailer;
5250

5351
}
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package com.urunov.model;
22

3-
import lombok.*;
4-
53
import javax.persistence.*;
64
import java.util.Date;
75
import java.util.List;
@@ -12,27 +10,15 @@
1210
* Project: IntelliJ IDEA
1311
* Github: @urunov
1412
*/
15-
16-
17-
@Data
18-
@Getter
19-
@Setter
20-
@NoArgsConstructor
21-
@AllArgsConstructor
22-
@ToString
23-
@Entity
2413
public class Offer {
2514

26-
@Id
27-
@GeneratedValue(strategy = GenerationType.IDENTITY)
28-
private Long id;
29-
3015
private byte[] image;
3116

3217
@Transient
3318
private String imageUrl;
3419

3520
@Lob
21+
@Column
3622
private String description;
3723

3824
private Date startDate;
@@ -41,9 +27,10 @@ public class Offer {
4127

4228
private String name;
4329

44-
@ManyToMany(fetch = FetchType.LAZY)
45-
@JoinTable(name = "offer_goods",
46-
joinColumns = @JoinColumn(name = "offer_id"),
47-
inverseJoinColumns = @JoinColumn(name = "good_id"))
48-
private List<Good> goodList;
30+
// @ManyToMany(fetch = FetchType.LAZY)
31+
// @JoinTable(name = "offer_goods",
32+
// joinColumns = @JoinColumn(name = "offer_id"),
33+
// inverseJoinColumns = @JoinColumn(name = "good_id"))
34+
// private List<Good> goodList;
35+
4936
}
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.urunov.model;
22

33
import com.fasterxml.jackson.annotation.JsonIgnore;
4+
import com.urunov.model.audit.DateAudit;
45
import lombok.*;
56

67
import javax.persistence.*;
@@ -15,10 +16,10 @@
1516
@Data
1617
@Getter
1718
@Setter
18-
@NoArgsConstructor
1919
@AllArgsConstructor
20+
@NoArgsConstructor
2021
@Entity
21-
public class OrderDetails {
22+
public class OrderDetails extends DateAudit {
2223

2324
@Id
2425
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -28,22 +29,11 @@ public class OrderDetails {
2829
@JsonIgnore
2930
private String ImageUrl;
3031

31-
/**
32-
* Количество товара
33-
*/
34-
35-
private Integer quantity;
36-
37-
/**
38-
* Order = Заказ
39-
* */
4032

4133
@ManyToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
4234
@JoinColumn(name = "order_id", nullable = false)
4335
private Orders order;
4436

45-
46-
@ManyToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
47-
@JoinColumn(name = "good_id", nullable = false)
48-
private Good good;
37+
/**Number of good, Количество товара*/
38+
private Integer quantity;
4939
}

0 commit comments

Comments
 (0)