In this paper, a downlink device-to-device (D2D)-assisted cellular networks with mobile edge caching, where most popular video files are independently cached in D2D users and cellular base station (BS), are studied. In the considered system model, each user may obtain the requested video from the cache of BS or/and D2D users surrounding them. According to the different collaborative schemes of BS caching and D2D caching, it can be divided into two different resource allocation schemes. In the hybrid caching transmission scheme, users could adopt the BS caching mode or alternatively the D2D caching mode. In the joint caching transmission scheme, each user may obtain the requested files from the BS server and the adjacent D2D users, simultaneously. By taking the required data rate and the interference constraint into account, we formulate two joint resource allocation problems integrating link selection, channel allocation, and power control to maximize the system energy efficiency (EE). Leveraging on the Dinkelbach method, the EE optimization problems are transformed into mixed-integer nonlinear programming problems and can be decomposed into three subproblems: link selection, channel allocation, and power control. To solve these complicated problems, we propose two optimization algorithms that consist of a modified branch and bound method as well as Lagrange dual decomposition approach. The simulation results demonstrate the superiority of these two proposed algorithms in improving system throughput and EE compared with other algorithms.