já sabe o que é a injeção de Dependência?o mínimo nunca ouviu falar de injeção de Dependência?o que é?
Se não todos, ou não, um dos significa que você está no direito de escrever 😀
Injeção de Dependência, ou comumente abreviado como NO mundo de renome programação depois de muitos emergentes framework que implementa este conceito. Um dos mais famosos é a Primavera.,na ordem pretendida de uma classe não ligada firmemente com a outra classe, de modo que a relação entre as partes do código seja frouxamente (acoplada vagamente).
linguagem interpretada fácil nos meios que nós fornecemos / injetamos uma classe em outra classe que é suas dependências (precisar dela).
é Possível se você usar as palavras que sampeyan no mumet sim 😀
eu também trabalhou, inicialmente, se você usar apenas palavras, porque não mudheng o que significa hehee
Se então, vamos usar o exemplo de codificação sadja..,>
Para executar operações de banco de dados a partir da classe acima, como a guardar o aluno, remover, editar e consulta de dados, vamos criar uma classe que lida com essas coisas.
criamos uma classe com o nome do MahasiswaDao
tente olhar para a classe acima.à primeira vista não há nada de errado, certo? 🙂
Se a nota realmente não foi nada de errado, que há menos elegante.nota por parte do construtor da classe acima.,
lá Classe, este olhar requer (dependente) da conexão para executar várias operações de banco de dados.
A Look at the part I highlights
how to get a Connection this is what we will discuss the
So, where, not elegant?
Bem,
Na aplicação real é claro, nós não só temos um estudante de mesa, não é?
ainda existem professores, cursos, valor, usuário, horário, departamento, e outros podem estar até muito dependendo das necessidades.
Well.., você pode imaginar se mais tarde haverá também uma classe com o nome do xxxDao outro e cada Dao classes que têm um construtor como acima.
Runyamnya aqui.se, por exemplo, a localização do servidor mudar, então temos que substituí-lo de 1 para 1 em cada classe dao???se existem centenas de classes, como???sem mencionar para testes de unidade usando objeto mock como???
já sabemos onde o menos elegante 😀
para superar isso, usamos a injeção de Dependência.,
Mari kita refatorar kelas MahasiswaDao sehingga construtor menjadi seperti ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
pacote dao;
importar com.versao.jdbc.jdbc2.opcional.,MysqlDataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import model.Mahasiswa;
public class MahasiswaDao {
Connection connection;
public MahasiswaDao(Connection connection) throws SQLException{
this.,conexão=connection;
}
|
Vamos Adicionar um parâmetro no construtor para que a Conexão possa ser entregue (em injectkan) para a classe MahasiswaDao que precisam.
nesta classe Dao não precisa cuidar da inicialização do DataSource e da conexão dele.
então quem faz a inicialização? pode alguém origem não é uma classe Dao em si.
For example sadja we initialize on TestMahasiswaDao for example.
Deixe uma resposta