基于java的Swing+MySQL火车票售票管理系统(java+swing+mysql+gui)

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

管理员管理车票和用户、用户购买车票等

052123510307

070123082502

080123082502

550123072502

560123072502

570123072502

580123072502

590123072502

010123082502

020123082502

030123082502

040123082502

050123082502

060123082502

技术框架

Java Swing MySQL

基于java的Swing+MySQL火车票售票管理系统(java+swing+mysql+gui)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(500, 100, 800, 800);

contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);

JPanel panel = new JPanel();
contentPane.add(panel, BorderLayout.NORTH);

panel.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));//流式居中


btnQue = new JButton("查看车票信息");
panel.add(btnQue);
btnQue.setActionCommand("que");

btnDel = new JButton("删除所选");
panel.add(btnDel);
btnDel.setActionCommand("del");

btnAdd = new JButton("添加车票");
panel.add(btnAdd);
btnAdd.setActionCommand("add");

btnUpd = new JButton("修改车票");
panel.add(btnUpd);
btnUpd.setActionCommand("upd");

tzyh = new JButton("用户管理");
panel.add(tzyh);

tuichu = new JButton("退出");
panel.add(tuichu);
tuichu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose();
}

});


tzyh.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {
Usermanagement_ui yhgl = new Usermanagement_ui();
yhgl.setVisible(true);
}
});

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
        String name = rs.getString(2);
String identity_number = rs.getString(3);
String account = rs.getString(4);
String password = rs.getString(5);
User user0 = new User(userid0, name, identity_number, account, password);
user.add(user0);
}
Util.closeAll(con, stmt, rs);
return user;
}

@Override
public boolean SlectAcPs(String account, String password) throws SQLException {
boolean flag = false;
String sql = "select account,password from user";
Connection con = Util.getConnection();
PreparedStatement stmt = con.prepareStatement(sql);
ResultSet rr = stmt.executeQuery();
while (rr.next()) {
String account1 = rr.getString(1);
String password1 = rr.getString(2);
if (account.equals(account1) && password.equals(password1)) {
flag = true;
break;
}
}
Util.closeAll(con, stmt, rr);
return flag;
}

@Override
public List<AcPs> getAC(String account, String password) throws SQLException {
String account0 = account;
String password0 = password;
List<AcPs> acps = new ArrayList<>();
AcPs acpss = new AcPs(account0, password0);
acps.add(acpss);

return acps;
}

