一、基础知识检验
- 写一个类
- 写一个main函数,打印一行hello world(基本语法学习之启动入口函数)
- 写一个静态方法1加到10的方法,并运行(基本语法学习之流程控制循环)
- 另外写个类,写一个1加10的方法,计算偶数相加的方法,在main函数里调用这个类的方法。(基本语法学习-类及类实例和调用实例中的函数,基本语法之流程控制选择)
- 将1-10保存到map中,并循环打印出来(数据结构-map的操作)
- 将1-10保存到list中,并循环打印出来(数据结构-list的操作)
- 10除3保留二位小数并打印出来(double和float小数的操作及数据类型转换)
- 将计算的结果保存到文件中(基本操作-文件的操作)
- 写一个调用百度的函数并获取百度网页内容(基本操作-网络的操作)
- java web应用的核心技术servlet和filter。(webflux)
- lambda、函数式接口及stream的学习
二、springboot学习
- 什么是springboot?web应用的脚手架
- idea中创建springboot项目(项目实战)
- srpingmvc,定义一个url,返回json数据(基本概念,REST概念)
- service的调用(spring的注入IOC学习)
- 对数据库增删改查功能(mybatis的使用)
- maven中的pom文件作用,常用的库和框架学习(理论学习)
- mybatis的实现原理(理论学习)
三、springcloud微服务学习
- nacos的功能及作用,为什么需要它(配置中心,注册中心概念的理解)
- feign的使用,调用时的负载均衡的策略(分客户端与服务端均衡)
- gateway的作用及为什么要使用gateway
四、源码解读
- XX源码解读
- 定时任务,及使用线程池
- 文件下载
- excel、pdf导出导入
- web中使用异步任务
- web中使用多线程处理
一、基础知识检验
1. 基础语法
-
类的编写 :创建一个简单的 Java 类,类名为
plaintext
复制
SimpleClass
,包含类的基本结构,如成员变量和构造方法。
java
复制
public class SimpleClass { private String message; public SimpleClass(String message) { this.message = message; } public String getMessage() { return message; } }
-
启动入口函数 :编写
plaintext
复制
main
函数,在控制台打印plaintext
复制
hello world
。
java
复制
public class Main { public static void main(String[] args) { System.out.println("hello world"); } }
-
静态方法实现 1 加到 10 :编写一个静态方法,使用循环计算 1 到 10 的累加和,并在
plaintext
复制
main
函数中调用。
java
复制
public class SumCalculator { public static int sumFrom1To10() { int sum = 0; for (int i = 1; i <= 10; i++) { sum += i; } return sum; } public static void main(String[] args) { int result = sumFrom1To10(); System.out.println("1 到 10 的累加和是: " + result); } }
-
类实例及方法调用 :创建一个新类
plaintext
复制
EvenSumCalculator
,包含计算 1 到 10 累加和以及 1 到 10 偶数累加和的方法,并在plaintext
复制
main
函数中调用。
java
复制
public class EvenSumCalculator { public int sumFrom1To10() { int sum = 0; for (int i = 1; i <= 10; i++) { sum += i; } return sum; } public int sumEvenFrom1To10() { int sum = 0; for (int i = 1; i <= 10; i++) { if (i % 2 == 0) { sum += i; } } return sum; } } public class Main { public static void main(String[] args) { EvenSumCalculator calculator = new EvenSumCalculator(); int sum1To10 = calculator.sumFrom1To10(); int sumEven = calculator.sumEvenFrom1To10(); System.out.println("1 到 10 的累加和: " + sum1To10); System.out.println("1 到 10 偶数的累加和: " + sumEven); } }
2. 数据结构操作
-
Map 操作 :将 1 到 10 保存到
plaintext
复制
Map
中,键和值都为数字本身,并循环打印出来。
java
复制
import java.util.HashMap; import java.util.Map; public class MapExample { public static void main(String[] args) { Map<Integer, Integer> map = new HashMap<>(); for (int i = 1; i <= 10; i++) { map.put(i, i); } for (Map.Entry<Integer, Integer> entry : map.entrySet()) { System.out.println(entry.getKey() + " : " + entry.getValue()); } } }
-
List 操作 :将 1 到 10 保存到
plaintext
复制
List
中,并循环打印出来。
java
复制
import java.util.ArrayList; import java.util.List; public class ListExample { public static void main(String[] args) { List<Integer> list = new ArrayList<>(); for (int i = 1; i <= 10; i++) { list.add(i); } for (int num : list) { System.out.println(num); } } }
3. 数据类型操作
- 小数计算与保留:计算 10 除以 3 的结果,并保留两位小数后打印出来。
java
复制
public class DecimalCalculation { public static void main(String[] args) { double result = (double) 10 / 3; System.out.printf("10 除以 3 保留两位小数: %.2f\n", result); } }
4. 文件操作
-
将计算结果保存到文件 :将前面计算的 1 到 10 的累加和保存到文件
plaintext
复制
result.txt
中。
java
复制
import java.io.FileWriter; import java.io.IOException; public class FileOperation { public static void main(String[] args) { int sum = SumCalculator.sumFrom1To10(); try (FileWriter writer = new FileWriter("result.txt")) { writer.write("1 到 10 的累加和是: " + sum); } catch (IOException e) { e.printStackTrace(); } } }
5. 网络操作
-
调用百度并获取网页内容 :编写一个函数,使用
plaintext
复制
HttpURLConnection
调用百度的网页,并获取其内容。
java
复制
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class NetworkOperation { public static String getBaiduContent() throws IOException { URL url = new URL("https://www.baidu.com"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); StringBuilder content = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { content.append(line); } reader.close(); connection.disconnect(); return content.toString(); } public static void main(String[] args) { try { String content = getBaiduContent(); System.out.println(content); } catch (IOException e) { e.printStackTrace(); } } }
6. Java Web 核心技术
-
Servlet 和 Filter :学习 Servlet 和 Filter 的基本概念和使用方法,了解它们在 Java Web 应用中的作用,以及如何使用
plaintext
复制
WebFlux
进行响应式编程。 -
Lambda、函数式接口及 Stream:学习 Lambda 表达式、函数式接口和 Stream API 的使用,掌握如何使用它们进行高效的集合操作和数据处理。
二、Spring Boot 学习
1. 基本概念
- Spring Boot 简介:了解什么是 Spring Boot,它是如何作为 Web 应用的脚手架,简化 Spring 应用的开发过程。
2. 项目实战
- 在 IDEA 中创建 Spring Boot 项目:详细学习如何在 IntelliJ IDEA 中创建一个 Spring Boot 项目,包括项目的配置和依赖管理。
3. Spring MVC
- 定义 URL 返回 JSON 数据:学习 Spring MVC 的基本概念和 REST 概念,定义一个 URL 接口,返回 JSON 格式的数据。
java
复制
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; import java.util.Map; @RestController public class HelloController { @GetMapping("/hello") public Map<String, String> hello() { Map<String, String> response = new HashMap<>(); response.put("message", "Hello, World!"); return response; } }
4. Spring 注入 IOC
- Service 的调用:学习 Spring 的依赖注入(IOC)原理,创建一个 Service 类,并在 Controller 中调用该 Service 类的方法。
5. 数据库操作
- MyBatis 的使用:学习如何使用 MyBatis 进行数据库的增删改查操作,包括配置 MyBatis、编写 SQL 映射文件和实体类。
6. Maven 学习
- POM 文件作用及常用库学习:了解 Maven 中 POM 文件的作用,学习常用的库和框架,如 Spring Boot Starter 系列。
7. 理论学习
- MyBatis 实现原理:深入学习 MyBatis 的实现原理,包括 SQL 解析、映射处理和缓存机制。
三、Spring Cloud 微服务学习
1. Nacos
- Nacos 的功能及作用:学习 Nacos 的功能,如作为配置中心和注册中心,理解为什么在微服务架构中需要 Nacos。
2. Feign
- Feign 的使用及负载均衡策略:学习 Feign 的使用方法,了解客户端和服务端的负载均衡策略。
3. Gateway
- Gateway 的作用及使用场景:学习 Gateway 的作用,如路由转发、请求过滤等,理解为什么要使用 Gateway。
四、源码解读
1. 定时任务与线程池
-
定时任务实现 :学习如何使用 Java 的
plaintext
复制
ScheduledExecutorService
实现定时任务,以及如何使用线程池提高任务执行效率。
2. 文件下载
- 文件下载功能实现:学习如何在 Web 应用中实现文件下载功能,包括处理文件流和响应头。
3. Excel、PDF 导出导入
- Excel 和 PDF 处理:学习如何使用 Apache POI 进行 Excel 文件的导出和导入,以及使用 iText 进行 PDF 文件的导出和导入。
4. 异步任务
-
Web 中使用异步任务 :学习如何在 Web 应用中使用 Spring 的
plaintext
复制
@Async
注解实现异步任务,提高应用的响应性能。
5. 多线程处理
- Web 中使用多线程处理:学习如何在 Web 应用中使用多线程处理并发请求,提高应用的并发处理能力。