Home >Database >Mysql Tutorial >How to implement a simple music player function using MySQL and Java

How to implement a simple music player function using MySQL and Java

王林
王林Original
2023-09-20 14:55:551521browse

How to implement a simple music player function using MySQL and Java

How to use MySQL and Java to implement a simple music player function

Introduction:
With the continuous development of technology, music players have become people’s daily life An integral part of life. This article will introduce how to use MySQL and Java programming language to implement a simple music player function. The article will contain detailed code examples to help readers understand and practice.

1. Preparation work:
Before using MySQL and Java to implement the music player, we need to do some preparation work:

  1. Install the MySQL database: Download and install the MySQL database, And create a database named "music_player".
  2. Create table structure: Create two tables in the "music_player" database, namely "songs" and "playlists". The table structure is as follows:
  3. songs table: id(INT), title(VARCHAR), artist(VARCHAR), duration(INT)
  4. playlists table: id(INT), name(VARCHAR) , songs(VARCHAR)

2. Add music and create playlist:
We need to write some Java code to add music to the database and create our own playlist. The following is a sample code:

import java.sql.*;

public class MusicPlayer {
    private static final String DB_URL = "jdbc:mysql://localhost/music_player";
    private static final String DB_USERNAME = "your_username";
    private static final String DB_PASSWORD = "your_password";

    public static void main(String[] args) {
        try {
            // 连接数据库
            Connection conn = DriverManager.getConnection(DB_URL, DB_USERNAME, DB_PASSWORD);

            // 向songs表中插入数据
            insertSong(conn, "Song Title 1", "Artist 1", 180);
            insertSong(conn, "Song Title 2", "Artist 2", 200);

            // 创建一个播放列表,并向playlists表中插入数据
            createPlaylist(conn, "My Playlist");
            addSongToPlaylist(conn, "My Playlist", 1);
            addSongToPlaylist(conn, "My Playlist", 2);

            // 关闭数据库连接
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    // 向songs表中插入数据
    private static void insertSong(Connection conn, String title, String artist, int duration) {
        try {
            String sql = "INSERT INTO songs (title, artist, duration) VALUES (?, ?, ?)";
            PreparedStatement statement = conn.prepareStatement(sql);
            statement.setString(1, title);
            statement.setString(2, artist);
            statement.setInt(3, duration);
            statement.executeUpdate();
            System.out.println("Song inserted successfully!");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    // 创建一个播放列表,并向playlists表中插入数据
    private static void createPlaylist(Connection conn, String name) {
        try {
            String sql = "INSERT INTO playlists (name) VALUES (?)";
            PreparedStatement statement = conn.prepareStatement(sql);
            statement.setString(1, name);
            statement.executeUpdate();
            System.out.println("Playlist created successfully!");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    // 向播放列表中添加歌曲
    private static void addSongToPlaylist(Connection conn, String playlistName, int songId) {
        try {
            String sql = "SELECT songs FROM playlists WHERE name = ?";
            PreparedStatement statement = conn.prepareStatement(sql);
            statement.setString(1, playlistName);
            ResultSet resultSet = statement.executeQuery();
            resultSet.next();
            String songs = resultSet.getString("songs");
            if (songs == null || songs.isEmpty()) {
                songs = String.valueOf(songId);
            } else {
                songs += "," + songId;
            }
            sql = "UPDATE playlists SET songs = ? WHERE name = ?";
            statement = conn.prepareStatement(sql);
            statement.setString(1, songs);
            statement.setString(2, playlistName);
            statement.executeUpdate();
            System.out.println("Song added to playlist successfully!");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

The above code first connects to the database, and then inserts music information into the songs table through the insertSong method, createPlaylistMethod creates a playlist and inserts it into the playlists table, addSongToPlaylist method adds songs to the playlist. Finally close the database connection. If necessary, you can modify these methods to suit your needs.

3. Play music:
In order to play music, we can use Java's audio playback library, such as javax.sound.sampled. The following is a simple sample code:

import javax.sound.sampled.*;
import java.io.*;

public class MusicPlayer {

    public static void main(String[] args) {
        try {
            // 创建音频流
            AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("song.wav"));

            // 获取音频格式
            AudioFormat format = audioInputStream.getFormat();

            // 创建音频剪辑
            Clip clip = AudioSystem.getClip();
            clip.open(audioInputStream);

            // 播放音频剪辑
            clip.start();

            // 等待音频播放完毕
            Thread.sleep(clip.getMicrosecondLength() / 1000);

            // 关闭音频流
            audioInputStream.close();

        } catch (UnsupportedAudioFileException | IOException | LineUnavailableException | InterruptedException e) {
            e.printStackTrace();
        }
    }
}

The above code opens an audio file in wav format and plays it. You can replace the song.wav file name with the path to your music file.

Conclusion:
This article introduces how to use MySQL and Java programming language to implement a simple music player function. The article contains specific code examples to help readers understand and practice. Of course, this is just a basic demo, you can extend and improve this music player according to your needs. I hope this article can be helpful to you, thank you for reading!

The above is the detailed content of How to implement a simple music player function using MySQL and Java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn