学生选课系统----StudentDAO

/**
 * @author 李佩
 *
 * @version v1
 *
 * @time 2016/12/5
 *
 * @program  已选课程信息与数据库进行操作的类
 *
 */
package com.csms.dao;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

import com.csms.entity.*;

import com.csms.DBLink;

public class StudentDAO {
	// 学生登录信息查询
	public Boolean loginConfirm(String name, String password) {
		// 创建学生对象
		Student student = new Student();

		// 1.取得数据库连接的对象conn
		Connection conn = DBLink.getConn();

		// 2. 查询全体学生的sql语句
		String sql = "SELECT loginName,loginPsd FROM student";

		Statement stm = null;
		ResultSet rs = null;
		try {
			// 3.将查询语句发送给数据库,执行查询操作
			stm = conn.createStatement();
			rs = stm.executeQuery(sql);

			// 逐条记录进行查询
			while (rs.next()) {
				student.setLoginName(rs.getString("loginName"));
				student.setLoginPSD(rs.getString("loginPsd"));
				if (student.getLoginName().equals(name) && student.getLoginPSD().equals(password)) {
					return true;
				}
			}
			// 关闭查询指针链接
			rs.close();
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			// 4. 操作完成,关闭连接
			try {
				if (stm != null)
					stm.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return false;
	}

	// 查询某个学生的所有信息,用于登录标题窗口显示学生的姓名
	public Student searchStudentAll(String loginName, String loginPsd) {
		// 设置学生对象
		Student student = null;

		// 1.取得数据库连接的对象conn
		Connection conn = DBLink.getConn();

		// 2. 查询全体学生的sql语句
		String sql = "SELECT stuName,stuID,stuAge,stuSdept,stuClass,stuGender,loginPsd FROM student WHERE loginName=? AND loginPsd=?";

		PreparedStatement ptm = null;
		ResultSet rs = null;
		try {
			// 3.将查询语句发送给数据库,执行查询操作
			ptm = conn.prepareStatement(sql);
			ptm.setString(1, loginName);
			ptm.setString(2, loginPsd);
			rs = ptm.executeQuery();

			student = new Student();
			// 逐条记录进行查询
			while (rs.next()) {
				student.setStuName(rs.getString("stuName"));
				student.setStuID(rs.getString("stuID"));
				student.setStuAge(rs.getInt("stuAge"));
				student.setStuSdept(rs.getString("stuSdept"));
				student.setStuClass(rs.getString("stuClass"));
				student.setStuGender(rs.getString("stuGender"));
				student.setLoginPSD(rs.getString("loginPsd"));
			}

			// 关闭查询指针链接
			rs.close();
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			// 4. 操作完成,关闭连接
			try {
				if (ptm != null)
					ptm.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return student;
	}

	// 学生密码修改操作
	public void updatePassword(String id, String password) {
		// 1.取得数据库连接的对象conn
		Connection conn = DBLink.getConn();

		// 2. 查询全体学生的sql语句
		String sql = "UPDATE student SET loginPsd=? WHERE stuID=?";

		PreparedStatement ptm = null;
		try {
			// 3.将查询语句发送给数据库,执行查询操作
			ptm = conn.prepareStatement(sql);
			ptm.setString(1, password);
			ptm.setString(2, id);
			ptm.executeUpdate();
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			// 4. 操作完成,关闭连接
			try {
				if (ptm != null)
					ptm.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}

	// 录入学生信息
	public void insertStudentInformation(Student student){
		Connection conn = DBLink.getConn();
		String sql = "INSERT INTO student (loginName,loginPsd,stuID,stuName,stuAge,stuGender,stuSdept,stuClass) VALUES(?,?,?,?,?,?,?,?)";
		PreparedStatement ptm = null;
		ResultSet rs = null;
		try{
			ptm = conn.prepareStatement(sql);
			ptm.setString(1, student.getLoginName());
			ptm.setString(2, student.getLoginPSD());
			ptm.setString(3, student.getStuID());
			ptm.setString(4, student.getStuName());
			ptm.setInt(5, student.getStuAge());
			ptm.setString(6, student.getStuGender());
			ptm.setString(7, student.getStuSdept());
			ptm.setString(8, student.getStuClass());
			ptm.execute();
		}catch(SQLException e){
			e.printStackTrace();
		}finally{
			try{
				if(ptm!=null)
					ptm.close();
			}catch(SQLException e){
				e.printStackTrace();
			}
		}
	}

	// 删除学生信息
	public void deleteStudentInformation(String id){
		Connection conn = DBLink.getConn();
		String sql = "DELETE FROM student WHERE stuID=?";
		PreparedStatement ptm = null;
		try{
			ptm = conn.prepareStatement(sql);
			ptm.setString(1, id);
			ptm.execute();
		}catch(SQLException e){
			e.printStackTrace();
		}finally{
			try{
				if(ptm != null){
					ptm.close();
				}
			}catch(SQLException e){
				e.printStackTrace();
			}
		}
	}

	// 查询所有学生
	public List<Student> searchAllStudent(){
		List<Student> list = new ArrayList<Student>();
		Student student = null;
		Connection conn = DBLink.getConn();
		String sql = "SELECT stuID,stuName,stuAge,stuGender,stuSdept,stuClass FROM student";
		PreparedStatement ptm = null;
		ResultSet rs = null;
		try{
			ptm = conn.prepareStatement(sql);
			rs = ptm.executeQuery();
			while(rs.next()){
				student = new Student();
				student.setStuID(rs.getString("stuID"));
				student.setStuName(rs.getString("stuName"));
				student.setStuAge(rs.getInt("stuAge"));
				student.setStuGender(rs.getString("stuGender"));
				student.setStuSdept(rs.getString("stuSdept"));
				student.setStuClass(rs.getString("stuClass"));
				list.add(student);
			}
			rs.close();
		}catch(SQLException e){
			e.printStackTrace();
		}finally{
			try{
				if(ptm!=null){
					ptm.close();
				}
			}catch(SQLException e){
				e.printStackTrace();
			}
		}
		return list;
	}
}

  

时间: 2024-08-11 05:44:40

学生选课系统----StudentDAO的相关文章

学生选课系统----LoginWindow

/** * @author 李佩 * * @version v1 * * @time 2016/12/1 15:37 * * @program 创建对应数据表实体的老师类,方便dao与数据库的连接 * */ package com.csms.windows; // 导入要用到的包 import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import com.csm

学生选课系统----StudentWindow

/** * @author 李佩 * * @version v1 * * @time 2016/12/2 22:21 * * @program 画出学生选课系统的学生界面 * */ package com.csms.windows; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.table.*; import java.util.List; import com.csms.

3.python小项目:学生选课系统

学生选课系统 编程核心:在对象中封装对象 目录结构: 1.administrator.py import random import os import sys sys.path.append(os.path.dirname(os.path.dirname(__file__))) import time import pickle from lib import models from config import settings from lib.models import * # 全部导入

学生选课系统----TeacherDAO

老师信息操作: /** * @author 李佩 * * @version v1 * * @time 2016/12/2 14:54 * * @program 老师信息与数据库之间的操作 * */ package com.csms.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import ja

学生选课系统----TeacherWindow

/** * @author 李佩 * * @version v1 * * @time 2016/12/6 9:29 * * @program 画出学生选课系统的学生界面 * */ package com.csms.windows; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.even

JAVA | 学生选课系统

这里使用JAVA语言编写的简易的学生选课系统,展现的都是这个系统核心代码. 其中有不足欢迎批评和指正! 链接数据库的代码 package connection;//连接数据库student import java.sql.Connection;import java.sql.DriverManager;//import java.sql.Statement;import java.sql.SQLException; public class xu{ private static Connecti

学生选课系统数据存储用shelve

工程目录: #bin/run.py from core.main import Run Run.login() #core/ADM.py #-*-coding:utf-8 -*- __author__ = 'MrChu' import hashlib import shelve #shelve={'Student':[{'name':'xxx','passWord':'xxx','course':[]},{...},{...}], # 'Administrators':[{'name':'xxx

面向对象的应用:学生选课系统

一.要求: 选课系统 管理员: 创建老师:姓名.性别.年龄.资产 创建课程:课程名称.上课时间.课时费.关联老师 使用pickle保存在文件 学生: 学生:用户名.密码.性别.年龄.选课列表[].上课记录{课程1:[di,a,]} 1.列举所有课程 2.选择课程 3.学生上课, 4.ret = 课程.work() 获取课程的返回; 资产+=课时费 二.代码思路 2.1 管理员系统 a.定义了Teacher类,name,age,gender,property,其中property为私有成员,用对象

学生选课系统----SelectCourseDAO

/** * @author 李佩 * * @version v1 * * @time 2016/12/5 22:03 * * @program 已选课程信息与数据库进行操作的类 * */ package com.csms.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.ut