package com.zh.dao;
import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.zh.SelectingCourse.SelectingCourse;
import com.zh.TeachingCourse.TeachingCourse;
import com.zh.course.Course;
import com.zh.manager.Manager;
import com.zh.student.Student;
import com.zh.teacher.Teacher;
public class Dao {
private static String driver= "net.sourceforge.jtds.jdbc.Driver";
protected static String dbUrl = "jdbc:jtds:sqlserver://localhost:1433;"
+ "DatabaseName=网上选课系统";
protected static String dbUser = "sa";
protected static String dbPwd = "abc123@";
protected static String second = null;
private static Connection conn = null;
public Dao() {
try
{
Class.forName(driver);
try{
conn=DriverManager.getConnection(dbUrl, dbUser, dbPwd);
}catch(SQLException e){
e.printStackTrace();
}
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
/*
创建执行查询语句的方法executeQuery,其返回值ResultSet结果集,首先要初始化Dao对象,调用构造函数,从而获取数据库连接
*/
@SuppressWarnings("unused")
private static ResultSet executeQuery(String sql) {
try {
if(conn==null)
new Dao();
return conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE).executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
return null;
} finally {
}
}
/*
创建执行更改语句的方法,它的返回值为int类型的整数,此返回值代表数据库更新的操作是否成功,返回1代表成功,不成功返回-1
*/
@SuppressWarnings("unused")
private static int executeUpdate(String sql) {
try {
if(conn==null)
new Dao();
return conn.createStatement().executeUpdate(sql);
} catch (SQLException e) {
System.out.println(e.getMessage());
//if(e.getMessage().equals("[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]DELETE 语句与 COLUMN REFERENCE 约束 'FK_TB_BORRO_REFERENCE_TB_BOOKI' 冲突。该冲突发生于数据库 'db_library',表 'tb_borrow', column 'bookISBN'。"))
return -1;
} finally {
}
}
//优化项目运行速度,在完成数据库操作后,关闭连接
public static void close() {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}finally{
conn = null;
}
}
/*
* manager登录方法
*/
public static Manager checkm(String mno, String mpassword) {
Manager manager=new Manager();
String sql = "select * from tb_manager where mno='" + mno
+ "' and mpassword='" + mpassword+ "'";
ResultSet rs = Dao.executeQuery(sql);
try {
while (rs.next()) {
String names = rs.getString(1);
manager.setMno(rs.getString("mno"));
manager.setMname(rs.getString("mname"));
manager.setMpassword(rs.getString("mpassword"));
}
} catch (Exception e) {
e.printStackTrace();
}
Dao.close();
return manager;
}
/*
* teacher登录方法
*/
public static Teacher checkt(String tno, String tpassword) {
Teacher teacher=new Teacher();
String sql = "select * from tb_teacher where tno='" + tno
+ "' and tpassword='" + tpassword+ "'";
ResultSet rs = Dao.executeQuery(sql);
try {
while (rs.next()) {
String names = rs.getString(1);
teacher.setTno(rs.getString("tno"));
teacher.setTname(rs.getString("tname"));
teacher.setTsex(rs.getString("tsex"));
teacher.setTpassword(rs.getString("tpassword"));
}
} catch (Exception e) {
e.printStackTrace();
}
Dao.close();
return teacher;
}
/*
* student登录方法
*/
public static Student checks(String sno, String spassword) {
Student student=new Student();
String sql = "select * from tb_student where sno='" + sno
+ "' and spassword='" + spassword+ "'";
ResultSet rs = Dao.executeQuery(sql);
try {
while (rs.next()) {
String names = rs.getString(1);
student.setSno(rs.getString("sno"));
student.setSname(rs.getString("sname"));
student.setSsex(rs.getString("ssex"));
student.setSage(rs.getString("sage"));
student.setEntrancetime(rs.getString("entrancetime"));
student.setSmajor(rs.getString("smajor"));
student.setSsdept(rs.getString("ssdept"));
student.setSpassword(rs.getString("spassword"));
}
} catch (Exception e) {
e.printStackTrace();
}
Dao.close();
return student;
}
/*
* 添加InsertStudent方法
*/
public static int InsertStudent(String sno,String sname,String ssex,String sage,String entrancetime,String smajor,String ssdept,String spassword)
{
int i=0;
try{
String sql="insert into tb_student(sno,sname,ssex,sage,entrancetime,smajor,ssdept,spassword) values('"+sno+"','"+sname+"','"+ssex+"','"+sage+"','"+entrancetime+"','"+smajor+"','"+ssdept+"','"+spassword+"')";
System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}
Dao.close();
return i;
}
/*
* 添加InsertTeacher方法
*/
public static int InsertTeacher(String tno,String tname,String tsex,String tpassword)
{
int i=0;
try{
String sql="insert into tb_teacher(tno,tname,tsex,tpassword) values('"+tno+"','"+tname+"','"+tsex+"','"+tpassword+"')";
System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}
Dao.close();
return i;
}
/*
* 添加InsertManager方法
*/
public static int InsertManager(String mno,String mname,String mpassword)
{
int i=0;
try{
String sql="insert into tb_manager(mno,mname,mpassword) values('"+mno+"','"+mname+"','"+mpassword+"')";
System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}
Dao.close();
return i;
}
/*
* 添加InsertCourse方法
*/
public static int InsertCourse(String cno,String cname,String ccredit)
{
int i=0;
try{
String sql="insert into tb_course(cno,cname,ccredit) values('"+cno+"','"+cname+"','"+ccredit+"')";
System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}
Dao.close();
return i;
}
/*
* 添加InsertSelectingCourse方法
*/
public static int InsertSelectingCourse(String sno,String cno,String grade)
{
int i=0;
try{
String sql="insert into tb_selecting_course(sno,cno,grade) values('"+sno+"','"+cno+"','"+grade+"')";
System.out.println(sql);
//if(Integer.parseInt(grade)==0)
i=Dao.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}
Dao.close();
return i;
}
/*
* 添加InsertTeachingCourse方法
*/
public static int InsertTeachingCourse(String tno,String cno,String ctime)
{
int i=0;
try{
String sql="insert into tb_teaching_course(tno,cno,ctime) values('"+tno+"','"+cno+"','"+ctime+"')";
System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}
Dao.close();
return i;
}
/*
* 添加selectStudent方法
*/
public static List selectStudent() {
List list=new ArrayList();
String sql = "select * from tb_student";
ResultSet rs = Dao.executeQuery(sql);
try {
while (rs.next()) {
Student student=new Student();
student.setSno(rs.getString("sno"));
student.setSname(rs.getString("sname"));
student.setSsex(rs.getString("ssex"));
student.setSage(rs.getString("sage"));
student.setEntrancetime(rs.getString("entrancetime"));
student.setSmajor(rs.getString("smajor"));
student.setSsdept(rs.getString("ssdept"));
student.setSpassword(rs.getString("spassword"));
list.add(student);
}
} catch (Exception e) {
e.printStackTrace();
}
Dao.close();
return list;
}
/*
* 添加selectCourse方法
*/
public static List selectCourse() {
List list=new ArrayList();
String sql = "select * fr
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
使用的数据库:sqlserver2005 实现基本功能: 1、管理员管理界面的功能: (1)系统管理(密码修改,退出) (2)学生管理(查询、添加、修改和删除学生信息) (3)课程管理(查询、添加、修改和删除课程信息) (4)教师管理(查询、添加、修改和删除教师信息) (5)授课管理(查询、添加、修改和删除授课信息)。 2、教师管理界面的功能: (1)系统管理(密码修改,退出) (2)选课成绩管理(查询、录入、修改学生选课成绩) (3)查询管理(个人信息查询、教学安排查询) 3、学生选课管理界面的功能: (1)系统管理(密码修改,退出) (2)选课管理(进行选课和退选课程操作) (3)查询管理(个人信息查询和成绩查询)
资源推荐
资源详情
资源评论
收起资源包目录
java网上选课系统+数据库 (142个子文件)
Dao.class 20KB
ModiAndDelStudent.class 7KB
MajorManager.class 5KB
Login.class 5KB
ModiAndDelTeacher.class 5KB
SearchStudent.class 5KB
SearchSCGrade.class 5KB
SearchTeachingCourse.class 5KB
SearchTeacher.class 5KB
ModiAndDelTeachingCourse.class 5KB
SearchCourse.class 5KB
ModiSCGrade.class 5KB
AddStudent.class 5KB
LuruGrade.class 5KB
CancelCourse.class 5KB
ModiAndDelCourse.class 5KB
SelectCourse.class 4KB
MajorTeacher.class 4KB
MajorStudent.class 4KB
Login$3.class 4KB
SearchTeachingCourse$1.class 4KB
SearchPersonalInfoS.class 3KB
ModiAndDelTeachingCourse$2.class 3KB
AddTeacher.class 3KB
ModiSpassword.class 3KB
ModiTpassword.class 3KB
ModiMpassword.class 3KB
SearchStudent$1.class 3KB
SearchTeacher$1.class 3KB
AddTeachingCourse$1.class 3KB
SearchCourse$1.class 3KB
ModiAndDelStudent$2.class 3KB
SearchteachingSchedule.class 3KB
SearchGrade.class 3KB
SearchSCGrade$1.class 3KB
AddTeachingCourse.class 3KB
ModiAndDelCourse$2.class 3KB
AddCourse.class 3KB
AddStudent$1.class 3KB
ModiSpassword$1.class 2KB
ModiTpassword$1.class 2KB
ModiMpassword$1.class 2KB
ModiAndDelTeacher$2.class 2KB
ModiSCGrade$2.class 2KB
LuruGrade$2.class 2KB
ModiAndDelStudent$1.class 2KB
AddTeacher$1.class 2KB
AddCourse$1.class 2KB
SelectCourse$2.class 2KB
CancelCourse$2.class 2KB
ModiAndDelTeachingCourse$3.class 2KB
SearchPersonalInfoT.class 2KB
Student.class 2KB
ModiAndDelStudent$3.class 2KB
ModiAndDelTeacher$3.class 2KB
ModiAndDelCourse$3.class 2KB
ModiAndDelTeacher$1.class 2KB
ModiAndDelTeachingCourse$1.class 2KB
ModiAndDelCourse$1.class 1KB
ModiSCGrade$1.class 1KB
CancelCourse$1.class 1KB
SelectCourse$1.class 1KB
TeachingCourse.class 1KB
LuruGrade$1.class 1KB
Teacher.class 1KB
Login$4.class 959B
ModiSpassword$2.class 934B
ModiTpassword$2.class 934B
ModiMpassword$2.class 934B
SelectingCourse.class 927B
Manager.class 909B
Course.class 894B
TeachingCourse$1.class 805B
Login$2.class 787B
SearchTeachingCourse$2.class 774B
MajorStudent$1.class 767B
MajorTeacher$1.class 767B
MajorManager$1.class 767B
AddTeachingCourse$2.class 756B
SearchSCGrade$2.class 732B
SearchTeacher$2.class 732B
SearchStudent$2.class 732B
SearchCourse$2.class 726B
Login$1.class 724B
SelectCourse$3.class 723B
CancelCourse$3.class 723B
ModiSCGrade$3.class 717B
AddStudent$2.class 714B
AddTeacher$2.class 714B
AddCourse$2.class 708B
LuruGrade$3.class 705B
.classpath 400B
jtds-1.2.5.jar 295KB
Dao.java 25KB
ModiAndDelStudent.java 8KB
Login.java 8KB
SearchTeachingCourse.java 7KB
MajorManager.java 6KB
AddStudent.java 6KB
ModiAndDelTeachingCourse.java 6KB
共 142 条
- 1
- 2
资源评论
- 萱呀2023-07-24喜欢这个文件中的Java代码,非常易于理解和维护。
- lirumei2023-07-24个数据库设计得很合理,表与表之间的关联清晰简洁。
- 有只风车子2023-07-24份文件中的数据库设计很实用,体现了实际选课过程中的需求。
- 实在想不出来了2023-07-24个选课系统数据库考虑到了学生和教师的特殊需求,很用心。
- 神康不是狗2023-07-24然界面简单,但这个数据库的性能非常出色,查询速度快。
小白程序媛
- 粉丝: 1
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功