dengji.java
来自「java开发的酒店管理系统」· Java 代码 · 共 320 行
JAVA
320 行
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
import javax.imageio.*;
import java.io.*;
import javax.swing.JLabel;
import java.awt.Window;
import java.sql.*;
import javax.swing.event.*;
import java.awt.MediaTracker;
import javax.swing.border.*;
/*
public class dengJi
{
public static void main(String []args)
{
dengJiFrame dengJiF=new dengJiFrame();
dengJiF.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
dengJiF.setVisible(true);
}
}*/
class dengJi extends JFrame
{
public dengJi()
{
Toolkit kit =Toolkit.getDefaultToolkit();
Dimension screenSize=kit.getScreenSize();
int screenWidth=screenSize.width;
int screenHeight=screenSize.height;
setLocation((screenWidth-DEFA_W)/2,(screenHeight-DEFA_H)/2); //设置窗口位置,位于屏幕中间
setTitle("酒店管理——旅客登记查询");
setSize(DEFA_W,DEFA_H);
setResizable(false); //不允许用户改变窗口大小
dengJiPane dengJiP=new dengJiPane();
add(dengJiP);
dengJiP.setBounds(0,0,500,400);
}
private final int DEFA_W=500; //设置框架的宽度
private final int DEFA_H=400;
}
class dengJiPane extends JPanel
{
public dengJiPane()
{
setLayout(null);
getImage();
try
{
connDBQ();
}
catch(SQLException e){}
addButton();
addXiangMu();
}
public void connDBQ() throws SQLException
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){}
String URL="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=mdb.mdb";
conn=DriverManager.getConnection(URL);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
}
public void getImage()
{
try
{
img=ImageIO.read(new File("dengjichaxun.gif"));
}
catch(IOException e)
{
try
{
img=ImageIO.read(new File("img\\dengjichaxun.gif"));
}
catch(IOException ee){}
}
}
public void addButton()
{
nameButton=new JButton("查询");
shenFenZhengButton=new JButton("查询");
shiJianButton=new JButton("查询");
fanHui=new JButton("返 回");
tuiChu=new JButton("退出系统");
add(nameButton);
add(shenFenZhengButton);
add(shiJianButton);
add(fanHui);
add(tuiChu);
nameButton.setBounds(420,115,60,30);
shenFenZhengButton.setBounds(420,170,60,30);
shiJianButton.setBounds(420,230,60,30);
fanHui.setBounds(260,300,90,40);
tuiChu.setBounds(370,300,90,40);
nameAction NA=new nameAction();
shenFenZhengAction SFZA=new shenFenZhengAction();
shiJianAction SJA=new shiJianAction();
nameButton.addActionListener(NA);
shenFenZhengButton.addActionListener(SFZA);
shiJianButton.addActionListener(SJA);
tuiChuAction TCA=new tuiChuAction();
tuiChu.addActionListener(TCA);
mainFrameAction MFA=new mainFrameAction();
fanHui.addActionListener(MFA);
}
public void addXiangMu()
{
name=new JTextField();
shenFenZheng=new JTextField();
shiJianFrom=new JTextField();
shiJianTo=new JTextField();
add(name);
add(shenFenZheng);
add(shiJianFrom);
add(shiJianTo);
name.setBounds(215,115,150,25);
shenFenZheng.setBounds(215,170,150,25);
shiJianFrom.setBounds(250,230,60,25);
shiJianTo.setBounds(345,230,70,25);
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2=(Graphics2D)g;
g2.drawImage(img,0,0,null);
g2.drawString("日期格式如下:\"20070315\" 即2007年3月15日",200,275);
}
private class nameAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
if(((String)name.getText().trim()).length()==0)
JOptionPane.showMessageDialog(null,"请输入要查询的旅客的姓名");
else
{
DJOK=new dengJiOk("name",(String)name.getText().trim());
DJOK.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
DJOK.setVisible(true);
}
}
}
private class shenFenZhengAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
String zhi=(String)shenFenZheng.getText().trim();
int i=0;
boolean bool=true;
while(i<zhi.length() && String.valueOf(zhi.charAt(i))!=null)
{
if(zhi.charAt(i)>='0' && zhi.charAt(i)<='9')
{
bool=true;
}
else
{
if(i==17 && ((zhi.charAt(i)>='0' && zhi.charAt(i)<='9') || (zhi.charAt(i)=='x' || zhi.charAt(i)=='X')))
{
bool=true;
break;
}
bool=false;
break;
}
i=i+1;
}
if(!bool)
JOptionPane.showMessageDialog(null,"数据输入错误(身份证号只能为数字)");
if(bool)
{
if(zhi.length()!=18)
JOptionPane.showMessageDialog(null,"数据输入错误(身份证号码应为18位)");
else
{
dengJiOk DJOK=new dengJiOk("shenFenZheng",zhi);
DJOK.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
DJOK.setVisible(true);
}
}
}
}
private class shiJianAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
String zhi1=shiJianFrom.getText().trim();
String zhi2=shiJianTo.getText().trim();
boolean bool=true;
boolean bool2=true;
boolean bool3=true;
int i=0;
int j=0;
while(i<zhi1.length() && String.valueOf(zhi1.charAt(i))!=null)
{
if(zhi1.charAt(i)>='0' && zhi1.charAt(i)<='9')
{
bool=true;
}
else
{
bool=false;
break;
}
i=i+1;
}
if(!bool)
JOptionPane.showMessageDialog(null,"起始日期输入错误(不能出现字符)!!");
while(j<zhi2.length() && String.valueOf(zhi2.charAt(j))!=null &&bool)
{
if(zhi2.charAt(j)>='0' && zhi2.charAt(j)<='9')
{
bool2=true;
}
else
{
bool2=false;
break;
}
j=j+1;
}
if(!bool2)
JOptionPane.showMessageDialog(null,"结束日期输入错误(不能出现字符)!!");
if(bool&&bool2)
if(!(zhi1.length()==8 && zhi2.length()==8))
{
bool3=false;
JOptionPane.showMessageDialog(null,"开始或结束日期输入错误(请参看日期格式)");
}
if(bool&bool2&bool3)
{
dengJiOk DJOK=new dengJiOk("timer",zhi1,zhi2);
DJOK.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
DJOK.setVisible(true);
}
}
}
private class tuiChuAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
System.exit(0);
}
}
private class mainFrameAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
String NAME=null;
try
{
dangQian=stmt.executeQuery("select * from dangqian");
dangQian.next();
NAME=dangQian.getString("name");
}
catch(SQLException ee){}
catch(NullPointerException ee){}
mainFrame main=new mainFrame(NAME); //打开主窗口开始
main.setVisible(true);
main.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
}
private Image img;
private JTextField name;
private JTextField shenFenZheng;
private JTextField shiJianFrom;
private JTextField shiJianTo;
private JButton nameButton;
private JButton shenFenZhengButton;;
private JButton shiJianButton;
private JButton fanHui;
private JButton tuiChu;
private Connection conn;
private Statement stmt;
private ResultSet rs;
private dengJiOk DJOK;
private ResultSet dangQian=null;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?