java零基础教学笔记

一、基础知识检验

  1. 写一个类
  2. 写一个main函数,打印一行hello world(基本语法学习之启动入口函数)
  3. 写一个静态方法1加到10的方法,并运行(基本语法学习之流程控制循环)
  4. 另外写个类,写一个1加10的方法,计算偶数相加的方法,在main函数里调用这个类的方法。(基本语法学习-类及类实例和调用实例中的函数,基本语法之流程控制选择)
  5. 将1-10保存到map中,并循环打印出来(数据结构-map的操作)
  6. 将1-10保存到list中,并循环打印出来(数据结构-list的操作)
  7. 10除3保留二位小数并打印出来(double和float小数的操作及数据类型转换)
  8. 将计算的结果保存到文件中(基本操作-文件的操作)
  9. 写一个调用百度的函数并获取百度网页内容(基本操作-网络的操作)
  10. java web应用的核心技术servlet和filter。(webflux)
  11. lambda、函数式接口及stream的学习

二、springboot学习

  1. 什么是springboot?web应用的脚手架
  2. idea中创建springboot项目(项目实战)
  3. srpingmvc,定义一个url,返回json数据(基本概念,REST概念)
  4. service的调用(spring的注入IOC学习)
  5. 对数据库增删改查功能(mybatis的使用)
  6. maven中的pom文件作用,常用的库和框架学习(理论学习)
  7. mybatis的实现原理(理论学习)

三、springcloud微服务学习

  1. nacos的功能及作用,为什么需要它(配置中心,注册中心概念的理解)
  2. feign的使用,调用时的负载均衡的策略(分客户端与服务端均衡)
  3. gateway的作用及为什么要使用gateway

四、源码解读

  1. XX源码解读
    1. 定时任务,及使用线程池
    2. 文件下载
    3. excel、pdf导出导入
    4. web中使用异步任务
    5. 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 应用中使用多线程处理并发请求,提高应用的并发处理能力。
相关推荐
m0_689618281 小时前
从海洋生物找灵感:造个机器人RoboPteropod,它能在水下干啥?
笔记·机器人
龙湾开发2 小时前
轻量级高性能推理引擎MNN 学习笔记 02.MNN主要API
人工智能·笔记·学习·机器学习·mnn
HappyAcmen3 小时前
线代第二章矩阵第八节逆矩阵、解矩阵方程
笔记·学习·线性代数·矩阵
愚润求学4 小时前
【递归、搜索与回溯】专题一:递归(二)
c++·笔记·算法·leetcode
愚润求学5 小时前
【Linux】基础 IO(一)
linux·运维·服务器·开发语言·c++·笔记
Wallace Zhang5 小时前
STM32F103_LL库+寄存器学习笔记22 - 基础定时器TIM实现1ms周期回调
笔记·stm32·学习
大白的编程日记.5 小时前
【Linux学习笔记】理解一切皆文件实现原理和文件缓冲区
linux·笔记·学习
孞㐑¥5 小时前
Linux之进程控制
linux·开发语言·c++·经验分享·笔记
Alessio Micheli6 小时前
奇怪的公式
笔记·线性代数
愚润求学6 小时前
【Linux】简单设计libc库
linux·运维·开发语言·c++·笔记