From 01903e4727eb143f9b1eb5ba4a70bb1b2079963e Mon Sep 17 00:00:00 2001 From: kimmking Date: Wed, 3 Feb 2021 22:58:38 +0800 Subject: [PATCH 1/3] update --- .../main/java/java0/conc0303/Homework03.java | 1 + 04fx/spring01/pom.xml | 5 ---- .../java/io/kimmking/spring01/GuavaDemo.java | 2 +- .../java/io/kimmking/spring01/LombokDemo.java | 2 +- .../java/io/kimmking/spring01/Student.java | 24 +++++++++++++++---- .../io/kimmking/spring02/SpringDemo01.java | 4 ++++ .../java/io/kimmking/springjms/JmsSender.java | 2 +- .../io/kimmking/springjms/SendService.java | 3 ++- 8 files changed, 30 insertions(+), 13 deletions(-) diff --git a/03concurrency/0301/src/main/java/java0/conc0303/Homework03.java b/03concurrency/0301/src/main/java/java0/conc0303/Homework03.java index dd7d4375..f9a6eb20 100644 --- a/03concurrency/0301/src/main/java/java0/conc0303/Homework03.java +++ b/03concurrency/0301/src/main/java/java0/conc0303/Homework03.java @@ -14,6 +14,7 @@ public class Homework03 { public static void main(String[] args) { long start=System.currentTimeMillis(); + // 在这里创建一个线程或线程池, // 异步执行 下面方法 diff --git a/04fx/spring01/pom.xml b/04fx/spring01/pom.xml index 52e59f6d..505009a7 100644 --- a/04fx/spring01/pom.xml +++ b/04fx/spring01/pom.xml @@ -152,11 +152,6 @@ test - - org.springframework - spring-jms - 4.3.29.RELEASE - org.apache.activemq activemq-client diff --git a/04fx/spring01/src/main/java/io/kimmking/spring01/GuavaDemo.java b/04fx/spring01/src/main/java/io/kimmking/spring01/GuavaDemo.java index 98ef1c51..d0c48591 100644 --- a/04fx/spring01/src/main/java/io/kimmking/spring01/GuavaDemo.java +++ b/04fx/spring01/src/main/java/io/kimmking/spring01/GuavaDemo.java @@ -79,7 +79,7 @@ public static void main(String[] args) throws IOException { // SPI+service loader // Callback/Listener // - Student student2 = new Student(2, "KK02"); + Student student2 = new Student(2, "KK02", null, null); System.out.println("I want " + student2 + " run now."); bus.post(new AEvent(student2)); diff --git a/04fx/spring01/src/main/java/io/kimmking/spring01/LombokDemo.java b/04fx/spring01/src/main/java/io/kimmking/spring01/LombokDemo.java index 470db3b7..815f51e0 100644 --- a/04fx/spring01/src/main/java/io/kimmking/spring01/LombokDemo.java +++ b/04fx/spring01/src/main/java/io/kimmking/spring01/LombokDemo.java @@ -16,7 +16,7 @@ public static void main(String[] args) throws IOException { student1.setName("KK01"); System.out.println(student1.toString()); - Student student2 = new Student(2, "KK02"); + Student student2 = new Student(2, "KK02", null, null); System.out.println(student2.toString()); } diff --git a/04fx/spring01/src/main/java/io/kimmking/spring01/Student.java b/04fx/spring01/src/main/java/io/kimmking/spring01/Student.java index db8e0061..b8fd5551 100644 --- a/04fx/spring01/src/main/java/io/kimmking/spring01/Student.java +++ b/04fx/spring01/src/main/java/io/kimmking/spring01/Student.java @@ -5,6 +5,10 @@ import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.BeanNameAware; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; import java.io.Serializable; @@ -13,17 +17,29 @@ @AllArgsConstructor @NoArgsConstructor @ToString +public class Student implements Serializable, BeanNameAware, ApplicationContextAware { + -public class Student implements Serializable { - private int id; private String name; + + private String beanName; + private ApplicationContext applicationContext; public void init(){ System.out.println("hello..........."); } - public Student create(){ - return new Student(101,"KK101"); +// public Student create(){ +// return new Student(101,"KK101"); +// } + + public void print() { + System.out.println(this.beanName); + System.out.println(" context.getBeanDefinitionNames() ===>> " + + String.join(",", applicationContext.getBeanDefinitionNames())); + } + + } diff --git a/04fx/spring01/src/main/java/io/kimmking/spring02/SpringDemo01.java b/04fx/spring01/src/main/java/io/kimmking/spring02/SpringDemo01.java index 8241be04..686fae0d 100644 --- a/04fx/spring01/src/main/java/io/kimmking/spring02/SpringDemo01.java +++ b/04fx/spring01/src/main/java/io/kimmking/spring02/SpringDemo01.java @@ -14,9 +14,13 @@ public static void main(String[] args) { Student student123 = (Student) context.getBean("student123"); System.out.println(student123.toString()); + + student123.print(); Student student100 = (Student) context.getBean("student100"); System.out.println(student100.toString()); + + student100.print(); Klass class1 = context.getBean(Klass.class); System.out.println(class1); diff --git a/04fx/spring01/src/main/java/io/kimmking/springjms/JmsSender.java b/04fx/spring01/src/main/java/io/kimmking/springjms/JmsSender.java index e9b65a01..2c0f27a2 100644 --- a/04fx/spring01/src/main/java/io/kimmking/springjms/JmsSender.java +++ b/04fx/spring01/src/main/java/io/kimmking/springjms/JmsSender.java @@ -8,7 +8,7 @@ public class JmsSender { public static void main( String[] args ) { - Student student2 = new Student(200, "KK0200"); + Student student2 = new Student(201, "KK0201", null, null); ApplicationContext context = new ClassPathXmlApplicationContext("classpath:springjms-sender.xml"); diff --git a/04fx/spring01/src/main/java/io/kimmking/springjms/SendService.java b/04fx/spring01/src/main/java/io/kimmking/springjms/SendService.java index 1c09e4c5..15bafce1 100644 --- a/04fx/spring01/src/main/java/io/kimmking/springjms/SendService.java +++ b/04fx/spring01/src/main/java/io/kimmking/springjms/SendService.java @@ -1,5 +1,6 @@ package io.kimmking.springjms; +import com.alibaba.fastjson.JSON; import io.kimmking.spring01.Student; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jms.core.JmsTemplate; @@ -19,7 +20,7 @@ public void send(final Student user) { jmsTemplate.send("test.queue", new MessageCreator() { public Message createMessage(Session session) throws JMSException { - return session.createObjectMessage(user); + return session.createObjectMessage(JSON.toJSONString(user)); } }); } From fa2aa23cbf7beab359c0411582a05796b058c86e Mon Sep 17 00:00:00 2001 From: kimmking Date: Wed, 3 Feb 2021 23:35:18 +0800 Subject: [PATCH 2/3] add BeanPostProcessor --- .../spring02/HelloBeanPostProcessor.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 04fx/spring01/src/main/java/io/kimmking/spring02/HelloBeanPostProcessor.java diff --git a/04fx/spring01/src/main/java/io/kimmking/spring02/HelloBeanPostProcessor.java b/04fx/spring01/src/main/java/io/kimmking/spring02/HelloBeanPostProcessor.java new file mode 100644 index 00000000..1e0f7a47 --- /dev/null +++ b/04fx/spring01/src/main/java/io/kimmking/spring02/HelloBeanPostProcessor.java @@ -0,0 +1,27 @@ +package io.kimmking.spring02; + +import io.kimmking.spring01.Student; +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.config.BeanPostProcessor; +import org.springframework.stereotype.Component; + +@Component +public class HelloBeanPostProcessor implements BeanPostProcessor { + @Override + public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException { + System.out.println(" ====> postProcessBeforeInitialization " + beanName +":"+ bean); + // 可以加点额外处理 + // 例如 + if (bean instanceof Student) { + Student student = (Student) bean; + student.setName(student.getName() + System.currentTimeMillis()); + } + return bean; + } + + @Override + public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException { + System.out.println(" ====> postProcessAfterInitialization " + beanName +":"+ bean); + return bean; + } +} From b26bd71991438ea4f28fc0f627c6d5df12ce33f8 Mon Sep 17 00:00:00 2001 From: kimmking Date: Wed, 10 Feb 2021 23:27:11 +0800 Subject: [PATCH 3/3] update --- .../src/main/java/io/kimmking/java8/A.java | 17 +++++++++++++---- .../java/io/kimmking/java8/GenericDemo.java | 5 +++-- .../main/java/io/kimmking/java8/GuavaDemo.java | 8 +++++--- .../main/java/io/kimmking/java8/LambdaDemo.java | 17 +++++++++++++---- .../main/java/io/kimmking/java8/LombokDemo.java | 10 ++++++++-- .../main/java/io/kimmking/java8/StreamDemo.java | 12 ++++-------- .../src/main/resources/application.yml | 2 +- 7 files changed, 47 insertions(+), 24 deletions(-) diff --git a/04fx/java8/src/main/java/io/kimmking/java8/A.java b/04fx/java8/src/main/java/io/kimmking/java8/A.java index 569631ef..01afdfd8 100644 --- a/04fx/java8/src/main/java/io/kimmking/java8/A.java +++ b/04fx/java8/src/main/java/io/kimmking/java8/A.java @@ -1,10 +1,19 @@ package io.kimmking.java8; -import lombok.Data; +import lombok.*; +import lombok.extern.slf4j.Slf4j; -@Data +@ToString +@NoArgsConstructor +@AllArgsConstructor +@Slf4j +@Builder +@Getter +@Setter public class A { - + private int age; - + + private String name; + } diff --git a/04fx/java8/src/main/java/io/kimmking/java8/GenericDemo.java b/04fx/java8/src/main/java/io/kimmking/java8/GenericDemo.java index d6851736..7de88d61 100644 --- a/04fx/java8/src/main/java/io/kimmking/java8/GenericDemo.java +++ b/04fx/java8/src/main/java/io/kimmking/java8/GenericDemo.java @@ -1,9 +1,10 @@ package io.kimmking.java8; +import java.io.Serializable; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; -public class GenericDemo { +public class GenericDemo implements Serializable { public static void main(String[] args) { Demo demo = new Demo(); Class clazz = demo.getClass(); @@ -20,7 +21,7 @@ public static void main(String[] args) { System.out.println(c); } - public static class Person { + public static class Person { } diff --git a/04fx/java8/src/main/java/io/kimmking/java8/GuavaDemo.java b/04fx/java8/src/main/java/io/kimmking/java8/GuavaDemo.java index a2540278..e505fec7 100644 --- a/04fx/java8/src/main/java/io/kimmking/java8/GuavaDemo.java +++ b/04fx/java8/src/main/java/io/kimmking/java8/GuavaDemo.java @@ -48,7 +48,7 @@ private static void testEventBus() { // Callback/Listener // Student student2 = new Student(2, "KK02"); - System.out.println("I want " + student2 + " run now."); + System.out.println(Thread.currentThread().getName()+" I want " + student2 + " run now."); bus.post(new AEvent(student2)); } @@ -81,6 +81,7 @@ private static List testList() { List list = Lists.newArrayList(4,2,3,5,1,2,2,7,6); List> list1 = Lists.partition(list,3); + print(list1); return list; } @@ -89,10 +90,11 @@ private static List testString() { // 字符串处理 // List lists = Lists.newArrayList("a","b","g","8","9"); + String result = Joiner.on(",").join(lists); System.out.println(result); - String test = "34344,34,34,哈哈"; + String test = "34344,,,34,34,哈哈"; lists = Splitter.on(",").splitToList(test); System.out.println(lists); return lists; @@ -111,7 +113,7 @@ public static class AEvent{ @Subscribe public void handle(AEvent ae){ - System.out.println(ae.student + " is running."); + System.out.println(Thread.currentThread().getName()+" "+ae.student + " is running."); } diff --git a/04fx/java8/src/main/java/io/kimmking/java8/LambdaDemo.java b/04fx/java8/src/main/java/io/kimmking/java8/LambdaDemo.java index f1dffef0..916819d6 100644 --- a/04fx/java8/src/main/java/io/kimmking/java8/LambdaDemo.java +++ b/04fx/java8/src/main/java/io/kimmking/java8/LambdaDemo.java @@ -17,12 +17,20 @@ public Integer operation(int a, int b) { }; MathOperation op1 = (a, b) -> 1; + + + MathOperation op2 = new MathOperation() { + @Override + public Integer operation(int a, int b) { + return a+b; + } + }; // 类型声明 MathOperation addition = (int a, int b) -> a + b; // 不用类型声明 - MathOperation subtraction = (a, b) -> a - b + 1.0; + MathOperation subtraction = (int a, int b) -> a - b + 1.0; // 大括号中的返回语句 MathOperation multiplication = (int a, int b) -> { @@ -47,9 +55,10 @@ public Integer operation(int a, int b) { System.out.println("Hello " + message); // 用括号 - GreetingService greetService2 = (message) -> - System.out.println("Hello " + message); - + GreetingService greetService2 = (message) -> { + System.out.println(message); + }; + GreetingService greetService3 = System.out::println; Arrays.asList(1,2,3).forEach( x -> System.out.println(x+3)); diff --git a/04fx/java8/src/main/java/io/kimmking/java8/LombokDemo.java b/04fx/java8/src/main/java/io/kimmking/java8/LombokDemo.java index 1fe98cc2..f3f98d59 100644 --- a/04fx/java8/src/main/java/io/kimmking/java8/LombokDemo.java +++ b/04fx/java8/src/main/java/io/kimmking/java8/LombokDemo.java @@ -1,14 +1,19 @@ package io.kimmking.java8; import lombok.extern.java.Log; +import org.slf4j.LoggerFactory; import java.io.IOException; @Log public class LombokDemo { - + public static void main(String[] args) throws IOException { - + + A a = new A(1, "KK"); + System.out.println(a.toString()); + A.builder().age(1).name("KKK").build(); + new LombokDemo().demo(); Student student1 = new Student(); @@ -17,6 +22,7 @@ public static void main(String[] args) throws IOException { System.out.println(student1.toString()); Student student2 = new Student(2, "KK02"); + //student2.init(); System.out.println(student2.toString()); } diff --git a/04fx/java8/src/main/java/io/kimmking/java8/StreamDemo.java b/04fx/java8/src/main/java/io/kimmking/java8/StreamDemo.java index 4ec48773..eb4267d8 100644 --- a/04fx/java8/src/main/java/io/kimmking/java8/StreamDemo.java +++ b/04fx/java8/src/main/java/io/kimmking/java8/StreamDemo.java @@ -3,11 +3,7 @@ import com.alibaba.fastjson.JSON; import java.io.IOException; -import java.util.Arrays; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.Optional; +import java.util.*; import java.util.stream.Collectors; public class StreamDemo { @@ -19,14 +15,14 @@ public static void main(String[] args) throws IOException { // Optional Optional first = list.stream().findFirst(); - + System.out.println(first.map(i -> i * 100).orElse(100)); int sum = list.stream().filter( i -> i<4).distinct().reduce(0,(a,b)->a+b); System.out.println("sum="+sum); - //Map map = list.stream().collect(Collectors.toMap(a->a,a->(a+1))); - Map map = list.parallelStream().collect(Collectors.toMap(a->a,a->(a+1),(a,b)->a, LinkedHashMap::new)); + //Map map1 = list.stream().collect(Collectors.toMap(a->a,a->(a+1))); + Map map = list.stream().parallel().collect(Collectors.toMap(a->a,a->(a+1),(a,b)->a, LinkedHashMap::new)); print(map); diff --git a/04fx/springboot01/src/main/resources/application.yml b/04fx/springboot01/src/main/resources/application.yml index fa5370a3..048ab343 100644 --- a/04fx/springboot01/src/main/resources/application.yml +++ b/04fx/springboot01/src/main/resources/application.yml @@ -18,7 +18,7 @@ spring: enabled: true max-connections: 10 #连接池最大连接数 idle-timeout: 30000 #空闲的连接过期时间,默认为30秒 - + data: