Junior — Middle
Чӣ гуна метавон намунаи Singleton-ро дар контейнери муосири вобастагиҳо амалӣ кард?
sobes.tech AI
Ҷавоб аз AI
Дар контейнери муосири вобастагии (масалан, Spring, CDI), намунаи Singleton тавассути конфигуратсияи контейнер амалӣ мешавад, ки ҳаёти объектро идора мекунад ва кафолат медиҳад, ки танҳо як нусха сохта мешавад.
Дар Spring, масалан, биноҳо ба таври пешфарз singleton мебошанд. Ҳамон ки як бино эълон кунед:
@Component
public class MySingletonService {
// мантиқ
}
Контейнер як нусхаи MySingletonService-ро эҷод мекунад ва онро дар ҳама ҷо, ки лозим аст, истифода мебарад.
Агар бино ба дастӣ сохта шавад, метавон ҳудуди singleton-ро муайян кард:
@Bean
@Scope("singleton")
public MySingletonService mySingletonService() {
return new MySingletonService();
}
Бинобар ин, қайд кардани singleton ба эълони компонент бо ҳудуди singleton маҳдуд мешавад, ва контейнери худ кафолат медиҳад, ки нусха ягона аст ва ҳаёти онро идора мекунад.