课程信息管理系统.docx

上传人:b****7 文档编号:26188643 上传时间:2023-06-17 格式:DOCX 页数:29 大小:31.86KB
下载 相关 举报
课程信息管理系统.docx_第1页
第1页 / 共29页
课程信息管理系统.docx_第2页
第2页 / 共29页
课程信息管理系统.docx_第3页
第3页 / 共29页
课程信息管理系统.docx_第4页
第4页 / 共29页
课程信息管理系统.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

课程信息管理系统.docx

《课程信息管理系统.docx》由会员分享,可在线阅读,更多相关《课程信息管理系统.docx(29页珍藏版)》请在冰豆网上搜索。

课程信息管理系统.docx

课程信息管理系统

packageorg、hxl、oracle、demo03;

importjava、sql、Connection;

importjava、sql、DriverManager;

importjava、sql、PreparedStatement;

importjava、sql、ResultSet;

importjava、util、ArrayList;

import java、util、Iterator;

importjava、util、List;

importjava、util、Scanner;

/*

* 课程信息管理系统,要求:

*1、 课程信息包括:

Cno(课程号),Cname(课程名),period(课时数),term(上课学期),

*ﻩproperty(课程性质)

*2、包括课程得增加,删除,修改

 * 查询(查询全部得课程信息,按关键字查询课程信息,按课程号查询课程信息)

* 3、将所有得记录保存在oracle数据库中 

 **/

//vo类(与数据库中得一张表相对应,一个对象对应表中得一条记录,一个属性对应表中得一个字段)

class Courseimplementsparable

privateint cno;//课程号

ﻩprivateStringcname;  //课程名

ﻩprivateintperiod ;//课时数

privateStringterm;//上课学期

privateStringproperty;//课程性质

