코드베이스는 MDB2에서 상속받은 databse 클래스의 기능과 함께 사용할 수 있습니다. 이것은 사용중인 MVC 프레임 워크의 기초를 형성하고 (커스텀 빌드 작업), 모델은 차례대로 db로부터 상속받습니다.상속 대신 캡슐화 할 클래스 수정
여러분 중 일부는 눈치 채 셨겠지만, 이것은 다소 큰 문제로 이어집니다. 모델을 인스턴스화 할 때마다 새 데이터베이스 연결이 작성됩니다. 이것은 분명히 낭비입니다. 또한 트랜잭션이 의도 한대로 사용할 수 없다는 것을 의미합니다. 트랜잭션이 모델의 한 인스턴스에서 시작되면 커밋이 발생할 때까지 그 인스턴스의 효과는 다른 인스턴스에서 보이지 않기 때문입니다.
내 계획은 db 클래스를 상속받는 대신 MDB2를 캡슐화 한 다음 싱글 톤 기능을 통해 MDB2의 단일 인스턴스를 유지하도록하는 것입니다.
그러나 MDB2는 많은 방법을 사용하는 큰 라이브러리이며 코드 기반에서 더 높은 부분은 MDB2 방법에 액세스 할 수 있는지에 달려 있습니다.
상위 계층을 수정하지 않고 MDB2 클래스를 캡슐화하고 호출을 전달하는 방법이 있습니까? MDB2의 모든 메서드에 대해 래퍼 메서드를 작성하지 않아도됩니까?
예제 모델 클래스를 보여줄 수 있습니까? 그렇다면 이들이 결합 된 정도를 알 수 있습니까? – Gordon