Recommendation is essential to the issue of information overload. Many literatures have proposed great models for this problem, but the majority still focuses on explicit rating data. Due to the characteristics of music, we think that implicit user feedback is more valuable and useful. In this thesis, we process the problem of recommendation in a different aspect, out of the ordinary matrix factorization or k-nearest neighbor methods. We treat recommendation as a binary classification and ranking problem, and apply features covering three parts: global, cluster-based, and temporal features. Moreover, we merge recommendation into playlist because ranking by scores is not suitable for listening. When it comes to playlist generation, most previous approaches just consider whether the playlist is smooth. However, people often listen to music when engaging in another activity, so we believe a good playlist should also be time-dependent and personalized. To achieve this goal, we construct a temporal Bayesian network to mine the listening pattern at specific time for each user. Besides, putting obvious and non-obvious recommendations together in playlist can balance the familiarity and novelty, and let it more attractive to listeners.