publicCourse(){

ﻩ//无参构造函数

ﻩpublic Course(intcno,Stringcname,intperiod,String term,Stringproperty){

ﻩthiso =cno;

ﻩthisame=cname;

ﻩthis、term=term;

ﻩﻩthis、period=period;

ﻩthis、property = property;

ﻩ}

publicvoid setCno(intcno){

thiso= cno;

}

publicvoidsetCname(Stringcname){

ﻩﻩthisame = cname ;

publicvoidsetPeriod(intperiod){

this、period =period;

}

ﻩpublicvoid setTerm(Stringterm){

ﻩthis、term =term ;

}

publicvoidsetProperty(Stringproperty){

this、property=property;

ﻩ}

ﻩpublicintgetCno(){

ﻩﻩreturnthiso;

public StringgetCname(){

returnthisame;

ﻩpublicintgetPeriod(){

ﻩﻩreturnthis、period;

}

ﻩpublic String getTerm(){

ﻩﻩreturnthis、term;

publicStringgetProperty(){

returnthis、property;

ﻩ}

ﻩOverride

ﻩpublicStringtoString(){

ﻩﻩreturn"课程号:

" +this、getCno() +”,课程名:

"+this、getCname()+",课程得学时:

”+this、getPeriod()

ﻩ+”,上课学期:

"+this、getTerm()+ ",课程性质:

" + this、getProperty();

ﻩOverride

publicint pareTo(Course course){

ﻩif(thiso>courseo){

ﻩreturn-1;

ﻩ}elseif(thiso

return1;

ﻩﻩ}else{

ﻩreturn0;

ﻩﻩ}

ﻩOverride

ﻩpublic int hashCode(){

ﻩﻩreturnthiso *super、hashCode();

ﻩOverride

publicbooleanequals(Objectobj){

ﻩif(obj==null){

ﻩreturnfalse;

if(this ==obj){

return true;

ﻩ}

ﻩif(!

(objinstanceofCourse)){

ﻩﻩreturnfalse;

ﻩ}

ﻩCourse course=(Course)obj;

if(thiso==courseo){

ﻩ//课程号相同,则一定相同,课程号就是唯一标识符

ﻩreturntrue ;

ﻩﻩ}else{

ﻩreturnfalse;

ﻩ}

ﻩ}

}

//DatebaseConnection数据库连接与关闭

class DatebaseConnection{

ﻩ//数据库驱动程序

ﻩprivatefinalstatic String DBDRIVER=”oracle、jdbc、driver、OracleDriver”;

ﻩ//数据库得连接地址

private finalstatic StringDBURL="jdbc:

oracle:

thin:

localhost:

1521:

MLDN";

ﻩ//数据库得用户名

ﻩprivate finalstaticStringDBUER ="scott";

//数据库得密码

ﻩprivatefinalstaticStringDBPASS=”tiger”;

ﻩ//数据库得连接对象

ﻩprivateConnectionconnection;

ﻩpublicDatebaseConnection()throwsException{

ﻩtry{

ﻩﻩ//1、加载驱动程序

ﻩClass、forName(DBDRIVER);

ﻩﻩ//2、建立数据库连接

this、connection= DriverManager、getConnection(DBURL, DBUER,DBPASS);

}catch(Exception e){

ﻩﻩthrowe ; //将异常交给被调用处处理

ﻩﻩ}

}

publicConnectiongetConnection(){

ﻩﻩreturnthis、connection;//取得数据库连接对象得实例

publicvoid close() throws Exception{

ﻩtry{

ﻩif(this、connection!

=null){//关闭数据库连接对象

ﻩﻩﻩthis、connection、close() ;

ﻩﻩ}

ﻩﻩ}catch(Exceptione){

ﻩthrow e ; //异常交给被调用处处理

ﻩ}

}

interface ICourseDAO{

ﻩ/*

ﻩ*1、数据得增加操作,用于向数据库中添加一条课程记录

 *paramcourse:

表示一个课程对象

ﻩ * return boolean:

就是否添加成功

ﻩ*throws Exception:

异常交给被调用处处理

ﻩ **/

ﻩpublicabstractbooleandoCreate(Coursecourse)throwsException ;

/*

ﻩ * 2、数据得删除操作,用于删除数据库中得某条记录

ﻩ *paramcno:

表示要删除得课程得课程号

*returnboolean:

删除就是否成功

*throws Exception:

异常交给被调用处处理

**/

ﻩpublicabstractbooleandoRemove(intcno)throwsException;

ﻩ/*

* 3、数据得更新操作

ﻩ*paramcno:

表示要更新得课程得课程号

* returnboolean:

更新就是否成功

* throwsException:

异常交给被调用处处理

ﻩ**/

publicabstractbooleandoUpdate(intcno)throwsException ;

ﻩ/*

*4、查瞧数据库中得所有记录

ﻩ*paramvoid 

ﻩ* returnList<Course〉:

将查询结果以链表得形式返回给被调用出

ﻩ*throwsException:

异常交给被调用处处理

* */

publicabstractList<Course> findAll()throwsException;

/*

*5、根据关键字查询

ﻩ*paramkeyWord:

查询得关键字

ﻩ* return List<Course〉:

将查询得结果以链表得形式返回给被调用出

ﻩ*throwsException:

异常交给被调用处处理

* 函数得重载

 **/

publicabstractListfindAll(String keyWord)throwsException;

ﻩ/*

ﻩ *6、根据课程号查询

*param cno:

要查询得课程号

ﻩ * return Course:

将查询得结果返回给被调用处

*throwsException:

将异常抛出交给被调用处处理

ﻩ* */

ﻩpublic abstractCoursefind(int cno)throwsException;

/*

*7、查询当前数据库中得记录数

 * paramvoid

ﻩ*return int:

将查询得记录数返回给调用处

ﻩ*throwsException:

将异常抛出交给被调用处处理

ﻩ**/

ﻩpublicabstractintgetAllCount()throws Exception;

ﻩ/*

ﻩ*8、得到根据关键字查询得记录数

*paramkeyWord:

要查询得关键字

ﻩ*returnint :

将查询得记录数返回给被调用处

 * throws Exception:

将异常抛出交给被调用处处理

 *函数得重载

ﻩ**/

publicabstractintgetAllCount(String keyWord)throws Exception;

//真就是主题实现类,负责具体得操作

classCourseDAOImplimplements ICourseDAO{

ﻩprivate Connectionconn;

ﻩprivatePreparedStatementpstmt ;

publicCourseDAOImpl(Connectionconn){

//接收外部得数据库连接对象完成数据库得连接

ﻩﻩthis、conn=conn;

Override

ﻩpublicbooleandoCreate(Coursecourse) throwsException{

boolean flag= false;

Stringsql="Insert intoCourse(Cno,Cname,period,term,property) Values(?

?

,?

,?

)";

ﻩﻩthis、pstmt=this、conn、prepareStatement(sql);

ﻩﻩthis、pstmt、setInt(1, course、getCno());

this、pstmt、setString(2,course、getCname());

ﻩﻩthis、pstmt、setInt(3, course、getPeriod());

ﻩﻩthis、pstmt、setString(4,course、getTerm());

this、pstmt、setString(5,course、getProperty());

ﻩif(this、pstmt、executeUpdate()〉0){

ﻩﻩflag=true;

ﻩﻩ}

ﻩthis、pstmt、close();

ﻩreturnflag;

ﻩOverride

publicboolean doRemove(intcno)throwsException{

ﻩﻩbooleanflag=false;

ﻩStringsql=”Delete FromCourseWhereCno=?

";

ﻩthis、pstmt=this、conn、prepareStatement(sql);

this、pstmt、setInt(1,cno);

ﻩif(this、pstmt、executeUpdate()>0){

ﻩﻩflag =true;

ﻩﻩ}

ﻩthis、pstmt、close();

ﻩreturnflag ;

Override

ﻩpublicboolean doUpdate(intcno)throwsException{

ﻩﻩboolean flag= false;

ﻩﻩString sql ="UpdateCourseSetCname =?

,period=?

,term=?

property=?

WhereCno=?

";

ﻩﻩthis、pstmt=this、conn、prepareStatement(sql);

System、out、println(”输入您想要添加得课程得课程名:

");

ﻩStringcname =new Scanner(System、in)、next() ;

ﻩSystem、out、println(”输入您想要添加课程得学时:

");

ﻩintperiod=newScanner(System、in)、nextInt();

ﻩSystem、out、println("输入您想要添加得课程得上课学期:

”);

ﻩStringterm=newScanner(System、in)、next();

System、out、println("请输入您想要添加得课程得课程性质:

”);

ﻩﻩStringproperty=newScanner(System、in)、next();

ﻩthis、pstmt、setString(1,cname);

ﻩﻩthis、pstmt、setInt(2, period);

ﻩthis、pstmt、setString(3,term);

ﻩthis、pstmt、setString(4,property);

ﻩﻩthis、pstmt、setInt(5,cno);

ﻩﻩif(this、pstmt、executeUpdate()>0){

ﻩﻩflag=true;

ﻩ}

this、pstmt、close();

ﻩreturn flag ;

}

Override

publicListfindAll() throwsException{

ﻩList<Course>courses=newArrayList〈Course〉();

ﻩﻩStringsql="SelectCno,Cname,period,term,propertyFromCourse”;

ﻩthis、pstmt= this、conn、prepareStatement(sql);

ﻩResultSetrs =this、pstmt、executeQuery();

ﻩwhile(rs、next()){

ﻩﻩﻩCourse course=newCourse();

ﻩcourse、setCno(rs、getInt

(1));

ﻩcourse、setCname(rs、getString(2));

ﻩﻩcourse、setPeriod(rs、getInt(3));

ﻩﻩcourse、setTerm(rs、getString(4));

ﻩcourse、setProperty(rs、getString(5));

ﻩcourses、add(course) ;

ﻩ}

ﻩthis、pstmt、close();

ﻩreturn courses;

ﻩOverride

publicList findAll(String keyWord)throws Exception {

ﻩﻩList<Course> courses= newArrayList<Course>();

String sql="SelectCno,Cname,period,term,propertyFrom CourseWhereCnamelike?

”+

ﻩﻩﻩ"ORtermlike?

ORpropertylike?

" ;

ﻩthis、pstmt=this、conn、prepareStatement(sql);

ﻩthis、pstmt、setString(1, "%”+keyWord+"%");

ﻩﻩthis、pstmt、setString(2,"%”+keyWord+"%");

ﻩthis、pstmt、setString(3,”%"+keyWord+”%”);

ﻩResultSet rs=this、pstmt、executeQuery(); 

ﻩwhile(rs、next()){

ﻩCoursecourse =newCourse();

ﻩﻩﻩcourse、setCno(rs、getInt(1)) ;

ﻩcourse、setCname(rs、getString

(2));

ﻩcourse、setPeriod(rs、getInt(3)) ;

ﻩﻩcourse、setTerm(rs、getString(4)) ;

ﻩﻩcourse、setProperty(rs、getString(5));

ﻩcourses、add(course);

ﻩ}

ﻩthis、pstmt、close() ;

ﻩﻩreturncourses;

ﻩOverride

ﻩpublic Coursefind(intcno)throwsException {

ﻩCoursecourse=newCourse();

ﻩﻩStringsql= ”SelectCno,Cname,period,term,propertyFrom CourseWhereCno= ?

”;

ﻩﻩthis、pstmt=this、conn、prepareStatement(sql);

ﻩthis、pstmt、setInt(1,cno) ;

ﻩResultSetrs=this、pstmt、executeQuery();

ﻩwhile(rs、next()){

ﻩﻩcourse、setCno(rs、getInt(1));

ﻩcourse、setCname(rs、getString

(2));

ﻩﻩcourse、setPeriod(rs、getInt(3));

ﻩcourse、setTerm(rs、getString(4));

ﻩcourse、setProperty(rs、getString(5));

ﻩﻩ}

ﻩthis、pstmt、close();

ﻩreturncourse ;

ﻩ}

Override

publicintgetAllCount()throwsException{

intcount=0;

ﻩList<Course〉 courses =newArrayList〈Course>() ;

ﻩStringsql ="SelectCno,Cname,period,term,propertyFromCourse";

ﻩthis、pstmt=this、conn、prepareStatement(sql);

ﻩﻩResultSetrs= this、pstmt、executeQuery();

ﻩﻩwhile(rs、next()){

Course course =newCourse();

ﻩﻩcourse、setCno(rs、getInt

(1)) ;

ﻩcourse、setCname(rs、getString(2));

ﻩﻩcourse、setPeriod(rs、getInt(3));

ﻩcourse、setTerm(rs、getString(4));

ﻩﻩcourse、setProperty(rs、getString(5));

ﻩﻩcourses、add(course);

ﻩ}

count=courses、size();

ﻩﻩthis、pstmt、close();

ﻩﻩreturncount;

ﻩ}

Override

publicintgetAllCount(String keyWord)throwsException{

ﻩintcount = 0;

ﻩList〈Course>courses=newArrayList();

Stringsql=”SelectCno,Cname,period,term,propertyFrom CourseWhereCnamelike ?

" +

ﻩ"OR termlike?

ORpropertylike?

”;

ﻩthis、pstmt=this、conn、prepareStatement(sql);

ﻩthis、pstmt、setString(1, ”%"+keyWord +"%”);

ﻩthis、pstmt、setString(2, ”%”+keyWord+”%”) ;

ﻩthis、pstmt、setString(3, ”%”+ keyWord+"%");

ﻩﻩResultSet rs =this、pstmt、executeQuery();

ﻩﻩwhile(rs、next()){

Cou

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职业技术培训

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1