主页面
package com.jdbc01.menu;
import java.util.Scanner;
public class MainMenu {
public static void main(String[] args) {
System.out.println("欢迎使用用户系统");
System.out.println("==================");
System.out.println("用户登录-----------------1");
System.out.println("用户注册-----------------2");
System.out.println("程序退出-----------------3");
Scanner sc = new Scanner(System.in);
int choice = sc.nextInt();
switch (choice) {
case 1:
LogMenu lm=new LogMenu();
lm.showMenu();
break;
case 2:
RegMenu rm = new RegMenu();
rm.showMenu();
break;
case 3:
System.exit(0);
break;
default:
System.out.println("请输入正确操作!");
}
}
}
注册界面
package com.jdbc01.menu;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class RegMenu {
public void showMenu() {
System.out.println("用户注册界面");
System.out.println("=============");
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的用户名");
String name = sc.nextLine();
System.out.println("请输入你的密码");
String pwd = sc.nextLine();
System.out.println("请输入你的邮箱");
String email = sc.nextLine();
IUserDao uDao = new UserDaoImpl();
User user = new User();
user.setName(name);
user.setPwd(pwd);
user.setEmail(email);
int a=uDao.addUser(user);
if(a>0){
System.out.println("用户注册成功");
}
MainMenu mm=new MainMenu();
mm.main(null);
}
}
登入界面
package com.jdbc01.menu;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class LogMenu {
public void showMenu() {
System.out.println("用户登入界面");
System.out.println("==================");
Scanner sc=new Scanner(System.in);
System.out.println("请输入你的用户名");
String name=sc.nextLine();
System.out.println("请输入你的用户密码");
String pwd=sc.nextLine();
IUserDao uDao=new UserDaoImpl();
User user=new User();
User user1=new User();
user.setName(name);
user.setPwd(pwd);
user1=uDao.identifyUser(user);
if(user1.getPower()==1){
MWindowMenu mw=new MWindowMenu();
mw.showMenu(user1);
}else{
WindowMenu wm=new WindowMenu();
wm.showMenu(user1);
}
}
}
管理员页面
package com.jdbc01.menu;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class MWindowMenu {
public void showMenu(User user) {
System.out.println("欢迎登入主窗体");
System.out.println(user.getName()+"你好: 你的权限是:管理员");
System.out.println("=======================");
System.out.println("添加用户----------------------1");
System.out.println("删除用户----------------------2");
System.out.println("修改用户----------------------3");
System.out.println("查询用户----------------------4");
System.out.println("程序退出----------------------5");
Scanner sc=new Scanner(System.in);
int choice=sc.nextInt();
switch(choice){
case 1:
AddMenu am=new AddMenu();
am.addUser(user);
break;
case 2:
DeleteMenu dm=new DeleteMenu();
dm.showMenu(user);
break;
case 3:
UpdateMenu gm=new UpdateMenu();
gm.showMenu(user);
break;
case 4:
SelectMenu cm=new SelectMenu();
cm.showMenu(user);
break;
case 5:
MainMenu mm=new MainMenu();
mm.main(null);
break;
default:
System.out.println("无效操作");
}
}
}
普通用户页面
package com.jdbc01.menu;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class WindowMenu {
public void showMenu(User user) {
System.out.println("欢迎登入主窗体");
System.out.println(user.getName()+"你好: 你的权限是:普通用户");
System.out.println("=======================");
System.out.println("修改自己的信息----------------------1");
System.out.println("查询自己的信息----------------------2");
System.out.println("程序退出---------------------------------3");
Scanner sc=new Scanner(System.in);
int choice=sc.nextInt();
IUserDao uDao = new UserDaoImpl();
switch(choice){
case 1:
UpdateMenu gm=new UpdateMenu();
gm.showMenu(user);
break;
case 2:
SelectMenu sm=new SelectMenu();
sm.showMenu(user);
break;
case 3:
MainMenu mm=new MainMenu();
mm.main(null);
break;
default:
System.out.println("无效操作");
}
}
}
添加用户界面
package com.jdbc01.menu;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class AddMenu {
public void addUser(User u) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("请输入用户名");
String name = sc.nextLine();
System.out.println("请输入密码");
String pwd = sc.nextLine();
System.out.println("请输入邮箱");
String email = sc.nextLine();
IUserDao uDao = new UserDaoImpl();
User user = new User();
user.setName(name);
user.setPwd(pwd);
user.setEmail(email);
int a=uDao.addUser(user);
if(a>0){
System.out.println("添加用户成功");
}
if(u.getPower()==1){
MWindowMenu mw=new MWindowMenu();
mw.showMenu(u);
}else{
WindowMenu wm=new WindowMenu();
wm.showMenu(user);
}
}
}
查询用户界面
package com.jdbc01.menu;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class SelectMenu {
public void showMenu(User user) {
IUserDao uDao = new UserDaoImpl();
List<User> uList = new ArrayList();
User nu = new User();
if (user.getPower() == 1) {
System.out.println("查询全部用户----------------1");
System.out.println("根据ID查询用户-------------2");
System.out.println("根据姓名查询用户---------3");
System.out.println("请输入要做的操作");
int i = new Scanner(System.in).nextInt();
switch (i) {
case 1:
uList = uDao.selectUser(user, 0);
SelectMenu.outUser(uList);
break;
case 2:
System.out.println("请输入要查询的用户ID");
nu.setId(new Scanner(System.in).nextInt());
uList = uDao.selectUser(nu, 1);
SelectMenu.outUser(uList);
break;
case 3:
System.out.println("请输入要查询的用户姓名(支持模糊查询)");
nu.setName(new Scanner(System.in).nextLine());
uList = uDao.selectUser(nu, 2);
SelectMenu.outUser(uList);
break;
}
MWindowMenu mw=new MWindowMenu();
mw.showMenu(user);
} else {
uList = uDao.selectUser(user, 2);
SelectMenu.outUser(uList);
WindowMenu wm=new WindowMenu();
wm.showMenu(user);
}
}
public static void outUser(List<User> uList) {
for (User u : uList) {
System.out.print(u.getId() + " " + u.getName() + "" + u.getPwd() + "" + u.getEmail());
if (u.getPower() == 1) {
System.out.println("管理员");
} else {
System.out.println("普通用户");
}
}
}
}
删除用户界面
package com.jdbc01.menu;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class DeleteMenu {
public void showMenu(User u) {
User user=new User();
IUserDao uDao = new UserDaoImpl();
System.out.println("请输入要删除用户的ID");
int i=new Scanner(System.in).nextInt();
user.setId(i);
int a=uDao.deleteUser(user);
if(a>0){
System.out.println("删除用户成功");
}else{
System.out.println("删除呢用户失败");
}
MWindowMenu mw=new MWindowMenu();
mw.showMenu(u);
}
}
修改用户界面
package com.jdbc01.menu;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.dao.impl.UserDaoImpl;
import com.jdbc01.pojo.User;
public class UpdateMenu {
public void showMenu(User user1) {
User user = new User();
IUserDao uDao = new UserDaoImpl();
Scanner sc = new Scanner(System.in);
System.out.println("请输入要修改的用户名");
user.setName(sc.nextLine());
System.out.println("请输入要修改的密码");
user.setPwd(sc.nextLine());
System.out.println("请输入要修改的邮箱地址");
user.setEmail(sc.nextLine());
if (user1.getPower() == 1) {
System.out.println("请输入要修改的用户ID");
user.setId(sc.nextInt());
System.out.println("请输入要修改的用户的权限(管理员/普通用户)");
user.setPower(sc.nextInt());
}else if(user1.getPower() == 0){
user.setPower(0);
user.setId(user1.getId());
}
int a = uDao.updateUser(user);
if (a > 0) {
System.out.println("修改用户成功");
}
if(user1.getPower()==1){
MWindowMenu mw=new MWindowMenu();
mw.showMenu(user1);
}else{
WindowMenu wm=new WindowMenu();
wm.showMenu(user1);
}
}
}
实体类
package com.jdbc01.pojo;
public class User {
private int id;
private String name;
private String pwd;
private String email;
private int power=0;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getPower() {
return power;
}
public void setPower(int power) {
this.power = power;
}
}
工具类
package com.jdbc01.utils;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
public class DButil {
public static Connection getConnection() {
// 用于数据库连接的方法
Connection conn = null;
try {
// 载入资源文件
Properties prop = new Properties();
prop.load(DButil.class.getResourceAsStream("/db.properties"));
String driver = prop.getProperty("driver");
String url = prop.getProperty("url");
String name = prop.getProperty("userName");
String pwd = prop.getProperty("passWord");
Class.forName(driver);
conn = DriverManager.getConnection(url, name, pwd);
} catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("数据库连接异常");
e.printStackTrace();
}
return conn;
}
public static void closeConnection(ResultSet rs, Statement stat, Connection conn) {
try {
if (rs != null) {
rs.close();
}
if (stat != null) {
stat.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
System.out.println("数据库关闭异常");
e.printStackTrace();
}
}
}
接口
package com.jdbc01.dao;
import java.util.List;
import com.jdbc01.pojo.User;
public interface IUserDao {
int addUser(User user);
User identifyUser(User user);
List<User> selectUser(User user,int i);
int updateUser(User user);
int deleteUser(User user);
}
实现类
package com.jdbc01.dao.impl;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import com.jdbc01.dao.IUserDao;
import com.jdbc01.pojo.User;
import com.jdbc01.utils.DButil;
public class UserDaoImpl implements IUserDao {
Connection conn = null;
PreparedStatement stat = null;
ResultSet rs = null;
@Override
public int addUser(User user) {
//添加用户
int a = 0;
conn = DButil.getConnection();
try {
stat = conn.prepareStatement("insert into t_user values (null,?,?,?,?)");
stat.setString(1, user.getName());
stat.setString(2, user.getPwd());
stat.setString(3, user.getEmail());
stat.setInt(4, 0);
a = stat.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("数据库异常");
e.printStackTrace();
} finally {
DButil.closeConnection(null, stat, conn);
}
return a;
}
@Override
public User identifyUser(User user) {
//验证登录
conn = DButil.getConnection();
try {
stat = conn.prepareStatement("select * from t_user where user_name=? and user_pwd=?");
stat.setString(1, user.getName());
stat.setString(2, user.getPwd());
ResultSet rs = stat.executeQuery();
if(rs.next()){
System.out.println("用户登入成功");
System.out.println("=============");
User u = new User();
u.setName(rs.getString("user_name"));
u.setPower(rs.getInt("user_power"));
u.setId(rs.getInt("user_id"));
u.setEmail(rs.getString("user_email"));
u.setPwd(rs.getString("user_pwd"));
return u;
} else{
System.out.println("用户名或密码错误");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
DButil.closeConnection(rs, stat, conn);
}
return null;
}
@Override
public List<User> selectUser(User user ,int i) {
//查询用户
List<User> userList=new ArrayList();
conn = DButil.getConnection();
try {
switch(i){
case 0:
stat = conn.prepareStatement("select * from t_user ");
break;
case 1:
stat = conn.prepareStatement("select * from t_user where user_id=? ");
stat.setInt(1, user.getId());
break;
case 2:
stat = conn.prepareStatement("select * from t_user where user_name=? ");
stat.setString(1, user.getName());
break;
}
rs = stat.executeQuery();
while(rs.next()) {
User u = new User();
u.setId(rs.getInt("user_id"));
u.setName(rs.getString("user_name"));
u.setPwd(rs.getString("user_pwd"));
u.setEmail(rs.getString("user_email"));
userList.add(u);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
DButil.closeConnection(rs, stat, conn);
}
return userList;
}
@Override
public int updateUser(User user) {
//修改用户
int a = 0;
conn = DButil.getConnection();
try {
stat = conn.prepareStatement(
"update t_user set user_name=?,user_pwd=?,user_email=?,user_power=? where user_id=? ");
stat.setString(1, user.getName());
stat.setString(2, user.getPwd());
stat.setString(3, user.getEmail());
stat.setInt(4, user.getPower());
stat.setInt(5, user.getId());
a = stat.executeUpdate();
return a;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
DButil.closeConnection(null, stat, conn);
}
return a;
}
@Override
public int deleteUser(User user) {
//删除用户
conn=DButil.getConnection();
int a=0;
try {
stat=conn.prepareStatement("delete from t_user where user_id=?");
stat.setInt(1, user.getId());
a=stat.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
DButil.closeConnection(null, stat, conn);
}
return a;
}
}
网友评论