Skip to content

Commit 151e365

Browse files
committed
重构整个仓库的结构
1 parent adaafc7 commit 151e365

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1427
-27
lines changed

.gitignore

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Eclipse
2+
.classpath
3+
.project
4+
.settings/
5+
6+
# Intellij
7+
.idea/
8+
*.iml
9+
*.iws
10+
11+
# Mac
12+
.DS_Store
13+
14+
# Maven
15+
log/
16+
target/
17+
out/
18+
19+
# Others
20+
bin/
21+
.myeclipse

README.md

+47-27
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
# 我的java学习笔记
22

3-
笔记分为两大部分:javase和javaweb
4-
5-
- [javase](/javase)
6-
- [javaweb](/javaweb)
7-
83

94
笔记内容主要是对一些基础特性和编程细节进行总结整理,适合了解java基础语法,想进一步深入学习的人
105

@@ -20,33 +15,56 @@
2015

2116
-----
2217

23-
# 目录
24-
25-
- [javase](/javase)
26-
- [java基础巩固笔记(1)-反射.md](/javase/java基础巩固笔记(1)-反射.md)
27-
- [java基础巩固笔记(2)-泛型.md](/javase/java基础巩固笔记(2)-泛型.md)
28-
- [java基础巩固笔记(3)-类加载器.md](/javase/java基础巩固笔记(3)-类加载器.md)
29-
- [java基础巩固笔记(4)-代理.md](/javase/java基础巩固笔记(4)-代理.md)
30-
- [java基础巩固笔记(4)-实现AOP功能的封装与配置的小框架.md](/javase/java基础巩固笔记(4)-实现AOP功能的封装与配置的小框架.md)
31-
- [java基础巩固笔记(5)-多线程之传统多线程.md](/javase/java基础巩固笔记(5)-多线程之传统多线程.md)
32-
- [java基础巩固笔记(5)-多线程之共享数据.md](/javase/java基础巩固笔记(5)-多线程之共享数据.md)
33-
- [java基础巩固笔记(5)-多线程之线程并发库.md](/javase/java基础巩固笔记(5)-多线程之线程并发库.md)
34-
- [java基础巩固笔记(6)-注解.md](/javase/java基础巩固笔记(6)-注解.md)
35-
- [javaweb](/javaweb)
36-
- [javaweb入门笔记(1)-Tomcat.md](/javaweb/javaweb入门笔记(1)-Tomcat.md)
37-
- [javaweb入门笔记(2)-http入门.md](/javaweb/javaweb入门笔记(2)-http入门.md)
38-
- [javaweb入门笔记(3)-Servlet.md](/javaweb/javaweb入门笔记(3)-Servlet.md)
39-
- [javaweb入门笔记(4)-request和response.md](/javaweb/javaweb入门笔记(4)-request和response.md)
40-
- [javaweb入门笔记(5)-cookie和session.md](/javaweb/javaweb入门笔记(5)-cookie和session.md)
41-
- [javaweb入门笔记(6)-JSP技术.md](/javaweb/javaweb入门笔记(6)-JSP技术.md)
18+
# 仓库目录
19+
20+
- [blogs](/blogs):博客文档
21+
- [java-base](/java-base):java基础巩固部分的模块
22+
- [java-multithread](/java-multithread):多线程部分的模块
23+
24+
4225

26+
# 博客文档
27+
28+
笔记分为两大部分:javase和javaweb
29+
30+
- [javase](/blogs/javase)
31+
- [javaweb](/blogs/javaweb)
32+
33+
34+
**博客目录**
35+
36+
- [javase](/blogs/javase)
37+
- [java基础巩固笔记(1)-反射.md](/blogs/javase/java基础巩固笔记(1)-反射.md)
38+
- [java基础巩固笔记(2)-泛型.md](/blogs/javase/java基础巩固笔记(2)-泛型.md)
39+
- [java基础巩固笔记(3)-类加载器.md](/blogs/javase/java基础巩固笔记(3)-类加载器.md)
40+
- [java基础巩固笔记(4)-代理.md](/blogs/javase/java基础巩固笔记(4)-代理.md)
41+
- [java基础巩固笔记(4)-实现AOP功能的封装与配置的小框架.md](/blogs/javase/java基础巩固笔记(4)-实现AOP功能的封装与配置的小框架.md)
42+
- [java基础巩固笔记(5)-多线程之传统多线程.md](/blogs/javase/java基础巩固笔记(5)-多线程之传统多线程.md)
43+
- [java基础巩固笔记(5)-多线程之共享数据.md](/blogs/javase/java基础巩固笔记(5)-多线程之共享数据.md)
44+
- [java基础巩固笔记(5)-多线程之线程并发库.md](/blogs/javase/java基础巩固笔记(5)-多线程之线程并发库.md)
45+
- [java基础巩固笔记(6)-注解.md](/blogs/javase/java基础巩固笔记(6)-注解.md)
46+
- [javaweb](/blogs/javaweb)
47+
- [javaweb入门笔记(1)-Tomcat.md](/blogs/javaweb/javaweb入门笔记(1)-Tomcat.md)
48+
- [javaweb入门笔记(2)-http入门.md](/blogs/javaweb/javaweb入门笔记(2)-http入门.md)
49+
- [javaweb入门笔记(3)-Servlet.md](/blogs/javaweb/javaweb入门笔记(3)-Servlet.md)
50+
- [javaweb入门笔记(4)-request和response.md](/blogs/javaweb/javaweb入门笔记(4)-request和response.md)
51+
- [javaweb入门笔记(5)-cookie和session.md](/blogs/javaweb/javaweb入门笔记(5)-cookie和session.md)
52+
- [javaweb入门笔记(6)-JSP技术.md](/blogs/javaweb/javaweb入门笔记(6)-JSP技术.md)
53+
54+
4355
-----
4456

