音乐管理系统第二弹

音乐管理系统跟进版(多加了权限内容)

学习JAVA第十天

代码如下:

package com.nbufe.service;



import com.nbufe.dao.MusicDao;
import com.nbufe.dao.UserDao;

import javax.swing.*;
import java.awt.*;
import java.sql.SQLException;
import java.util.Scanner;

public class MusicService {
    public static void main(String[] args) throws SQLException {
       do
       {
           System.out.println("**********欢迎使用Chestnut音乐管理系统**********");
           System.out.println("************************************************");
           System.out.print("请输入用户名:");
           boolean login=false;
           Scanner input=new Scanner(System.in);
           String username=input.next();
           if(UserDao.login2(username)==false)
           {
               System.out.println("*****************您尚未注册*********************");
           }
          else
           {

               String password;

               System.out.println("************************************************");

               for(int i=3;i>0;i--)
               {
                   if(i<3)
                   {
                       System.out.println("******************密码错误**********************");
                       System.out.println("***************你还有"+i+"次机会哦!****************");
                   }
                   System.out.print("请输入密码:");
                   JPasswordField jPasswordField=new JPasswordField();
                   jPasswordField.setEchoChar('*');
                   password=input.next();
                   System.out.println("************************************************");
                   login= UserDao.login(username,password);
                   if(login)
                   {
                       break;
                   }
               }
           }
           if(login)
           {
               Manage();
           }
           else {
               logo();
           }
       } while(true);
    }
    public static void Manage() throws SQLException {
        System.out.println("-----------------------------------------------------");
        System.out.println("| ************************************************* |");
        System.out.println("| **********欢迎使用Chestnut音乐管理系统*********** |");
        System.out.println("| *****************1.音乐管理********************** |");
        System.out.println("| *****************2.用户管理********************** |");
        System.out.println("| *****************3.退出************************** |");
        System.out.println("| ***********************************Chestnut****** |");
        System.out.println("-----------------------------------------------------");
        Scanner input=new Scanner(System.in);
        int n=input.nextInt();
        switch (n)
        {
            case 1:MusicDao.MusicManage(); break;
            case 2:UserDao.UserManage();break;
            case 3:System.exit(0);
        }
    }
    public static void logo() throws SQLException {
        Scanner input=new Scanner(System.in);
        System.out.println("******************登陆失败**********************");
        System.out.println("******************请先注册**********************");
        System.out.print("请输入注册名:");
        String zcusername=input.next();
        System.out.println("************************************************");
        System.out.print("请输入密码:");
        String zcpassword1=input.next();
        String zcpassword2;
        System.out.println("************************************************");
        do {
            System.out.print("请再次输入密码:");
            zcpassword2=input.next();
            if(zcpassword1.equals(zcpassword2))
            {
                break;
            }
            System.out.println("************************************************");
        }while(true);
        if(UserDao.logo(zcusername,zcpassword1))
        {
            System.out.println("******************添加成功**********************");
            System.out.println("************************************************");
        }
        else
        {
            System.out.println("******************添加失败**********************");
            System.out.println("************************************************");
        }
           System.out.println("********登陆请按.y********退出请按.n************");
           String t=input.next();
           if(t.equals("n"))
            {
                 System.exit(0);
            }

    }
}


package com.nbufe.util;

import java.sql.*;
import java.util.Comparator;

public class DBUtil {
    public static Connection getconnection() {
        Connection connection=null;

        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        try {
            connection= DriverManager.getConnection
                    ("jdbc:mysql://127.0.0.1:3306/nbufe?useSSL=true&characterEncoding=utf-8&user=root&password=123");
            System.out.println("************************************************");


        } catch (SQLException e) {
            e.printStackTrace();
        }


        return connection;
    }
    public static void Close(ResultSet resultSet,Connection connection,PreparedStatement preparedStatement)
    {
       if(resultSet!=null)
       {
           try {
               resultSet.close();
           } catch (SQLException e) {
               e.printStackTrace();
           }
       }
       if(connection!=null) {
           try {
               connection.close();
           } catch (SQLException e) {
               e.printStackTrace();
           }
       }
       if(preparedStatement!=null)
       {
           try {
               preparedStatement.close();
           } catch (SQLException e) {
               e.printStackTrace();
           }
       }



    }
}

package com.nbufe.dao;

