《图书管理系统java程序设计课程设计(论文)说明书.pdf》由会员分享,可在线阅读,更多相关《图书管理系统java程序设计课程设计(论文)说明书.pdf(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 目 录 第一章 前言.2 1.1 工作基础及应用环境.2 1.2 研究意义.2 1.3 进度安排及分组情况.2 第二章 开发环境的集成.3 2.1 ECLIPSE及 JDK 的安装配置.3 2.2 SQL SERVER 2005 的优点以及使用安装.5 第三章 系统需求分析及实现目标.5 3.1 系统需求分析.5 第四章 图书管理系统设计.7 4.1 图书管理系统模块划分.7 4.2 图书管理系统功能图.8 4.3 图书管理系统的数据文件结构及功能.8 第五章 实现过程.9 5.1 用户注册登录模块的实现.9 5.2 主界面模块.11 5.4 借还登记模块.12 5.4.3 借还登记模块部分
2、源代码.13 5.5 读者信息管理模块.14 第六章 总结.17 参考文献.18 致谢.18 第一章 前言 1.1 工作基础及应用环境 本图书管理系统采用 JAVA 语言编写,软件以 Windows 操作系统为环境,数据库使用 SQL Server2005,开发工具使用 eclipse。1.2 研究意义 图书馆是高等院校的重要组成部门,是教师和学生获取知识的重要场所。随着校园网的发展,各高等院校的图书馆都开始使用“图书管理信息系统软件”开展工作。由于目前市场上的软件大多只是一些条框,没有形成特定环境下工作的图书管理系统。特别是各图书馆之间、图书馆与读者及管理者之间要互连互通,共享信息资源。本软
3、件就是基于这种背景而开发设计的。图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较
4、突出,这就是管理信息系统的开发的基本意义。1.3 进度安排及分组情况 序号 时间 内容 1 12 月 12 日 选定课题,查阅相关资料 2 12 月 13 日 划分模块、小组成员分工,编制源程序 3 12 月 14 日12月19日 编制源程序 4 12 月 20 日 上机调试,修改、完善系统 5 12 月 21 日 撰写课程设计报告,上机调试,修改、完善系统 6 12 月 22 日 撰写课程设计报告 7 12 月 23 日 提交课程设计报告、图书管理系统 分组情况*:图书管理模块*:借还登记、读者信息管理*:登陆、主界面*:读者注册、密码修改*:关于、帮助 第二章 开发环境的集成 2.1 Ec
5、lipse 及 JDK 的安装配置 2.1.1 Eclipse 安装配置 Eclipse 安装:1.执行安装:非常之简单,从服务器上获取 eclipse-SDK-3.0.1-win32.zip 文件,解压缩到任意一个路径名不包含空格的目录下即完成了安装过程,例如C:eclipse。下文中将用$ECLIPSE_HOME指代。2.验证安装:执行$ECLIPSE_HOMEeclipse.exe程序,如果启动过程正常完成,那么Eclipse 的安装过程就可以宣告成功,如果启动过程出现 JDK或者JRE一类的错误,那么就意味着你的系统没有正确地安装并配置JDK,这里有两种情况,一为Eclipse 启动程
6、序在当前系统 PATH路径上找不到 java.exe和javaw.exe 文件,二为找到了这两个文件,但是版本低于 1.4,因为 Eclipse3.0.1 要求 JRE的版本为 1.4+,而 WINDOWS 系统自带的 JRE 版本为 1.3,解决办法是把你自定义安装的JDK的bin目录添加到系统PATH路径的最前面,或者至少在%SystemRoot%和.Oraclejre1.3.1bin 的前面。Eclipse 基本配置:1.Eclipse的自定义选项主要集中在“Window”菜单 请根据你个人的喜好去定义自己的透视图,缺省的透视图往往不太雅观。2.设置“Preference”,主要配置“W
7、orkbench”和“Java”选项。里面的东西都很简单很直观,每个子选项都打开看看,可能需要修改的地方很多,改与不改大家见仁见智,在此仅列举最可能需要自定义的选项:2.1JavaBuild PathUser Libraries 将你的第三方 Libraries 设置 2.2JavaCode StyleCode Formatter/Code,Templates 可能需要根据项目规约定义统一的编码风格 2.3JavaInstalled JREs 检查 Eclipse 当前使用的 JRE 是不是你所期望的 2.4JavaEditor 可以使你的 Eclipse 上显示 JAVA 代码比别人机器上的
8、美观 2.5WorkbenchColors Fonts 设置 Eclipse 所用的字体和颜色 2.6WorkbenchEditor JAVA 代码之外的编辑器属性在这里配置 重要提示:一般来说我们需要自定义 Code,Formatter/Code,Templates 来适应规约的要求,例如文件头注释应该包含对方客户或己方公司的版权声明;代码的缩进、换行、对齐等应该符合指定的要求。2.1.2 JDK 的安装配置 下载好最新版 JDK 开发工具后,接受默认安装即可,在配置 JDK 运行环境时注意两个方面:(1)增加命令寻找路径,修改系统变量 Path,增加指向 Java 常用工具安装的路径,如C
9、:Program FilesJavajdkl.6.0_03bin。(2)设置环境变量 ClassPath,指向 java 安装路径下的库文件所在目录,如 C:Program FilesJavajdkl.6.0_03lib。设置步骤:(1)右键单击“我的电脑”属性系统属性环境变量Path (2)在“Path”中设置合适的 Java 路径下的库文件目录,完成添加直至在系统变量中找不到 Path。(3)在上图的系统变量窗口中,单击“新建”,添加 ClassPath 的环境变量,值为 java 安装路径下的库文件所在目录 2.2 SQL Server 2005 的优点以及使用安装 2.21 SQL S
10、erver 2005 的使用安装 SQL Server 2005的优点:(1)实现表和索引数据分区(2)实现数据库可编程的效果(3)复制功能增强(4)语言功能增强,可进行错误处理 安装:先安装 SQL Server 2005 的安装程序,然后再安装 SQL Server 2005。选择默认路径,可以按着程序安装进度的相关提示进行安装。在安装成功后,记得重新启动,从而进行安装其他的添加功能。2.2.2 SQL Server 2005 的 JDK 驱动问题 对 CPU 要求:Pentinum兼容处理器或性能更好的处理器,主频不低于 1GHz。对内存要求:企业版,标准版,工作组版,开发版和网络版需内
11、存不小于 512MB;学习版的内存不小于 256MB。硬盘空间需求:根据安装需要,硬盘最小在 2GB 以上。第三章 系统需求分析及实现目标 3.1 系统需求分析 (一)系统开发的初步调查 在开发的前期进行各项调查的目的是明确系统的开发目标和规模,它是对系统进行可行性研究的基础。图书馆作为政府,学校,以及一些其他办学机构所开办的公众性场所,其商业性质不能和其他商业机构相提并论。它的规模和大小主要依据兴办单位的规模和实力来定位的,大的图书馆有国家级的图书馆和一些省市所投资兴建的图书馆,小一些的则像学校的图书馆,图书出租屋等。所以,考虑系统面向的场所和规模,为系统的开发做准确的定位是十分必要的。就其
12、大小和性质而言,它有哪些特点呢?(1)一般来讲,图书馆的规模决定藏书量的大小。例如,以学校的图书馆来说,它面向的对象大都是学生和教师等范围,在学校这样一个不是很大范围内,藏书量没有必要达到一些较大图书馆的规模,只要能够满足学校范围内的需求就可以了。当然,如果能够作到尽善尽美更好,但是学校的资金和场地能否达到也是要考虑的。所以,面向的对象决定图书馆的规模,也就决定了图书馆的藏书的规模。(2)图书馆作为提供学习的场所,不仅要求便于管理,而且要求对读者和借阅者提供方便快速的查找,借阅和登记手续。一个好的图书馆不仅仅看它的藏书的种类和数量是否齐全,还要看它的管理机制是否健全。这不仅仅是人的因素,还有操
13、作手段和途径,比如一个好的图书管理系统。(3)图书馆需要统一图书的管理,对各类书籍的借阅情况和图书馆的现有藏书数量,种类要及时掌握,这就要求它具有很强的时效性。为了减少旧书和大量内容重复多余的图书占用有限的空间而又要尽量做到图书种类的齐全,作为图书馆的管理人员来说需要及时地对图书进行上架和注销的处理。有些图书如周刊,报刊,杂志等更换的频率较高,有时需要每天更换,而有些大型图书则可能几年才更换一次。这些信息的发布和注销要求管理员及时掌握,时效性非常重要。(二)系统可行性研究分析 可行性分析是在进行初步调查后所进行的对系统开发必要性和可能性的研究,所以也称为可行性研究。信息系统也应从技术可行性,经
14、济可行性和社会可行性三方面来论证。通过长时间的观察与实践,我认为图书馆管理系统的可行性分析如下:(1)经济可行性分析 作为图书馆这样的商业性质较小的场所,其经济成分比重相对较少,主要是支出的费用:其中包括设备购置费、软件开发费用、管理和维护费、人员工资和培训费等。由于各个图书馆实行统一操作,系统共享,其设备购置,人员工资,维护费用相对较少,前期的资金投入主要集中于购置图书上。建立信息中心,可将来自各方面的信息集中管理,提高图书管理的计划性和预见性,快速地反馈市场信息。(2)技术可行性分析 技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要,各类技术人
15、员的数量,水平,来源等。图书馆管理系统的工作主要是在读者和图书馆之间架起一座桥梁,能相互沟通信息和处理信息。这一特点非常适合计算机特点,通过网络 internet技术,发挥计算机的信息传输速度快、准确度高的优势。计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。(3)社会可行性分析 社会可行性有时也称为操作可行性,主要论证新系统在企业或机构开发和运行的可能性以及运行后可能一起的对企业或机构的影响,即组织内外是否具备接受和使用新系统的条件。在当前信息技术飞速发展的大环境下,计算机技术和软件技术的更新是图书馆完全有可能也有能力采用这样先进的管理技术。它对图书馆带来的影响可以看到:(a)对
16、传统管理理念的冲击,可能引起管理层的变动和人员的调整。(b)对图书馆工作人员的要求提高,使图书馆在一定的可能下进行机构精简,迫使工作人员继续学习新知识,拓宽图书馆在市场环境下的生存空间。对图书馆与读者之间业务方式的转变和扩充。3.2 系统实现目标 根据图书馆日常图书管理工作的需求和图书借阅的管理流程,该系统实施后,应该达到以下目标:1.界面设计友好、美观,数据存储安全、可靠。2.基本信息设置保证图书信息和读者信息分类管理。3.强大的查询功能,保证数据查询的灵活性。4.实现对图书借阅、续借、归还流程的全程数据信息跟踪。5.提供管理员修改信息、密码等功能、保证管理的安全性。6.提供灵活、方便的权限
17、设置,是整个系统的管理分工明确。本图书管理系统主要用于对图书馆日常工作的管理,主要任务是用计算机对读者、图书等各种信息进行日常管理,如查询、修改、增加、图书借阅和图书归还的管理等。本系统实现了图书馆的信息化管理,完成了图书管理系统的基本功能。第四章 图书管理系统设计 4.1 图书管理系统模块划分 管理员登陆模块 序号 功能列表 备注 1 管理员登陆 通过登录进入主界面 2 管理员管理模块 序号 功能列表 备注 1 管理员密码修改 对登录的密码进行修改 2 读者注册 管理员对读者信息的添加 图书管理模块 序号 功能列表 备注 1 查询书籍 管理员对图书的信息查询 2 添加书籍 管理员对图书的信息
18、添加 3 修改书籍 管理员对图书的信息修改 4 删除书籍 管理员对图书的信息删除 图书借还管理模块 序号 功能列表 备注 1 读者借书登记 管理员对读者的借书信息进行登记 2 读者还书登记 管理员对读者的还书信息进行登记 读者信息管理模块 序号 功能列表 备注 1 读者信息修改和删除 管理员对读者的的信息进行修改或删除 2 读者信息查询 管理员对读者的的信息进行查询 帮助模块 序号 功能列表 备注 1 关于 主要是一些此系统的工作环境的说明 2 帮助 主要写各个模块功能的解释说明 4.2 图书管理系统功能图 4.3 图书管理系统的数据文件结构及功能 4.3.1 管理员表 login 字段名 类
19、型 长度 说明 uername char 10 管理员登陆名 password char 10 管理员密码 4.3.2 读者表 duzhe 字段名 类型 长度 说明 duzheID char 10 读者 ID name varchar 50 姓名 xibie varchar 20 系别 sex char 2 性别 addr varchar 30 地址 tel char 15 电话 4.3.3 图书表 字段名 类型 长度 说明 Bno Char 10 图书号 Bname varchar 20 图书名 Bprice money 价格 Bwriter varchar 10 作者 Bpress var
20、char 30 出版社 Btier varchar 50 类别 4.3.4 借还书表 jiehuanshu 字段名 类型 长度 说明 Bno char 10 图书号 duzheID char 10 读者 ID jietime datatime 借书时间 huantime datatime 还书期限 jiehuantime datatime 还书时间 第五章 实现过程 5.1 用户注册登录模块的实现 5.1.1 登录模块效果图 5.1.2 登录界面实现技术和功能说明 功能和技术简介:由于图书管理员一般是不进行改变的,所以管理员根据自己的密码进行登录,输入正确的用户名和密码后,登陆界面关闭,弹出主
21、界面。同时,运用字体更改的技术,还涉及控件透明的技术。说明(管理员的用户名和密码是通过 java1433 端口进行连接,用户名和密码是在数据库中进行设计的)。5.1.3 登录模块的部分源代码 import java.sql.*;public class LianJie public static Connection getConn()Connection conn=null;/JAVA连接 String url=jdbc:sqlserver:/localhost:1433;databaseName=BookMassage;String username=sa;String password=
22、123;try public class Login extends JFrame implements ActionListener JLabel label1,label2,label3,label4;public Login()super(小型图书管理系统);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);p1=new JPanel();this.getContentPane().add(p1);p1.setLayout(null);this.setBounds(100,50,450,500);icon=new ImageIcon(
23、JieShu.class.getResource(XJbeijing.jpg);label1=new JLabel(icon);public void actionPerformed(ActionEvent e)if(e.getSource()=button1)conn=LianJie.getConn();String username2=text1.getText().trim();String password=new String(text2.getPassword();String sql=select*from login where uername=?;if(username2.l
24、ength()=0|password.length()=0)5.2 主界面模块 5.2.1 主界面效果图 5.2.2 主界面实现技术和功能说明 功能和技术简介:管理员登陆成功后,进入主界面。主界面是运用菜单条和每个子菜单组成。同时,设计背景图片中,运用了控件透明的技术。在右下角标明制作单位等信息。例如:将鼠标移动到借还登记时,会出现一个下拉列表,包括借书登记、还书登记的子菜单。点击借书登记或还书登记,会出现相应的子窗口。5.2.3 主界面模块源代码 import java.awt.*;import java.awt.event.*;import javax.swing.*;public cla
25、ss Main extends JFrame implements ActionListener JLabel label1,label2;JMenuBar bar;JMenu menu1,menu2,menu3,menu4,menu5,menu6;JMenuItem menu11,menu12,menu21,menu22,menu23,menu24,menu31,menu32,menu41,menu42,menu51,menu52;JDesktopPane pan;/声明一个桌面窗体作为父窗体,通过继承JIternalFrame作为子窗体 Font font1,font2;JInternal
26、Frame frame1;/申明子窗体 ImageIcon icon;icon=new ImageIcon(JieShu.class.getResource(library.jpg);label1=new JLabel(icon);this.getLayeredPane().add(label1,new Integer(Integer.MIN_VALUE);label1.setBounds(0,0,icon.getIconWidth(),icon.getIconHeight();pan.add(label1);menu11.addActionListener(this);menu12.addA
27、ctionListener(this);menu21.addActionListener(this);menu22.addActionListener(this);menu23.addActionListener(this);menu24.addActionListener(this);menu31.addActionListener(this);menu32.addActionListener(this);menu41.addActionListener(this);5.4 借还登记模块 5.4.1 借还登记模块效果图 5.4.2 借书登记实现技术和功能说明 功能和技术简介:管理员进入主界面
28、后,点开借书登记窗口,输入正确的图书号和读者ID点击确定,就能弹出借书成功。这里面借书时间是取用系统时间,还书期限就是我们自己定义的一个图书最多借阅的时间。这里面最难的一个部分是监听,首先,图书号要查询数据库中的图书信息表。同时,读者ID需要查询数据库中的读者信息表,这里涉及两个表的内容,所以,在做监听时一定要注意IF语句的嵌套。5.4.3 借还登记模块部分源代码 public JieShu()super(借书登记);p=new JPanel();this.setBounds(100,50,450,500);this.getContentPane().add(p);p.setLayout(nu
29、ll);icon=new ImageIcon(JieShu.class.getResource(JSbeijing.jpg);label1=new JLabel(icon);label1.setBounds(0,0,icon.getIconWidth(),icon.getIconHeight();label2=new JLabel(借书登记);font1=new Font(楷体,Font.BOLD,40);font2=new Font(华文行楷,Font.BOLD,25);font3=new Font(楷体,Font.CENTER_BASELINE,20);label2.setFont(fon
30、t1);5.4.4 还书登记模块效果图 5.4.5 还书登记实现技术和功能说明 功能和技术简介:管理员进入主界面后,点开换书登记窗口,这时管理员可以直接选择输入图书号进行还书,也可以直接点下面的表格进行还书。这里还书时间是用的系统直接生成的时间。将还书时间加到数据库的借还书表中。同时,管理员检查还书在数据库中的数据改变没,可以点击刷新按钮,来进行确定。5.4.6 还书登记模块的部分源代码 public HuanShu(Main framel)this.setTitle(还书登记);this.framel=framel;label2=new JLabel(从下表中选择要还书的记录,或者直接输入正
31、确的图书号:);label2.setFont(new Font(楷体,Font.BOLD,14);label2.setBounds(10,5,400,20);sql=select*from jiehuanshu;this.setBounds(90,20,800,550);pageRow=15;/声明每页显示10行记录 pan=new JPanel();pan.setLayout(null);this.getContentPane().add(pan);name=new String图书号,读者ID,借书时间,还书期限,还书时间;data=new ObjectpageRowname.length
32、;Connection conn=LianJie.getConn();Statement st;ResultSet rs;ry st=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);/带参数结果集的游标可以往复移动 rs=st.executeQuery(sql);rs.last();/结果集的游标移动到最后一条记录 tableData=new Objectrs.getRow()name.length;rs.first();/结果集的游标移动到第一条记录 if(rs.getRow
33、()0)5.5 读者信息管理模块 5.5.1 读者管理模块效果图 5.5.2 读者信息查询实现技术和功能说明 功能和技术简介:管理员进入主界面后,点开读者信息查询窗口,这时管理员可以直接选择输入读者ID或者输入其他信息进行查询,还可以选择单击读者ID,会出现读者ID下拉列表进行查询。读者ID的下拉列表时根据数据库中读者ID的信息进行自动更改的。5.5.3 读者管理模块部分源代码 import java.awt.*;import javax.swing.*;import javax.swing.table.*;import java.awt.event.*;import java.sql.*;p
34、ublic class XiuGai extends JInternalFrame implements ActionListener JPanel pan;JScrollPane span;JTable table;JTableHeader tableh;JLabel label1,label2,label3,label4,label5,label6,label7 JTextField text1,text2,text3,text4,text5,text6 JButton button1,button2,button3,button4,button5;int rowCount,pageCou
35、nt,pageAt,pageMod;/声明总记录数、总页数、当前页、最后页的记录数 Object data,tableData;/声明Object类型的二维数组、与表格(Table)的单元格对应 int pageRow;/声明每页显示的记录数 String name;/声明表头 String sql,duzheID;Font font1;JInternalFrame frame;Main framel;public XiuGai(Main framel)5.5.4 读者信息修改和删除效果图 5.5.5 读者信息修改和删除实现技术和功能说明 功能和技术简介:这个功能与还书功能有许多相同,也有些不
36、同。我就说下不同的部分。点击下面表格内容,相应的上面文本框中就会出现读者的信息。在上面文本框中读者ID是不可以更改的。其他的所有的都能够更改。为完善功能,我们在下面表格中可以进行修改。删除是你选中想要删除的对象,点击删除就可以。5.5.6 读者信息修改和删除部分源代码 import java.awt.*;import javax.swing.*;import javax.swing.table.*;import java.awt.event.*;import java.sql.*;public class XiuGai extends JInternalFrame implements Act
37、ionListener JPanel pan;JScrollPane span;JTable table;JTableHeader tableh;JLabel label1,label2,label3,label4,label5,label6,label7;JTextField text1,text2,text3,text4,text5,text6;JButton button1,button2,button3,button4,button5;int rowCount,pageCount,pageAt,pageMod;/声明总记录数、总页数、当前页、最后页的记录数 Object data,ta
38、bleData;/声明Object类型的二维数组、与表格(Table)的单元格对应 int pageRow;/声明每页显示的记录数 String name;/声明表头 String sql,duzheID;Font font1;JInternalFrame frame;Main framel;public XiuGai(Main framel)this.setTitle(读者基本信息修改);/super(查询结果);/this.sql=sql;this.framel=framel;label2=new JLabel(从下表中选择要修改的记录,或者直接输入正确的读者ID:);label2.set
39、Font(new Font(楷体,Font.BOLD,14);第六章 总结 两周的java课程设计做完啦,感觉是回想起来真的好短暂,好充实,每天,几乎没有浪费一分一秒的过着 在做图书管理系统中,我被组长分为制作图书借还和读者信息管理模块,分配任务后我迫不及待的开始进行我模块的代码制作,在制作过程中我不知道我的源代码改变了多少次,但是还是有些监听以及触发器的制作不够完善,我记得我还有一个监听做出来后,我自己觉得我的设计思想和设计概念是正确的,但是就是出来的窗口和我想象中的不一样,在这个监听上我花费了打大量时间查询了不少资料,通过同学和老师的帮助,在自己不懈努力下,终于完成啦,在那一瞬间,我感觉到
40、无比的骄傲和自豪,通过自己努力的来的东西,是我最大的收获。课程设计中,不仅提高了我们的专业知识应用能力,也增强了同学之间的友谊。然而通过这次的课程设计发现自己的学习能力还是和周围的同学有差距的。尤其是学习一些新的东西自己的能力确实差。比如说在程序的实现上,在监听的制作上。通过这次的课程设计使我对java有了更大的兴趣,它是一门有趣的语言,通过亲手编出的界面之类的感觉自己很有成就感。但是还是得好好努力。通过这次课程设计使我懂得了什么才是真正的团队协作,团队协作的重要性。为以后工作打下了坚实的思想基础。通过这次的课程设计使我全面系统的理解了JAVA程序设计语言的一般原理和基本实现方法。把死板的课本
41、知识变得生动有趣,激发了学习的积极性。然而知识上的收获重要,精神上的丰收更加可喜。让我知道了学无止境的道理。参考文献 1高林,周海燕.管理信息系统与案例分析.2004 版.北京:人民邮电出版社,2004年 11 月 2罗榜圣.管理信息系统.2005版.重庆:重庆大学出版社,2005年 9 月 3 陈佳编著.信息系统开发方法教程.2000版.北京:清华大学出版社,2000年3 月 4 薛成华主编.管理信息系统.2000版.北京:清华大学出版社.2000年 7 月 致谢 最后,我要感谢我们的组长,是她默默地付出,为我们系统完成最困难的地方,带领我们一步步完成系统的制作。其次,要感谢在本次 JAVA 课程设计中我们的指导老师陶国喜老师,在平时的教学中,交给我们许多的知识,每次上他的课就感到特别充实。同时,在课程设计过程中,他不仅亲切随和的从思路上指导我们,还在各程序细节中给了我们莫大的帮助。对于老师给予我们的孜孜不倦的教导和帮助,非常的感动。辛苦了老师。