Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e7e60d3

Browse files
java9-action-factory
1 parent baf530d commit e7e60d3

File tree

20 files changed

+445
-0
lines changed

20 files changed

+445
-0
lines changed

‎chapter12 Java模块化/.gitignore

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# maven ignore
2+
target/
3+
*.jar
4+
*.war
5+
*.zip
6+
*.tar
7+
*.tar.gz
8+
9+
# eclipse ignore
10+
.settings/
11+
.project
12+
.classpath
13+
14+
# idea ignore
15+
.idea/
16+
*.ipr
17+
*.iml
18+
*.iws
19+
20+
# temp ignore
21+
*.log
22+
*.cache
23+
*.diff
24+
*.patch
25+
*.tmp
26+
27+
# system ignore
28+
.DS_Store
29+
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<parent>
6+
<artifactId>java9-action-factory</artifactId>
7+
<groupId>com.dockerx.traffic</groupId>
8+
<version>1.0-SNAPSHOT</version>
9+
</parent>
10+
<modelVersion>4.0.0</modelVersion>
11+
12+
<artifactId>dockerx-traffic-factory-dcfactory</artifactId>
13+
<dependencies>
14+
<dependency>
15+
<groupId>com.dockerx.traffic</groupId>
16+
<artifactId>dockerx-traffic-factory-service</artifactId>
17+
<version>1.0-SNAPSHOT</version>
18+
</dependency>
19+
<dependency>
20+
<groupId>com.dockerx.traffic</groupId>
21+
<artifactId>dockerx-traffic-factory-serviceimpl-a</artifactId>
22+
<version>1.0-SNAPSHOT</version>
23+
</dependency>
24+
<dependency>
25+
<groupId>com.dockerx.traffic</groupId>
26+
<artifactId>dockerx-traffic-factory-serviceimpl-b</artifactId>
27+
<version>1.0-SNAPSHOT</version>
28+
</dependency>
29+
</dependencies>
30+
31+
32+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package com.dockerx.traffic.factory;
2+
3+
import com.dockerx.traffic.factory.service.Analysis;
4+
import com.dockerx.traffic.factory.serviceimpl.a.A_Analysis;
5+
import com.dockerx.traffic.factory.serviceimpl.b.B_Analysis;
6+
7+
import java.util.List;
8+
9+
/**
10+
* @author Author 知秋
11+
* @email fei6751803@163.com
12+
* @time Created by Auser on 2017年11月20日 22:22.
13+
*/
14+
public class AnalyzerFactory {
15+
16+
public static List<String> getSupportedAnalyses() {
17+
return List.of(A_Analysis.NAME, B_Analysis.NAME);
18+
}
19+
20+
public static Analysis getAnalyzer(String name) {
21+
switch (name) {
22+
case A_Analysis.NAME: return new A_Analysis();
23+
case B_Analysis.NAME: return new B_Analysis();
24+
default: throw new IllegalArgumentException("No such analyzer!");
25+
}
26+
}
27+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
/**
2+
* @author Author 知秋
3+
* @email fei6751803@163.com
4+
* @time Created by Auser on 2017年11月20日 22:25.
5+
*/
6+
module dockerx.traffic.factory.dcfactory {
7+
requires dockerx.traffic.factory.service;
8+
requires dockerx.traffic.factory.serviceimpl.a;
9+
requires dockerx.traffic.factory.serviceimpl.b;
10+
exports com.dockerx.traffic.factory;
11+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<parent>
6+
<artifactId>java9-action-factory</artifactId>
7+
<groupId>com.dockerx.traffic</groupId>
8+
<version>1.0-SNAPSHOT</version>
9+
</parent>
10+
<modelVersion>4.0.0</modelVersion>
11+
12+
<artifactId>dockerx-traffic-factory-entity</artifactId>
13+
14+
15+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package com.dockerx.traffic.factory.entity;
2+
3+
/**
4+
* @author Author 知秋
5+
* @email fei6751803@163.com
6+
* @time Created by Auser on 2017年11月20日 20:11.
7+
*/
8+
public class Person {
9+
private int mileage;
10+
private int money;
11+
12+
public Person(int mileage, int money) {
13+
this.mileage = mileage;
14+
this.money = money;
15+
}
16+
17+
public int getMileage() {
18+
return mileage;
19+
}
20+
21+
public Person setMileage(int mileage) {
22+
this.mileage = mileage;
23+
return this;
24+
}
25+
26+
public int getMoney() {
27+
return money;
28+
}
29+
30+
public Person setMoney(int money) {
31+
this.money = money;
32+
return this;
33+
}
34+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/**
2+
* @author Author 知秋
3+
* @email fei6751803@163.com
4+
* @time Created by Auser on 2017年11月20日 22:00.
5+
*/
6+
module dockerx.traffic.factory.entity {
7+
exports com.dockerx.traffic.factory.entity;
8+
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<parent>
6+
<artifactId>java9-action-factory</artifactId>
7+
<groupId>com.dockerx.traffic</groupId>
8+
<version>1.0-SNAPSHOT</version>
9+
</parent>
10+
<modelVersion>4.0.0</modelVersion>
11+
12+
<artifactId>dockerx-traffic-factory-gui</artifactId>
13+
<dependencies>
14+
<dependency>
15+
<groupId>com.dockerx.traffic</groupId>
16+
<artifactId>dockerx-traffic-factory-entity</artifactId>
17+
<version>1.0-SNAPSHOT</version>
18+
</dependency>
19+
<dependency>
20+
<groupId>com.dockerx.traffic</groupId>
21+
<artifactId>dockerx-traffic-factory-service</artifactId>
22+
<version>1.0-SNAPSHOT</version>
23+
</dependency>
24+
<dependency>
25+
<groupId>com.dockerx.traffic</groupId>
26+
<artifactId>dockerx-traffic-factory-dcfactory</artifactId>
27+
<version>1.0-SNAPSHOT</version>
28+
</dependency>
29+
</dependencies>
30+
31+
32+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com.dockerx.traffic.factory.gui;
2+
3+
4+
import com.dockerx.traffic.factory.AnalyzerFactory;
5+
import com.dockerx.traffic.factory.entity.Person;
6+
7+
/**
8+
* @author Author 知秋
9+
* @email fei6751803@163.com
10+
* @time Created by Auser on 2017年11月20日 20:35.
11+
*/
12+
public class Gui {
13+
public static void main(String[] args) {
14+
Person nao = new Person(0, 0);
15+
Person miniperson = new Person(10, 0);
16+
Person minperson = new Person(1001, 0);
17+
Person minxperson = new Person(1001, 11);
18+
Person maxperson = new Person(100000, 11);
19+
Person maxxperson = new Person(100000, 26);
20+
Person poorperson = new Person(100000, 0);
21+
22+
for(String name: AnalyzerFactory.getSupportedAnalyses()) {
23+
System.out.println(name + ": " + AnalyzerFactory.getAnalyzer(name).analyze(nao));
24+
System.out.println(name + ": " + AnalyzerFactory.getAnalyzer(name).analyze(miniperson));
25+
System.out.println(name + ": " + AnalyzerFactory.getAnalyzer(name).analyze(minperson));
26+
System.out.println(name + ": " + AnalyzerFactory.getAnalyzer(name).analyze(minxperson));
27+
System.out.println(name + ": " + AnalyzerFactory.getAnalyzer(name).analyze(maxperson));
28+
System.out.println(name + ": " + AnalyzerFactory.getAnalyzer(name).analyze(maxxperson));
29+
System.out.println(name + ": " + AnalyzerFactory.getAnalyzer(name).analyze(poorperson));
30+
System.out.println("##########################");
31+
}
32+
33+
34+
}
35+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/**
2+
* @author Author 知秋
3+
* @email fei6751803@163.com
4+
* @time Created by Auser on 2017年11月20日 22:29.
5+
*/
6+
module dockerx.traffic.factory.gui {
7+
requires dockerx.traffic.factory.entity;
8+
requires dockerx.traffic.factory.service;
9+
requires dockerx.traffic.factory.dcfactory;
10+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /