这篇文章主要为大家详细介绍了Java实现酒店客房管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Java实现酒店客房管理系统的具体代码,供大家参考,具体内容如下

LoginFrame.java

package loginManage;

import java.awt.Color;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField; import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.ResultSet;
import com.swtdesigner.SwingResourceManager; import db.JDBC;
public class LoginFrame { private JLabel label;
private JButton button;
private JButton btnregister;
private JButton btnreset;
private JButton btnlogin;
private JLabel labpwd;
private JLabel labUserName;
private JPasswordField textpwd;
private JTextField textUsername;
public JFrame frame; public static void main(String args[]) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
LoginFrame window = new LoginFrame(); window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
} public LoginFrame() {
createContents();
} private void createContents() {
frame = new JFrame();
frame.setTitle("登录");
frame.getContentPane().setFocusCycleRoot(true);
frame.getContentPane().setBackground(Color.LIGHT_GRAY);
frame.getContentPane().setLayout(null);
frame.setBounds(400, 150, 490, 375);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); btnlogin = new JButton();
btnlogin.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
String name = textUsername.getText().trim();
String password = textpwd.getText().trim();
Connection conn = null;
PreparedStatement pstmt=null;
ResultSet rs=null;
int flag=0;
if(name.equals("")||password.equals("")){
flag=2;
}
int right=0;
try {
String sql = "select * from login where userName=?";
conn = (Connection)JDBC.getConnection();
pstmt= (PreparedStatement)conn.prepareStatement(sql);
pstmt.setString(1, name);
rs=(ResultSet) pstmt.executeQuery();
while(rs.next()){
String userName=rs.getString("userName");
String passWord=rs.getString("passWord");
right=rs.getInt("admin");
if(userName.equals(name)&&passWord.equals(password)){
flag = 1;
}
}
switch(flag){
case 1:
if((right==1)){
BackRun admin = new BackRun();
admin.frame.setVisible(true);
frame.setVisible(false);
break;
}else{
FrontRun admin= new FrontRun();
admin.frame.setVisible(true);
frame.setVisible(false);
break;
}
case 2:
JOptionPane.showMessageDialog(btnlogin ,"用户名或密码不能为空,请您重新输入!");
break;
default:
JOptionPane.showMessageDialog(btnlogin ,"用户名或密码 不正确,请您重新输入!");
break; } } catch (Exception e) {
e.printStackTrace();
} }
}); btnlogin.setText(" 登陆");
btnlogin.setBounds(75, 215, 83, 28);
frame.getContentPane().add(btnlogin); btnreset = new JButton();
btnreset.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
textUsername.setText("");
textpwd.setText(""); }
});
btnreset.setText("重置");
btnreset.setBounds(195, 215, 83, 28);
frame.getContentPane().add(btnreset); labUserName = new JLabel();
labUserName.setText("用户名:");
labUserName.setBounds(75, 130, 52, 18);
frame.getContentPane().add(labUserName); labpwd = new JLabel();
labpwd.setText("密 码:");
labpwd.setBounds(75, 175, 66, 18);
frame.getContentPane().add(labpwd); textUsername = new JTextField();
textUsername.setBounds(145, 130, 188, 22);
frame.getContentPane().add(textUsername); textpwd = new JPasswordField();
textpwd.setBounds(145, 170, 188, 22);
frame.getContentPane().add(textpwd); btnregister = new JButton();
btnregister.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
Register rs = new Register();
rs.frame.setVisible(true);
}
});
btnregister.setText("注册");
btnregister.setBounds(270, 270, 81, 28);
frame.getContentPane().add(btnregister); button = new JButton();
button.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
System.exit(0);
}
});
button.setText("退出");
button.setBounds(310, 215, 83, 28);
frame.getContentPane().add(button); label = new JLabel();
label.setText("还没有账号?赶快点击注册吧!");
label.setBounds(85, 275, 181, 33);
frame.getContentPane().add(label); }
}

Register.java

package loginManage;

