Microwave photonic approaches for the generation of microwave signals have attracted substantial attention in recent years, thanks to the significant advantages brought by photonics technology, such as high frequency, large bandwidth, and immunity to electromagnetic interference. An optoelectronic oscillator (OEO) is a paradigmatic microwave photonic oscillator that produces microwave signals with ultra-low phase noise, thanks to the high-quality-factor of the OEO cavity that is achieved with the help of optical energy storage elements, such as low-loss optical fiber or a high-quality-factor optical resonator. Different OEO architectures have been proposed to generate spectrally pure single-frequency microwave signals with ultra-low phase noise. Multiple oscillation mode control methods have been proposed in recent years to obtain different kinds of microwave signals. With the rapid development of photonic integration technologies, prototypes of integrated OEOs have been demonstrated with compact size and low power consumption. Moreover, OEOs have also been used for sensing, computing, and signal processing. This Tutorial aims to provide a comprehensive introduction to the developments of OEOs. We first discuss the basic principle and the key phase noise property of OEOs and then focus on its developments in spectrally pure low phase noise signal generation and mode control methods, its chip-scale integration, and its applications in various fields.