昨天老师教了我们如何使用权限这个个东西。如果说不是管理员那么就不能执行修改操作。
music全部代码如下:
package bean;
public class Music {
private int id;
private String musicname;
private String author;
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 getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
@Override
public String toString() {
return "Music{" +
"id=" + id +
", musicname='" + musicname + '\'' +
", author='" + author + '\'' +
'}';
}
}
package bean;
public class User {
private int id;
private String username;
private String password;
private int 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;
}
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 +
'}';
}
}
package dao;
import Utill.DBUtill;
import bean.Music;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class MusicDao {
public static List<Music> findAll() throws Exception {
List<Music> musics=new ArrayList<>();
Connection connection = DBUtill.getconnection();
PreparedStatement statement=connection.prepareStatement("select * from music");
ResultSet resultSet = statement.executeQuery();
while (resultSet.next()){
int id=resultSet.getInt(1);
String musicnama=resultSet.getString(2);
String author=resultSet.getString(3);
Music music=new Music();
music.setId(id);
music.setMusicname(musicnama);
music.setAuthor(author);
musics.add(music);
}
return musics;
}
public void Delete(int id) {
PreparedStatement statement=null;
Connection connection=null;
try {
connection=DBUtill.getconnection();
statement=connection.prepareStatement("delete from music where id=?");
statement.setInt(1,id);
int i=0;
i=statement.executeUpdate();
if (i!=0){
System.out.println("删除成功");
}else {
System.out.println("失败了");
}
} catch (Exception e) {
e.printStackTrace();
}
}
public void add(String musicname, String author) throws Exception {
Connection connection=DBUtill.getconnection();
PreparedStatement statement=connection.prepareStatement("insert into music (musicname,author)value (?,?)");
statement.setString(1,musicname);
statement.setString(2,author);
statement.executeUpdate();
}
public void update(int id1,String name,String au1) throws Exception {
Connection connection=DBUtill.getconnection();
PreparedStatement statement=null;
String sql="update music set musicname=?,author=? where id=?";
statement=connection.prepareStatement(sql);
statement.setString(1,name);
statement.setString(2,au1);
statement.setInt(3,id1);
int i=0;
i=statement.executeUpdate();
if (i==1){
System.out.println("修改成功");
}else {
System.out.println("失败了");
}
}
}
package dao;
import Utill.DBUtill;
import bean.User;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
public class UserDao {
public User login(String username, String password) throws Exception {
Connection connection = DBUtill.getconnection();
String sql = "select * from tb_user where username=? and password=?";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setString(1, username);
statement.setString(2, password);
ResultSet resultSet = statement.executeQuery();
User user1 = new User();
if (resultSet.next()) {
user1.setId(resultSet.getInt(1));
user1.setUsername(username);
user1.setPassword(password);
user1.setType(resultSet.getInt(4));
} else {
return user1;
}
return user1;
}
public static boolean zhuce(String username, String password,int type) throws Exception {
Connection connection = DBUtill.getconnection();
String sql = "insert into tb_user(username,password,type ) value (?,?,?)";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setString(1, username);
statement.setString(2, password);
statement.setInt(3,type);
int i = statement.executeUpdate();
if (i != 0) {
return true;
} else {
return false;
}
}
public static List<User> findAll() throws Exception {
List<User> users=new ArrayList<>();
Connection connection = DBUtill.getconnection();
PreparedStatement statement=connection.prepareStatement("select * from tb_user");
ResultSet resultSet = statement.executeQuery();
while (resultSet.next()){
int id=resultSet.getInt(1);
String username=resultSet.getString(2);
String password=resultSet.getString(3);
int type=resultSet.getInt(4);
User user=new User();
user.setId(id);
user.setUsername(username);
user.setPassword(password);
users.add(user);
}
return users;
}
public void update(int id2,String mm1) throws Exception {
Connection connection=DBUtill.getconnection();
PreparedStatement statement=null;
String sql="update tb_user set password=? where id=?";
statement=connection.prepareStatement(sql);
statement.setString(1,mm1);
statement.setInt(2,id2);
int i=0;
i=statement.executeUpdate();
if (i==1){
System.out.println("修改成功");
}else {
System.out.println("失败了");
}
}
}
package service;
import bean.Music;
import bean.User;
import dao.MusicDao;
import dao.UserDao;
import java.sql.SQLException;
import java.util.List;
import java.util.Scanner;
public class MusicService {
public static void main(String[] args) throws Exception {
UserDao userDao = new UserDao();
MusicService musicService=new MusicService();
boolean flag=true;
while (flag) {
System.out.println("请输入用户名:");
Scanner input = new Scanner(System.in);
String username = input.next();
System.out.println("请输入密码:");
String password = input.next();
System.out.println(username + password);
User user = userDao.login(username, password);
if (user!=null) {
musicService.getmune(user);
} else {
musicService.zhuce();
}
}
}
public void getmune(User user1) throws Exception {
MusicDao musicDao=new MusicDao();
Scanner input=new Scanner(System.in);
UserDao userDao=new UserDao();
System.out.println("登入成功");
System.out.println("欢迎来到音乐管理系统");
System.out.println("\t1.音乐管理\t2.用户管理\t3.退出系统");
int j=input.nextInt();
if (j==1){
System.out.println("欢迎进入音乐管理系统");
System.out.println("\t1.查询\t2.添加\t3.修改\t4.删除\t5.返回上一层");
int a=input.nextInt();
switch (a){
case 1:
List<Music> musics= musicDao.findAll();
System.out.println(musics);
break;
case 2:
if (user1.getType()!=0){
System.out.println("您没有权限修改");
System.out.println("返回上一级");
getmune(user1);
}
System.out.println("输入要要添加的音乐名称:");
String n=input.next();
System.out.println("输入作者:");
String au=input.next();
musicDao.add(n,au);
break;
case 3:
System.out.println("输入要要修改的id:");
int id1=input.nextInt();
System.out.println("输入修改后的音乐名称:");
String name=input.next();
System.out.println("输入修改后作者:");
String au1=input.next();
musicDao.update(id1,name,au1);
break;
case 4:
System.out.println("输入要删除的id");
int id=input.nextInt();
musicDao.Delete(id);
case 5:
getmune(user1);
break;
}
}else if (j==2){
System.out.println("欢迎进入用户管理系统");
System.out.println("\t1.查询\t2.添加\t3.修改\t4.删除\t5.返回上一层");
int b=input.nextInt();
switch (b){
case 1:
List<Music> musics= musicDao.findAll();
System.out.println(musics);
System.out.println("您是要返回上一级还是退出(返回上一级:1;退出:0)");
int x=input.nextInt();
if (x==1){
getmune(user1);
}else if (x==0){
System.exit(-1);
}else {
System.out.println("您输入的数字有问题。");
}
case 2:
System.out.println("输入注册用户名:");
String yhm=input.next();
System.out.println("输入注册密码:");
String mm=input.next();
System.out.println("是否为管理员是输入0,不是输入1:");
int gly = input.nextInt();
User user=new User();
userDao.zhuce(user.getUsername(),user.getPassword(),user.getType());
break;
case 3:
System.out.println("输入要要修改的id:");
int id2=input.nextInt();
System.out.println("输入修改后的密码:");
String mm1=input.next();
userDao.update(id2,mm1);
break;
case 4:
}
}
}
public void zhuce() throws Exception {
UserDao userDao=new UserDao();
Scanner input=new Scanner(System.in);
System.out.println("登入失败");
System.out.println("请先注册");
System.out.println("请输入注册名");
String zcm = input.next();
System.out.println("请输入密码");
String zcmm1 = input.next();
System.out.println("是否为管理员是输入0,不是输入1:");
int gly = input.nextInt();
System.out.println("请确认密码");
String zcmm2 = input.next();
if (zcmm1.equals(zcmm2)&& (gly==0||gly==1)) {
UserDao.zhuce(zcm, zcmm1,gly);
System.out.println("登入还是退出N/Y");
String i=input.next();
if (i.equals("N")){
System.exit(0);
}else if (!i.equals("Y")){
System.out.println("输入错误");
System.exit(0);
}else {
User user2=new User();
user2.setUsername(zcm);
user2.setPassword(zcmm2);
user2.setType(gly);
getmune(user2);
}
} else {
System.out.println("密码有误请重新注册!");
}
}
}
package Utill;
import java.sql.*;
public class DBUtill {
public static Connection getconnection() throws Exception{
Connection connection = null;
try {
//1.加载驱动
Class.forName("com.mysql.jdbc.Driver");
//2.创建连接
connection = DriverManager.getConnection
("jdbc:mysql://127.0.0.1:3306/ningcai?useSSL=true&characterEncoding=utf-8&user=root&password=123456");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
public static void colseAll( ResultSet resultSet,PreparedStatement preparedStatement, Connection connection){
if (resultSet!=null){
try {
resultSet.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (preparedStatement!=null){
try {
preparedStatement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (connection!=null){
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}