import java.awt.Color;
import java.awt.Component;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException; import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField; import com.mysql.jdbc.PreparedStatement;
import com.swtdesigner.SwingResourceManager;
public class Register {
private JButton button;
private JButton btnregister;
private JLabel labpwd;
private JLabel labUserName;
private JPasswordField textpwd;
private JTextField textUsername;
public JFrame frame;
public boolean flag=false; public static void main(String args[]) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Register window = new Register(); window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
} public Register() {
createContents();
} private void createContents() { frame = new JFrame();
frame.getContentPane().setFocusCycleRoot(true);
frame.getContentPane().setBackground(Color.LIGHT_GRAY);
frame.getContentPane().setLayout(null);
frame.setBounds(350, 150, 500, 375);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); labUserName = new JLabel();
labUserName.setText("用户名:");
labUserName.setBounds(109, 182, 52, 18);
frame.getContentPane().add(labUserName); labpwd = new JLabel();
labpwd.setText("密 码:");
labpwd.setBounds(109, 224, 66, 18);
frame.getContentPane().add(labpwd); textUsername = new JTextField();
textUsername.setBounds(190, 180, 188, 22);
frame.getContentPane().add(textUsername); textpwd = new JPasswordField();
textpwd.setBounds(190, 222, 188, 22);
frame.getContentPane().add(textpwd); btnregister = new JButton();
btnregister.addActionListener(new ActionListener() {
@SuppressWarnings("deprecation")
public void actionPerformed(final ActionEvent arg0) { PreparedStatement st=null;
Connection con =null;
String sqlStr="insert into login(userName,passWord) values(?,?)";
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
}
try {
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/hotel","root","125800");
st = (PreparedStatement) con.prepareStatement(sqlStr); } catch (SQLException e1) {
e1.printStackTrace();
} String name = textUsername.getText().trim();
String password = textpwd.getText().trim();
if(name.equals("")||password.equals("")){
JOptionPane.showMessageDialog(btnregister ,"用户名或密码不能为空,请您重新输入!"); }else{
try {
st.setString(1,name);
st.setString(2,password);
st.execute();
flag=true;
if(flag){
JOptionPane.showMessageDialog(btnregister, "注册成功\n点确定返回登录界面");
LoginFrame backMain=new LoginFrame();
backMain.frame.setVisible(true);
frame.setVisible(false);
}else{
JOptionPane.showMessageDialog(btnregister, "注册失败\n点确定返回登录界面");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
// JOptionPane.showMessageDialog(btnregister, "注册成功\n点确定返回登录界面");
// loginFrame backMain=new loginFrame();
// backMain.frame.setVisible(true);
// frame.setVisible(false); try {
st.close();
con.close(); } catch (SQLException e1) {
e1.printStackTrace();
} }
});
btnregister.setText("提交");
btnregister.setBounds(162, 268, 95, 28);
frame.getContentPane().add(btnregister); button = new JButton();
button.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
frame.setVisible(false); }
});
button.setText("返回");
button.setBounds(283, 268, 95, 28);
frame.getContentPane().add(button); final JLabel label = new JLabel();
label.setIcon(SwingResourceManager.getIcon(Register.class, "/648.gif"));
label.setBounds(0, 0, 492, 341);
frame.getContentPane().add(label);
// frame.getContentPane().setFocusTraversalPolicy(new FocusTraversalOnArray(new Component[] {labUserName, labpwd, btnregister, textUsername, textpwd, button})); } }