57+
4558
# TODO
4659

47-
源码写的有些零散,暂时未放出,我会整理成maven的结构,然后以测试驱动的形式重构一遍。
60+
计划将这个仓库进行重构,逐步扩充并实现下面的功能。
61+
62+
* [x] 整理成maven的结构,使用聚合和继承特性(2016.4.12完成)
63+
* [ ] 原有的javase部分代码重构为java-base模块,并逐步上传代码
64+
* [ ] 多线程部分使用java-multithread模块(进行中)
65+
* [ ] 集合类部分使用模块java-collection
66+
* [ ] IO部分使用模块java-io
4867

49-
清明出去玩一趟,估计4月或者5月会放出源码。
5068

5169

5270
-----
@@ -60,4 +78,6 @@
6078

6179
-----
6280

63-
**All Copyright Reserved**
81+
# Lisence
82+
83+
Lisenced under [Apache 2.0 lisence](http://opensource.org/licenses/Apache-2.0)

java-base/pom.xml

+15
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>java-learning</artifactId>
7+
<groupId>com.brianway.learning.java</groupId>
8+
<version>1.0-SNAPSHOT</version>
9+
</parent>
10+
<modelVersion>4.0.0</modelVersion>
11+
12+
<artifactId>java-base</artifactId>
13+
14+
15+
</project>

java-multithread/pom.xml

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
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>java-learning</artifactId>
7+
<groupId>com.brianway.learning.java</groupId>
8+
<version>1.0-SNAPSHOT</version>
9+
</parent>
10+
<modelVersion>4.0.0</modelVersion>
11+
12+
<artifactId>java-multihread</artifactId>
13+
14+
<dependencies>
15+
<dependency>
16+
<groupId>junit</groupId>
17+
<artifactId>junit</artifactId>
18+
</dependency>
19+
</dependencies>
20+
21+
22+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
package com.brianway.learning.java.multithread.meet;
2+
3+
/**
4+
* Created by brian on 2016/4/10.
5+
*/
6+
7+
/**
8+
* P11数据共享的例子
9+
*/
10+
11+
class MyThread extends Thread{
12+
private int count = 5;
13+
14+
@Override
15+
public void run() {
16+
super.run();
17+
count--;
18+
System.out.println("由"+this.currentThread().getName()+" 计算,count="+count);
19+
}
20+
}
21+
22+
public class Run {
23+
public static void main(String[] args) {
24+
MyThread myThread = new MyThread();
25+
Thread a = new Thread(myThread,"A");
26+
Thread b = new Thread(myThread,"B");
27+
Thread c = new Thread(myThread,"C");
28+
Thread d = new Thread(myThread,"D");
29+
a.start();
30+
b.start();
31+
c.start();
32+
d.start();
33+
}
34+
}
35+
36+
37+
/*
38+
output(某一次):
39+
由A 计算,count=3
40+
由C 计算,count=2
41+
由B 计算,count=3
42+
由D 计算,count=1
43+
44+
output(某一次):
45+
由A 计算,count=4
46+
由C 计算,count=3
47+
由D 计算,count=1
48+
由B 计算,count=1
49+
*/
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com.brianway.learning.java.multithread.meet;
2+
3+
/**
4+
* Created by brian on 2016/4/11.
5+
*/
6+
7+
/**
8+
* P26例子
9+
* isInterrupted(),不清除状态标记
10+
*/
11+
12+
public class Run10_isInterrupted {
13+
public static void main(String[] args) {
14+
try {
15+
MyThread7 myThread7 = new MyThread7();
16+
myThread7.start();
17+
Thread.sleep(100);
18+
myThread7.interrupt();
19+
System.out.println("Thread.interrupted(),是否停止1?="+myThread7.isInterrupted());
20+
System.out.println("Thread.interrupted(),是否停止2?="+myThread7.isInterrupted());
21+
} catch (InterruptedException e) {
22+
System.out.println("main catch");
23+
e.printStackTrace();
24+
}
25+
System.out.println("end");
26+
}
27+
}
28+
29+
/*
30+
输出节选:
31+
i=17596
32+
i=17597
33+
i=17598
34+
i=17599
35+
Thread.interrupted(),是否停止1?=true
36+
Thread.interrupted(),是否停止2?=true
37+
end
38+
i=17600
39+
i=17601
40+
i=17602
41+
*/
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
package com.brianway.learning.java.multithread.meet;
2+
3+
/**
4+
* Created by brian on 2016/4/11.
5+
*/
6+
7+
/**
8+
* P30
9+
* 睡眠中停止,先进入的sleep,再interrupt()
10+
*/
11+
class MyThread11 extends Thread{
12+
@Override
13+
public void run() {
14+
super.run();
15+
16+
try {
17+
System.out.println("run begin");
18+
Thread.sleep(20000);
19+
System.out.println("run end");
20+
} catch (InterruptedException e) {
21+
System.out.println("沉睡中被停止!进入catch!"+this.isInterrupted());
22+
e.printStackTrace();
23+
}
24+
}
25+
}
26+
27+
public class Run11_sleepAndinterrupt01 {
28+
public static void main(String[] args) {
29+
try {
30+
MyThread11 myThread11 =new MyThread11();
31+
myThread11.start();
32+
Thread.sleep(200);
33+
myThread11.interrupt();
34+
} catch (InterruptedException e) {
35+
System.out.println("main catch");
36+
e.printStackTrace();
37+
}
38+
System.out.println("end");
39+
}
40+
}
41+
42+
/*
43+
输出:
44+
run begin
45+
沉睡中被停止!进入catch!false
46+
end
47+
java.lang.InterruptedException: sleep interrupted
48+
at java.lang.Thread.sleep(Native Method)
49+
at com.brianway.learning.java.multithread.meet.MyThread11.run(Run11_sleepAndinterrupt01.java:18)
50+
51+
-------
52+
输出不唯一:
53+
run begin
54+
end
55+
沉睡中被停止!进入catch!false
56+
java.lang.InterruptedException: sleep interrupted
57+
at java.lang.Thread.sleep(Native Method)
58+
at com.brianway.learning.java.multithread.meet.MyThread11.run(Run11_sleepAndinterrupt01.java:18)
59+
60+
*/
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.brianway.learning.java.multithread.meet;
2+
3+
/**
4+
* Created by brian on 2016/4/11.
5+
*/
6+
7+
/**
8+
* P31例子
9+
* 先interrupt(),再进入sleep(),直接进异常
10+
*/
11+
class MyThread12 extends Thread{
12+
@Override
13+
public void run() {
14+
super.run();
15+
try {
16+
for(int i=0;i<100000;i++){
17+
System.out.println("i="+(i+1));
18+
}
19+
System.out.println("run begin");
20+
Thread.sleep(200000);
21+
System.out.println("run end");
22+
} catch (InterruptedException e) {
23+
System.out.println("先停止,再遇到了sleep!进入catch");
24+
e.printStackTrace();
25+
}
26+
}
27+
}
28+
29+
public class Run12_sleepAndinterrupt02 {
30+
public static void main(String[] args) {
31+
MyThread12 myThread12 =new MyThread12();
32+
myThread12.start();
33+
myThread12.interrupt();
34+
System.out.println("end!");
35+
}
36+
}
37+
38+
/*
39+
输出:
40+
end!
41+
i=1
42+
i=2
43+
i=3
44+
i=4
45+
省略。。。
46+
47+
i=99998
48+
i=99999
49+
i=100000
50+
run begin
51+
先停止,再遇到了sleep!进入catch
52+
java.lang.InterruptedException: sleep interrupted
53+
at java.lang.Thread.sleep(Native Method)
54+
at com.brianway.learning.java.multithread.meet.MyThread12.run(Run12_sleepAndinterrupt02.java:19)
55+
56+
57+
58+
*/

0 commit comments

Comments
 (0)