@Override
public int GetUseridbyaccount(String account) throws SQLException {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42


public void setNa(String na) {
this.na = na;
}


public String getIde() {
return ide;
}


public void setIde(String ide) {
this.ide = ide;
}


public String getAc() {
return ac;
}


public void setAc(String ac) {
this.ac = ac;
}


public String getPs() {
return ps;
}


public void setPs(String ps) {
this.ps = ps;
}


public UserSelf() throws SQLException {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(500, 100, 800, 800);


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
            int blance = userdao.selectbl(usd);
int yuan = ticketim.fares(ticketidd);
System.out.println(blance + "***" + yuan);
if (blance >= yuan) {
boolean falll = userdao.reduBlance(usd, yuan);
boolean fal = userticketdao.SelectUidTid(ticketidd, usd);
boolean fall = userticketdao.Left(ticketidd);
System.out.println(fal + "23421434234" + fall);
if (falll) {
if (fall) {
if (fal) {
boolean falg = userticketdao.buyTicket(ticketidd, usd);
boolean flag1 = userticketdao.buyTicketb(ticketidd, usd);
JOptionPane.showMessageDialog(null, "购买成功!");
System.out.println(falg + "1" + flag1);
System.out.println(usd);
System.out.println(ticketidd);
System.out.println();
} else {
JOptionPane.showMessageDialog(null, "您不能重复购买该票!");
}
} else {
JOptionPane.showMessageDialog(null, "该票已经售罄!");
}
} else {
JOptionPane.showMessageDialog(null, "购买失败!");
}

} else {
JOptionPane.showMessageDialog(null, "余额不足!");
}
try {
loadData();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}

package dao.Impl;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
            + "usertickettickettype,userticketfares,userticketticket_office) values"
+ "(?,?,?,?,?,?,?,?,?,?,?,?,?)";
PreparedStatement stmt = con.prepareStatement(sqladd);
stmt.setInt(1, userticketuserid);
stmt.setInt(2, userticketticketid);
stmt.setString(3, userticketname);
stmt.setString(4, userticketidentity_number);
stmt.setString(5, userticketstation_arrival);
stmt.setString(6, userticketstation_depart);
stmt.setString(7, userticketdepart_date);
stmt.setString(8, userticketdepart_time);
stmt.setInt(9, userticketticket_number);
stmt.setString(10, userticketseattype);
stmt.setString(11, usertickettickettype);
stmt.setString(12, userticketfares);
stmt.setString(13, userticketticket_office);
stmt.executeUpdate();
return true;
}

@Override
public boolean update(UserTicket UserTicket) throws SQLException {
// TODO Auto-generated method stub
return false;
}

@Override
public void delete(int userticketid) throws SQLException {
Connection con = Util.getConnection();
String sqladd = "delete from userticket where userticketid=?";
PreparedStatement stmt = con.prepareStatement(sqladd);
stmt.setInt(1, userticketid);
ResultSet rs = null;
stmt.executeUpdate();
Util.closeAll(con, stmt, rs);

}

@Override
public List<UserTicket> QueryByuserticketuserid(int userticketuserid) throws SQLException {
Connection con = Util.getConnection();
String sqladd = "select * from userticket where userticketuserid=?";
PreparedStatement stmt = con.prepareStatement(sqladd);
stmt.setInt(1, userticketuserid);
ResultSet rs = stmt.executeQuery();

List<UserTicket> userticket = new ArrayList<>();
while (rs.next()) {
int userticketid = rs.getInt(1);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
            } catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
});
}

public void loadData() throws SQLException {
// 清除旧的数据
model.getDataVector().clear();

List<Ticket> list = ticketDao.queryAll();
// 遍历每一条数据,添加到model中
for (Ticket ticket : list) {
// 添加 行数据
// cob.setSelectedItem(new Tickettype(ticket.getTicketid()));
model.addRow(new Object[]{ticket.getTicketid(), ticket.getStation_arrival(), ticket.getStation_depart(),
ticket.getDepart_date(), ticket.getDepart_time(), ticket.getTicket_number(), ticket.getSeattypeid(),
ticket.getTickettypeid(), ticket.getTickets_left(), ticket.getFares(),
ticket.getTicket_office()
});
}
}

public void del() throws SQLException {
if (table.getSelectedRowCount() <= 0) {
JOptionPane.showMessageDialog(null, "请选择要删除的数据行");
return;
}
int result = JOptionPane.showConfirmDialog(null, "是否确定要删除");
// 判断用户是否点击
if (result == JOptionPane.OK_OPTION) {
int ticketid = Integer.valueOf(table.getValueAt(
table.getSelectedRow(), 0).toString());
ticketDao.delete(ticketid);
loadData();
}
}

public void updata() throws SQLException {
if (table.getSelectedRowCount() <= 0) {
JOptionPane.showMessageDialog(null, "请选择要修改的数据行");
return;
}
int result = JOptionPane.showConfirmDialog(null, "是否确定要修改");
// 判断用户是否点击
if (result == JOptionPane.OK_OPTION) {

int ticketid = Integer.valueOf(table.getValueAt(table.getSelectedRow(), 0).toString());
String station_arrival = table.getValueAt(table.getSelectedRow(), 1).toString();
String station_depart = table.getValueAt(table.getSelectedRow(), 2).toString();
String depart_date = table.getValueAt(table.getSelectedRow(), 3).toString();
String depart_time = table.getValueAt(table.getSelectedRow(), 4).toString();


项目链接:
https://javayms.github.io?id=241621462402101ab
https://javayms.pages.dev?id=241621462402101ab