Alguém me ajuda a refatorar esse código para que eu possa utilizar com o bando de dados MySql?

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

	Scanner scanner = new Scanner(System.in);
	Estoque estoque = new Estoque();
	while (true) {
	    System.out.print("Digite a opção de acordo com o que deseja fazer!\n"
	        + "1 --> Cadastrar fruta\n"
	        + "2 --> Consultar frutas cadastradas\n"
	        + "3 --> Encerrar\n");
	    int opcao = lerNumero(scanner); 
	    if (opcao == 3) {
	        System.out.println("Encerrando...\n");
	        break; 
	    } else if (opcao == 1) {
	        System.out.println("Informe o nome da fruta:");
	        String nomeFruta = scanner.nextLine().toUpperCase();
	        System.out.println("Informe a quantidade de frutas deste tipo:");
	        int qtdFruta = lerNumero(scanner); 
	        estoque.adicionar(new Fruta(nomeFruta), qtdFruta);
	        System.out.println("\n");
	    } else if (opcao == 2) {
	        estoque.listar();
	    } else {
	        System.out.println("Opção Inválida!\n");
	    }
	}
} 
		    static int lerNumero(Scanner scanner) {
		        while (true) {
		            try {
		                return Integer.parseInt(scanner.nextLine());
		            } catch (NumberFormatException e) {
		                System.out.println("Você não digitou um número");
		            }
		        }
		    }
		
		        }

import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;

public class Estoque {
private Map<Fruta, Integer> frutas = new HashMap<>();

public void adicionar(Fruta fruta, int quantidade) {
    // obtém a quantidade atual da fruta, ou zero se ainda não estiver no estoque
    int qtdAtual = this.frutas.getOrDefault(fruta, 0);
    // atualiza a quantidade
    this.frutas.put(fruta, quantidade + qtdAtual);
}

public void listar() { // mostrar as frutas e respectivas quantidades
    System.out.println("Frutas:");
    for (Entry<Fruta, Integer> entry : this.frutas.entrySet()) {
        System.out.printf(" - %s  |  %d\n", entry.getKey().getNome(), entry.getValue());
    }
}

}
import java.util.ArrayList;
import java.util.Objects;

public class Fruta {
private String nome;
public Fruta(String nome) {
this.nome = nome;
}
public String getNome() {
return nome;
}

@Override
public int hashCode() {
    return Objects.hash(this.nome);
}
@Override
public boolean equals(Object obj) {
    if (this == obj)
        return true;
    if (!(obj instanceof Fruta))
        return false;
    Fruta other = (Fruta) obj;
    return this.nome.equals(other.nome);
}

}

Não espere que vá ter consultoria gratuita. Tente fazer e seja mais pontual na dúvida. Se nao sabe sobre o assunto, antes de qualquer coisa faz algum curso ou siga um tutorial. Exemplo:

Se pesquisar no Google/Youtube tem muito mais. Escolha o que agradar mais.

1 curtida