java 实现电影购票系统

java swing实现电影购票系统

基于 MySQL + javaSE 实现
首先系统分为前台用户登录注册和后台管理员进行管理
项目采用三层架构思想
系统首页

系统首页
用户登录成功浏览电影
电影详情以及查看评论
电影详情以及查看评论
查看所有电影场次
查看所有电影场次
购买影票选择座位
购买影票选择座位
查看影票以及点击进入评论
查看影票以及点击进入评论
对购买的影票进行想评论
对购买的影票进行想评论

接下来看看管理员
管理员进行操作,几个按钮样式差不错,就不全贴了。感觉已经贴的挺详细的了。
管理员进行操作

代码的话就贴一些通用的访问数据库的具有通用的增删改查的代码吧,其余的就···

/**
	 * 执行增删改的操作
	 * @param sql
	 * @param param
	 * @return
	 */
	public static boolean operUpdate(String sql, List<Object> param) {
		int res = 0;// 获得影响的行数
		Connection conn = null;// 获取连接
		PreparedStatement psts = null;// 装载sql语句
		ResultSet rs = null;
		conn = getConn();
		try {
			psts = conn.prepareStatement(sql);
			if (param != null) {
				for (int i = 0; i < param.size(); i++) {
					psts.setObject(i + 1, param.get(i));
				}
			}
			res = psts.executeUpdate();

		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			closeAll(rs, psts, conn);//关闭相关的连接
		}
		return res > 0 ? true : false;

	}
/**
	 * 执行查找的操作
	 * @param sql
	 * @param param
	 * @return
	 */
	public static <T> List<T> operQuery(String sql, List<Object> param, Class<T> cls) {
		Connection conn = null;// 获取连接
		PreparedStatement psts = null;// 装载sql语句
		ResultSet rs = null;
		conn = getConn();
		List<T> list = new ArrayList<T>();
		try {
			psts = conn.prepareStatement(sql);
			if (param != null) {
				for (int i = 0; i < param.size(); i++) {
					psts.setObject(i + 1, param.get(i));
				}
			}
			rs=psts.executeQuery();
			
			ResultSetMetaData rsmd = rs.getMetaData();
			while(rs.next()){
				T entity = cls.newInstance();
				for(int j =0;j<rsmd.getColumnCount();j++){
					String columnName = rsmd.getColumnName(j+1);
					Object value = rs.getObject(columnName);
					Field fields = cls.getDeclaredField(columnName);
					fields.setAccessible(true);
					fields.set(entity, value);
				}
				list.add(entity);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (NoSuchFieldException e) {
			e.printStackTrace();
		} catch (SecurityException e) {
			e.printStackTrace();
		} finally {
			closeAll(rs, psts, conn);
		}
		return list;
	}

上述两个方法还是蛮具有通用性的。如有错误,希望各位看到的大佬不吝赐教。

项目还有一版是C/S模式,利用socket通信,有兴趣可以私聊(企鹅号:1937859795)

扫码公众号获取源代码!
在这里插入图片描述

  • 23
    点赞
  • 110
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 24
    评论
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冬瓜螺旋雪碧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值