package com.deshell;
import java.sql.*;
import java.sql.Date;
import java.util.*;
public class Pims {
/**
* type有三个状态 :
* 0表示当前状态为未登入,为登入状态只能选择登入或者注册;
* 1表示普通用户登入,普通用户可以查看自己的信息,修改自己的信息,和退出。
* 2表示管理员账户登入,管理员可以查看根据条件查看所有账户的信息,修改任意账户,和退出。
*/
static int type = 0;
//name表示当前账户的用户名,默认是admin。
static String name = "admin";
public static void main(String[] args) {
Account aa = new Account();
while (true) {
try {
switch (type) {
case 0: {
System.out.println("请选择操作:1.登入 2.注册");
Scanner sc = new Scanner(System.in);
int choose = sc.nextInt();
switch (choose) {
case 1: {
try {
System.out.print("请输入您的用户名:");
name = sc.next();
System.out.print("请输入您的密码:");
String password = sc.next();
type = aa.login(name, password);
//break;
} catch (SQLException e) {
System.out.println("数据库连接失败,请核对用户名及密码,如依然不能解决问题请联系管理员!");
}
continue;
}
case 2: {
try {
String ename, password,sex_value;
int sex, deptno;
Date birthday;
double sal;
/**
* 注册用户名,检验用户名是否已经存在。
*/
while (true) {
System.out.print("请输入您要注册的用户名:");
ename = sc.next();
if (!aa.yanzheng(ename, "name")) {
System.out.print("sorry,您申请的用户名已经存在!请重新输入:");
continue;
}
break;
}
/**
* 注册密码,并验证密码。
*/
while (true) {
System.out.print("请输入您的密码:");
password = sc.next();
System.out.print("请再次输入密码:");
String password2 = sc.next();
if (!(password.equals(password2))) {
System.out.println("两次密码不一致,请重新输入!");
continue;
}
break;
}
while (true) {
System.out.println("请选择您的性别:1.男 2.女");
try {
Scanner se=new Scanner(System.in);
sex = se.nextInt();
switch (sex) {
case 1:
sex_value = "男";
break;
case 2:
sex_value = "女";
break;
default:
System.out.print("选择错误,请从新选择!");
continue;
}
se=null;
break;
} catch (Exception e) {
System.out.print("请选择 1 或 2 ,输入其他字符无效!");
continue;
}
}
while (true) {
System.out.print("请输入您的生日:(yyyy-mm-dd格式,月份或日期只有个位的要在前面补0,例:1988-03-09)");
try {
birthday = Date.valueOf(sc.next());
System.out.println(birthday.toString());
}
catch (Exception ex) {
System.out.println("日期不正确,请重新输入!");
continue;
}
break;
}
while (true) {
try {
System.out.println("请输入工资:");
Scanner sa=new Scanner(System.in);
sal = sa.nextDouble();
if (sal <= 0) {
System.out.println("工资不能是负数,请重新输入!");
continue;
}
break;
} catch (RuntimeException e) {
System.out.print("输入不正确,工资只能为数字!");
sal=0;
}
}
while (true) {
try {
System.out.println("请输入部门编号:");
deptno = sc.nextInt();
break;
} catch (RuntimeException e) {
System.out.print("部门编号只能为数字!");
}
}
aa.enroll(ename, password, sex_value, birthday, sal,deptno);
} catch (SQLException e) {
System.out.print("注册失败,请检查数据库连接以及您的注册信息,或联系管理员");
}
continue;
}
default: {
System.out.print("选择错误,");
}
}
continue;
}
case 1: {
System.out.println("请选择操作:1.查看我的信息 2.修改我的信息 0.退出");
Scanner sc = new Scanner(System.in);
int choose = sc.nextInt();
switch (choose) {
case 1: {
try {
ResultSet rrs = aa.select(name,"name");
rrs.next();
System.out.println("序号:" + rrs.getInt("no"));
System.out.println("姓名:" + rrs.getString("name"));
System.out.println("性别:" + rrs.getString("sex"));
System.out.println("出生日期:"+ rrs.getDate("birthday"));
String type_value;
switch(rrs.getInt("account_type")){
case 1:{type_value="普通用户";}
case 2:{type_value="管理员账户";}
default:{type_value="未知账户类型";}
}
System.out.println("账户类型:"+ type_value);
System.out.println("工资:" + rrs.getDouble("sallary"));
System.out.println("部门编号:" + rrs.getInt("deptno"));
} catch (SQLException e) {
System.out.println("数据库异常,请联系管理员!");
} finally {
continue;
}
}
case 2: {
try {
String password, sex_value;
int sex, deptno;
Date birthday;
ResultSet rrs;
rrs = aa.select(name,"name");
rrs.next();
password = rrs.getString("passwd");
sex_value = rrs.getString("sex");
birthday = rrs.getDate("birthday");
deptno = rrs.getInt("deptno");
while (true) {
System.out.println("选择你要修改的项目:1.密码 2.性别 3.出生日期 4.部门编号 9.确认 0.取消");
switch (sc.nextInt()) {
case 1: {
while (true) {
System.out.print("请输入您的密码:");
password = sc.next();
System.out.print("请再次输入密码:");
String password2 = sc.next();
if (!(password.equals(password2))) {
System.out.println("两次密码不一致,请重新输入!");
continue;
}
break;
}
break;
}
case 2: {
while (true) {
System.out.println("请选择您的性别:1.男 2.女");
try {
Scanner se=new Scanner(System.in);
sex = se.nextInt();
switch (sex) {
case 1:
sex_value = "男";
break;
case 2:
sex_value = "女";
break;
default:
System.out.print("选择错误,请从新选择!");
continue;
}
se=null;
break;
} catch (Exception e) {
System.out.print("请选择 1 或 2 ,输入其他字符无效!");
continue;
}
}
break;
}
case 3: {
while (true) {
System.out.print("请输入您的生日:(yyyy-mm-dd格式)");
try {
birthday = Date.valueOf(sc.next());
System.out.println(birthday.toString());
break;
} catch (Exception ex) {
System.out.println("日期不正确,请重新输入!");
continue;
}
}
break;
}
case 4: {
while (true) {
try {
Scanner de=new Scanner(System.in);
System.out.println("请输入部门编号:");
deptno = de.nextInt();
break;
} catch (RuntimeException e) {
System.out.print("部门编号只能为数字!");
continue;
}
}
break;
}
case 9: {
aa.modify(rrs.getInt("no"), password,sex_value, birthday, deptno);
}
case 0: {
break;
}
}
break;
}
} catch (SQLException e) {
System.out.println("数据库连接异常,请检查数据库连接或联系管理员!");
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
简单的人员信息管理系统(实习作业)java+Oracle
共7个文件
java:2个
class:2个
project:1个
3星 · 超过75%的资源 需积分: 14 70 下载量 63 浏览量
2010-10-08
00:17:35
上传
评论 5
收藏 12KB RAR 举报
温馨提示
实训时的一个作业,需求就是一个简单的人员信息管理系统,用了java+Oracle,系统功能:注册,登入查看和修改本人信息,管理员登入,查看和修改本人及所有人信息。我是交作业用的,如果有朋友也需要,就拿去。愿意一起讨论讨论编程问题也可以聊聊——deshell(deshell@163.com)
资源推荐
资源详情
资源评论
收起资源包目录
PIMS_1.0.rar (7个子文件)
PIMS
com
deshell
Pims.class 11KB
Pims.java 19KB
Account.java 4KB
Account.class 5KB
.classpath 380B
.settings
org.eclipse.jdt.ui.prefs 166B
.project 380B
共 7 条
- 1
资源评论
- xxueneng2012-12-04没什么实际价值,可使用性一般
- 啊哈哈YY2014-01-09其实我都没打开,然后用写字本打开都是乱码
- refter2012-07-30没有源码,空洞的文字,毫无价值。。
- flyring2015-05-16还行但是不够完整
- boyish__2014-06-23没什么实际价值,可使用性一般
flf114267913
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功