Problema de Conexão com o Oracle

Estou fazendo um exercicio onde faço a inclusao e uma listagem de contas que eu criei, porem na hora de executar, ele apresenta a seguinte mensagem:

Exception in thread “main” java.sql.SQLException: Erro de ES: The Network Adapter could not establish the connection

Poderiam me ajudar?
Segue as Classes que criei:

Classe Conta:

package jdbc;

public class Conta {

	int numero;
	String cliente;
	double saldo;
	
	
	public Conta(int numero, String cliente, double saldo){
		this.cliente = cliente;
		this.numero = numero;
		this.saldo = saldo;
	}
	
	public String toString(){
		return numero+ "," +cliente+ "," +saldo;
	}

}
</code>


Classe ContaCRUD:
<code>

package jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import javax.swing.plaf.synth.SynthSeparatorUI;

public class ContaCRUD {

	// criaremos um metodo que criara uma conta no banco.
	public void criar(Connection con, Conta conta) throws SQLException{
		String sql = "insert into conta values(?,?,?)";
		try (PreparedStatement stm = con.prepareStatement(sql)){
		
			stm.setInt(1, conta.numero);
			stm.setString(2, conta.cliente);
			stm.setDouble(3, conta.saldo);
			stm.executeUpdate();
	}
	}
	
	
	//criaremos um metodo que lista, seleciona todos os dados da conta
	public List<Conta> ler(Connection con) throws SQLException{
		List<Conta> lista = new ArrayList<>();
		String sql = "select numero,cliente,saldo from conta;";
		try(PreparedStatement stm = con.prepareStatement(sql);
			 ResultSet rs = stm.executeQuery()){
			while(rs.next()){
				lista.add(new Conta(rs.getInt(1), rs.getString(2),rs.getDouble(3)));
			}
		}
		return lista;
	}
	
	
	
	
	
	
	public static void main(String[] args) throws SQLException {
		
		//aqui criamos a conexao com o banco, se possivel faça o minimo de conexoes possivel
		
		String url = "jdbc:oracle:thin:@localhost:1521:xe";
		try(Connection con = DriverManager.getConnection(url, "usuario", "senha")){
			ContaCRUD crud = new ContaCRUD();
			
			Conta conta1 = new Conta(1,"Ricardo",100.000);
			Conta conta2 = new Conta(2,"Claudio",200.000);
			Conta conta3 = new Conta(3,"Veronica",300.000);
			
			crud.criar(con, conta1);
			crud.criar(con, conta2);
			crud.criar(con, conta3);
		
			List<Conta>contas = crud.ler(con);
			for (Conta conta : contas) {
				System.out.println(conta);
			}
		}

	}

}

provavelmente isso nao esta entendendo que tem um oracle rodando no localhost porta 1521

primeiro verifica se a porta esta correta. troca o localhost por 127.0.0.1 e ve se rola

não foi nao mano.
Fiz a troca mas o erro é o mesmo.