Java实现酒店客房管理系统的更多相关文章

  1. java初学小项目-酒店客房管理系统

    最近初次接触JAVA,感觉之前学的C语言很有用,跟着视频做了一个小项目-酒店客房管理系统 /* 酒店客房管理系统 */ import java.util.Scanner;//通过键盘来输入命令需要的引 ...

  2. SSM + MYSQL 酒店客房管理系统

    酒店客房管理系统的设计与实现是采用JSP技术,MYSQL数据库进行开发的.系统具有灵活的一体化设计方式,圆满完成了整个系统的全面设计,系统主要采用JSP技术开发,提高系统的运行性能和安全性,并且易于维 ...

  3. 【Java EE 学习 55】【酒店会员管理系统项目总结】

    本酒店会员管理系统使用了SSH框架和传值播客提供的协同OA静态页面. 项目地址:https://github.com/kdyzm/HotelMembersManagement 一.需求分析 酒店会员管 ...

  4. java一个简单的管理系统

    用java实现的简单管理系统 运行出来的状态 实现了新增.删除.借出.归还.排行榜简单的功能! 下面是简单的代码 首先定义一个书籍类,自己打开哦! public class Book implemen ...

  5. java web 项目 图书管理系统的设计与实现

     java web 项目 图书管理系统的设计与实现

  6. 第83节:Java中的学生管理系统分页功能

    第83节:Java中的学生管理系统分页功能 分页功能一般可以做成两种,一种是物理分页,另一种是逻辑分页.这两种功能是有各自的特点的,物理分页是查询的时候,对数据库进行访问,只是查一页数据就进行返回,其 ...

  7. 第82节:Java中的学生管理系统

    第82节:Java中的学生管理系统 学生管理系统的删除功能 删除,点击超链接,点击弹出对话框式是否进行删除,如果确定,就删除,超链接执行的是js方法,在js里访问,跳转servlet,,servlet ...

  8. JAVA汽车4S店管理系统

    JAVA汽车4S店管理系统源码(前台+后台)分为这5个大模块 系统设置 整车销售辅助销售汽修管理 汽修统计1.经理管理(增加 和删除功能)    表设计经理编号经理名年龄性别2.业务员管理(增删改查) ...

  9. java简单学生成绩管理系统

    题目要求: 一. 数据结构要求:(5 分) 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishi ...

随机推荐

  1. 题解【QTree3】

    题目描述 给出N个点的一棵树(N-1条边),节点有白有黑,初始全为白 有两种操作: 0 i : 改变某点的颜色(原来是黑的变白,原来是白的变黑) 1 v : 询问1到v的路径上的第一个黑点,若无,输出 ...

  2. Flutter沉浸式状态栏/AppBar导航栏/仿咸鱼底部凸起导航

    Flutter中如何实现沉浸式透明Statusbar状态栏效果? 如下图:状态栏是指android手机顶部显示手机状态信息的位置.android 自4.4开始新加入透明状态栏功能,状态栏可以自定义颜色 ...

  3. 动态枢轴网格使用MVC, AngularJS和WEB API 2

    下载shanuAngularMVCPivotGridS.zip - 2.7 MB 介绍 在本文中,我们将详细介绍如何使用AngularJS创建一个简单的MVC Pivot HTML网格.在我之前的文章 ...

  4. 搭建zabbix+grafana监控

    编写一件安装脚本 #!/bin/sh echo "\033[32;1m脚本作者:fage\033[0m" #sleep 10 zabbix_version=4.0.2 zabbix ...

  5. 【Flutter Widgets大全】电子书开源

    [Flutter Widgets大全]是老孟耗费大量精力整理的,总共有330多个组件的详细用法,开源到Github上,希望可以帮助到大家,开源不易,点个赞可不可以. [Flutter Widgets ...

  6. S3C2440 LCD驱动(FrameBuffer)实例开发<二>(转)

    开发板自带的LCD驱动是基于platform总线写的,所以如果要使其它的LCD能够在自己的开发板上跑起来,那么就先了解platform驱动的架构,下面简单记录下自己看platform驱动时体会,简单的 ...

  7. 【UR #9】App 管理器

    UOJ小清新题表 题目内容 UOJ链接 一句话题意:给出一个强联通的混合图,有一些有向边和无向边.删除一些边使其维持强联通的状态,求删边方案. 数据范围 \(1\leq n\leq 5000,0\le ...

  8. 最大子段和之M子段和

    最大M子段和 题目模型 N个整数组成的序列 \(a_1,a_2,a_3,-,a_n\) ,将这N个数划分为互不相交的M个子段,并且这M个子段的和是最大的. 问题分析 方法一: 看到序列,我们首先要尝试 ...

  9. linux(centos8):基于java13安装rocketmq-4.7.1(解决jdk不兼容的报错)

    一,Rocketmq是什么? 1, RocketMQ是一个队列模型的消息中间件,具有高性能.高可靠.高实时.分布式特点 相比kafka,rocketmq的实时性更强 2,官方网站: http://ro ...

  10. go 不停模拟 写日志

    package main import ( "os" "errors" "math/rand" "time" " ...