import com.nbufe.bean.Music;
import com.nbufe.bean.User;
import com.nbufe.service.MusicService;
import com.nbufe.util.DBUtil;

import javax.jws.soap.SOAPBinding;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class UserDao {
    public static void UserManage() throws SQLException {
        Scanner input=new Scanner(System.in);
        System.out.println("--------------------用户管理----------------------");
        System.out.println("--------------------------------------------------");
        System.out.println("|************************************************|");
        System.out.println("|******************1.查询用户********************|");
        System.out.println("|******************2.添加用户********************|");
        System.out.println("|******************3.修改用户********************|");
        System.out.println("|******************4.删除用户********************|");
        System.out.println("|******************5.返回上级********************|");
        System.out.println("|***********************************Chestnut*****|");
        System.out.println("--------------------------------------------------");
        int t=input.nextInt();
        switch (t) {
            case 1:
                UserDao.select();
            case 2:
                UserDao.add();
            case 3:
                UserDao.Update();
            case 4:
                UserDao.Delect();
            case 5:
                MusicService.Manage();
        }
    }
    public static void Delect() throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        int resultSet = 0;
        String sql = "delete from musicuser where username=?";
        preparedStatement = connection.prepareStatement(sql);
        Scanner input=new Scanner(System.in);
        System.out.println("请输入你要删除的用户名");
        String username=input.next();
        preparedStatement.setString(1, username);
        resultSet=preparedStatement.executeUpdate();
        if(resultSet!=0)
        {
            System.out.println("删除成功");
        }
        else
            System.out.println("删除失败");
        DBUtil.Close(null,connection,preparedStatement);
        for (int i=0;i<10;i++)
        {
            System.out.println();
        }
        UserDao.UserManage();
    }
    public static void select() throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;
        String sql = "select * from musicuser";
        preparedStatement = connection.prepareStatement(sql);
        resultSet=preparedStatement.executeQuery();
        List<User> users=new ArrayList<>();
        while(resultSet.next())
        {
            User user=new User();
            user.setId(resultSet.getInt(1));
            user.setUsername(resultSet.getString(2));
            user.setPassword(resultSet.getString(3));
            user.setType(resultSet.getInt(4));
            users.add(user);
        }
        for (int i=0;i<10;i++)
        {
            System.out.println();
        }
        System.out.println(users);
        DBUtil.Close(resultSet,connection,preparedStatement);
        UserDao.UserManage();
    }
    public static void Update() throws SQLException {

        Scanner input=new Scanner(System.in);
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        int resultSet = 0;
        System.out.println("************请选择你需要修改的选项**************");
        System.out.println("*****************1.修改权限*********************");
        System.out.println("*****************2.修改密码*********************");
        int t=input.nextInt();
        if(t==1)
        {
            String sql = "update musicuser set type=? where username=?";
            preparedStatement=connection.prepareStatement(sql);
            System.out.println("***************请登陆管理员权限*****************");
            System.out.println("**************请输入管理员用户名****************");
            String username=input.next();
            System.out.println("**************请输入管理员密码******************");
            String password=input.next();
            if(login3(username,password))
            {
                System.out.println("**********请输入你需要修改的用户名**************");
                  username=input.next();
                System.out.println("***请选择你需要修改的权限 1.管理员 0.普通用户***");
                int b=0;
                b=input.nextInt();
                while(b>1||b<0)
                {
                    System.out.println("***********您的输入有误,请重新输入*************");
                    b=input.nextInt();
                }
                preparedStatement.setInt(1, b);
                preparedStatement.setString(2, username);
                resultSet=preparedStatement.executeUpdate();
                if(resultSet!=0)
                {
                    System.out.println("******************修改成功**********************");
                }
                else
                    System.out.println("******************修改失败**********************");
            }
            else
            {
                System.out.println("*******权限不足,修改失败,自动返回上一层*******");
                UserDao.UserManage();
            }
        }
        else if(t==2)
        {
            String sql = "update musicuser set password=? where username=?";
            preparedStatement = connection.prepareStatement(sql);
           System.out.println("**************请输入需要修改的用户名************");
           String username=input.next();
           System.out.println("******************请输入原密码******************");
           String password1=input.next();
           if(UserDao.login(username,password1))
           {
            System.out.println("*****************请输入新密码*******************");
            String password = input.next();
            preparedStatement.setString(1, password);
            preparedStatement.setString(2, username);

            resultSet = preparedStatement.executeUpdate();
        }
        else
        {
            for (int i=0;i<10;i++)
            {

                System.out.println();
            }
            System.out.println("!!!!!!!!!!!密码错误,修改失败!!!!!!!!!!!!!!!!");
            UserDao.UserManage();
        }

        for (int i=0;i<10;i++)
        {

            System.out.println();
        }
            if(resultSet!=0)
            {
                System.out.println("******************修改成功**********************");
            }
            else
                System.out.println("******************修改失败**********************");
        }
        else
        {
            UserManage();

        }
        DBUtil.Close(null,connection,preparedStatement);

        UserDao.UserManage();
    }
    public static void add() throws SQLException {

        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        int resultSet = 0;
        String sql = "insert into musicuser(username,password,type ) value (?,?,?)";
        preparedStatement = connection.prepareStatement(sql);
        Scanner input=new Scanner(System.in);
        System.out.println("请输入你要添加用户名");
        String username=input.next();
        System.out.println("请输入你添加的密码");
        String password=input.next();
        preparedStatement.setString(1, username);
        preparedStatement.setString(2, password);
        preparedStatement.setInt(3,0);
        resultSet=preparedStatement.executeUpdate();
        for (int i=0;i<10;i++)
        {

            System.out.println();
        }
        if(resultSet!=0)
        {
            System.out.println("******************添加成功**********************");

        }
        else
            System.out.println("******************添加失败**********************");
        DBUtil.Close(null,connection,preparedStatement);

        UserDao.UserManage();
    }
    public static boolean logo(String username,String password) throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        int resultSet = 0;
        String sql = "insert into musicuser(username,password,tepy) value (?,?,0)";
        preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setString(1, username);
        preparedStatement.setString(2, password);
        resultSet=preparedStatement.executeUpdate();
        if(resultSet==1)
        {
            return true;
        }else
        {
            return false;

        }
    }
    public static boolean login(String username,String password) throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;



        String sql = "select * from musicuser where username=? and password=?";
        preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setString(1, username);
        preparedStatement.setString(2, password);
        resultSet = preparedStatement.executeQuery();
        if (resultSet.next())
        {
            return  true;
        }
        else
        {
            return false;
        }



    }
    public static boolean login2(String username) throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;



        String sql = "select * from musicuser where username=?";
        preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setString(1, username);
        resultSet = preparedStatement.executeQuery();
        if (resultSet.next())
        {
            return  true;
        }
        else
        {
            return false;
        }



    }
    public static boolean login3(String username,String password) throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;

       int type = 0;

        String sql = "select * from musicuser where username=? and password=?";
        preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setString(1, username);
        preparedStatement.setString(2, password);
        resultSet = preparedStatement.executeQuery();
         if (resultSet.next())
         {


                 type=resultSet.getInt(4);

         }
         if(type==1)
         {
             return true;

         }
         else
             return false;
    }
}

package com.nbufe.dao;

import com.nbufe.bean.Music;
import com.nbufe.service.MusicService;
import com.nbufe.util.DBUtil;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class MusicDao {
    public static void MusicManage() throws SQLException {
            Scanner input=new Scanner(System.in);
            System.out.println("--------------------音乐管理----------------------");
            System.out.println("--------------------------------------------------");
            System.out.println("|************************************************|");
            System.out.println("|******************1.查询音乐********************|");
            System.out.println("|******************2.添加音乐********************|");
            System.out.println("|******************3.修改音乐********************|");
            System.out.println("|******************4.删除音乐********************|");
            System.out.println("|******************5.返回上层********************|");
            System.out.println("|***********************************Chestnut*****|");
            System.out.println("--------------------------------------------------");
            int t=input.nextInt();
        switch (t)
        {
            case 1:MusicDao.Select();
            case 2:MusicDao.Add();
            case 3:MusicDao.Update();
            case 4:MusicDao.Delect();
            case 5:MusicService.Manage();
        }


    }
    public static void Add() throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        int resultSet = 0;
        String sql = "insert into music(musicname,musical) value (?,?)";
        preparedStatement = connection.prepareStatement(sql);
        Scanner input=new Scanner(System.in);
        System.out.println("请输入你要添加歌曲名");
        String musicname=input.next();
        System.out.println("请输入你添加歌的作者");
        String musical=input.next();
        preparedStatement.setString(1,musicname);
        preparedStatement.setString(2,musical);
        resultSet=preparedStatement.executeUpdate();
        for (int i=0;i<10;i++)
        {

            System.out.println();
        }
        if(resultSet!=0)
        {
            System.out.println("******************添加成功**********************");

        }
        else
            System.out.println("******************添加失败**********************");
        DBUtil.Close(null,connection,preparedStatement);

        MusicDao.MusicManage();

    }
    public static void Delect() throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        int resultSet = 0;
        String sql = "delete from music where musicname=?";
        preparedStatement = connection.prepareStatement(sql);
        Scanner input=new Scanner(System.in);
        System.out.println("请输入你要删除的歌曲名");
        String musicname=input.next();
        preparedStatement.setString(1,musicname);
        resultSet=preparedStatement.executeUpdate();
        for (int i=0;i<10;i++)
        {

            System.out.println();
        }
        if(resultSet!=0)
        {
            System.out.println("******************删除成功**********************");

        }
        else
            System.out.println("******************删除失败**********************");
        DBUtil.Close(null,connection,preparedStatement);

        MusicDao.MusicManage();



    }
    public static void Select() throws SQLException {
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;
        String sql = "select * from music";
        preparedStatement = connection.prepareStatement(sql);
        resultSet=preparedStatement.executeQuery();
        List<Music> musics=new ArrayList<>();
        while(resultSet.next())
        {
            Music music=new Music();
            music.setId(resultSet.getInt(1));
            music.setMusicname(resultSet.getString(2));
            music.setMusical(resultSet.getString(3));
            musics.add(music);

        }
        for (int i=0;i<10;i++)
        {

            System.out.println();
        }
        System.out.println(musics);
        DBUtil.Close(resultSet,connection,preparedStatement);

        MusicDao.MusicManage();

    }
    public static void Update() throws SQLException {
        Scanner input=new Scanner(System.in);
        Connection connection = DBUtil.getconnection();
        PreparedStatement preparedStatement = null;
        int resultSet = 0;
        System.out.println("*************请选择你需要修改的内容*************");
        System.out.println("********************1.歌名**********************");
        System.out.println("********************2.作者**********************");
        int x=input.nextInt();
        if(x==2)
        {
            String sql = "update music set musical=? where musicname=?";
            preparedStatement = connection.prepareStatement(sql);
            System.out.println("**************请输入需要修改的作者名************");
            String musical=input.next();
            System.out.println("***********请输入需要修改作者的原歌名***********");
            String musicname=input.next();
            preparedStatement.setString(2,musicname);
            preparedStatement.setString(1,musical);
            resultSet=preparedStatement.executeUpdate();

        }
        else if(x==1)
        {
            String sql = "update music set musicname=? where musical=?";
            preparedStatement = connection.prepareStatement(sql);
            System.out.println("**************请输入需要修改的歌名**************");
            String musicname=input.next();
            System.out.println("***********请输入需要修改歌的原作者名***********");
            String musical=input.next();
            preparedStatement.setString(1,musicname);
            preparedStatement.setString(2,musical);
            resultSet=preparedStatement.executeUpdate();

        }
        for (int i=0;i<10;i++)
        {

            System.out.println();
        }
        if(resultSet==1)
        {
            System.out.println("******************修改成功**********************");
        }
        else
            System.out.println("******************修改失败**********************");
        DBUtil.Close(null,connection,preparedStatement);

        MusicDao.MusicManage();

    }

}

package com.nbufe.bean;

public class User {
    private int id;
    private String username;
    private String password;
    private int type;

    public int getType() {
        return type;
    }

    public void setType(int type) {
        this.type = type;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", type=" + type +
                '}';
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

package com.nbufe.bean;

public class Music {
   private int id;
    private String musicname;
    private String musical;

    @Override
    public String toString() {
        return "Music{" +
                "id=" + id +
                ", musicname='" + musicname + '\'' +
                ", musical='" + musical + '\'' +
                '}';
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getMusicname() {
        return musicname;
    }

    public void setMusicname(String musicname) {
        this.musicname = musicname;
    }

    public String getMusical() {
        return musical;
    }

    public void setMusical(String musical) {
        this.musical = musical;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值