《Web应用开发》课程教学大纲
课程编号:136033
课程名称:Web应用开发/Web Application Development
课程总学时/学分:80学时/4学分(其中理论48学时,实验32学时)
适用专业:计算机类专业
一、课程简介
《Web应用开发》是计算机类专业一门专业课程,主要介绍JSP技术及其应用。重点介绍JSP基本语法,主要包括JSP变量及方法的声明、java程序片、java表达式、注释以及JSP指令标记和JSP动作标记;JSP内置对象;JavaBean技术及其应用;Servlet技术及其应用;JDBC数据库编程技术及其应用;MVC设计模式及其应用;JSP常用组件技术及其应用;EL&JSTL技术及其应用;Web应用项目开发等。本课程旨在提高学生分析问题和解决问题的能力,培养学生综合应用和实践动手能力。
二、教学目的和任务
根据学校“一体两翼,三经四纬,五个保障”的宏观人才培养模式,以及计算机科学与技术专业人才培养方案要求。通过本课程的教学要使学生学会运用JSP技术进行软件开发,以达到培养J2EE初级软件开发工程师的目标任务,彰显学校应用型人才培养的特色。
三、教学基本要求
本课程的内容从知识、素质、能力、德、智、体、美七个维度形成教学内容方阵,每一次课一般安排3-5个知识点,从七个维度组织内容,分课内、课外开展教学。
1.素质培养
(1)思想政治素质
培养学生具有中国特色社会主义共同理想,秉承社会主义核心价值观;具有爱国主义精神;具有责任心和社会责任感。
(2)文化素质
培养学生具有不断更新知识和自我完善的能力;具有持续学习和终身学习的能力;具有一定的创新意识、创新精神和创新能力;具有一定的人文和艺术素养;具有良好的人际沟通能力。
(3)专业素质
使学生掌握JSP开发技术的基本知识;培养学生运用JSP技术进行软件开发能力;使学生具有一定的软件设计、调试能力;以至于培养学生利用基本知识、基本技能,解决实际问题的能力。
(4)职业素质
培养学生具有良好的职业道德和职业操守,具有较强的组织观念和集体意识;培养学生的规范意识和标准意识等。
(5)身心素质
培养学生具有人文素养、审美能力、团结协作精神,具有健康的体魄和良好强健的心理素质,以及适应社会能力素质。
2.能力培养:集中训练学生逻辑思维能力、综合应用和实践能力、软件设计和开发能力等。
3.德育培养:贯彻课程思政精神,在学习中结合知识点开展文化、思想、政治等教育加强爱国主义教育。软件设计开发就是现实世界的虚拟化,集合了人们的人生观、世界观、方法论。因此,在课程教学中结合知识点开展文化、思想、政治等教育将会有更佳的效果。
4.智育培养:软件设计开发是学生智力和创新能力的最好体现,通过软件设计开发以培养学生自主学习能力,启迪与激发学生的创新能力,让学生的智育得到进一步提高。
5.体育培养:编程是既是一种脑力劳动,又是一种体力劳动,要求学生不仅要有毅力还要有体力。在编程过程中,要耐得住寂寞,经得起加班,平时一定要加强体育锻炼,提高学生的体质。
6.美育培养:通过编程技巧和编码规范来让学生学会欣赏程序,进而让学生爱上程序和编程,体验编程过程和不计其数的调试过程以及最终成功的喜悦和成就感,体会编程的魅力。
四、教学内容与学时分配
(一)JSP的基本语法(4学时)
1.知识点
(1)JSP页面的构成元素;
(2)JSP页面的指令标记,主要包括page指令、include指令、taglib指令;
(3)脚本元素,主要包括变量和方法声明、Java表达式、Java脚本等;
(4)JSP注释;JSP的动作元素,主要包括
2. 重点
JSP页面中常用的指令标记、Java程序片及动作标记等。
3. 难点
JSP指令标记、程序片、动作标记等在实际项目中的灵活运用。
(二)JSP内置对象(6学时)
1.知识点
(1)request对象,重点讲授获取客户端表单信息,特别是中文乱码产生的原因和解决方法、getParameter(String name)方法等;属性方法setAttribute(String name,Object object)和getAttribute(String name)等;请求头信息;获取客户端信息;获取服务器端信息。
(2)response对象,重点讲授页面的重定向;与头信息相关方法;操作Cookie;获取和修改页面的编码方式;获取输出对象;获得二进制输出流*;设置响应头信息的长度*;操作MIME类型*;对响应的状态行内容的改变*等
(3)session对象,重点讲授session的概念;与session对象属性相关的方法;与session对象自身相关的方法;session对象的生存期限;session对象的应用。
(4)out对象、application对象、page对象、exception对象、config对象、pageContext对象,重点讲授application、pageContext对象。
2.重点
request、response、session、pageContext对象及其常用方法。
3. 难点
request、response、session等对象在项目中的灵活运用,网页中中文汉字乱码的灵活处理。
(三)JavaBean技术及其应用(4学时)
1.知识点
(1)JavaBean概述;
(2)JSP页面中如何使用JavaBean,JavaBean对象值的注入和显示;
(3)JavaBean的生命周期:page、request、session、application。
(4)JavaBean技术的应用,主要讲授JSP+JavaBean设计模式的应用。
2. 重点
JavaBean规范、生命周期和JSP+JavaBean设计模式。
3. 难点
灵活运用JSP+JavaBean设计模式的解决现实问题。
(四)Servlet技术及其应用(8学时)
1. 知识点
(1)Servlet的概念、XML和简单编程及其运行;
(2)Servlet的工作原理及其生命周期;
(3)Serlvet常用接口和类,Servlet应用:过滤器和监听器;
(4)MVC设计模式及应用应用,即JSP+JavaBean+Servlet设计模式。
2. 重点
Servlet的工作原理及其生命周期,过滤器,MVC模式。
3.难点
MVC设计模式在实际开发中的灵活运用。
(五)JDBC数据库编程技术及其应用(10学时)
1.知识点
(1)数据库管理系统概述,JDBC简介,JDBC数据库编程的步骤及基于其步骤的编程;
(2)JDBC编程中的更新、插入、删除和查询等操作及其封装成的工具类;
(3)三层架构(表示层、业务逻辑层和数据访问层)思想,基于三层架构和JDBC工具类的应用开发。
(4)数据库连接池及其应用,结合数据库连接池把JDBC工具类进一步完善。
2. 重点
DriverManager类、Connection接口、Statement接口、PreparedStatement接口和ResultSet接口等到基于这些类和接口而封装成JDBC工具类及其应用。
3. 难点
基于三层架构和JDBC工具类在项目开发中的灵活应用。
(六)JSP常用组件及其应用(4学时)
1.知识点
(1)操作Excel文档、Word文档、PDF文档和图表的组件介绍;
(2)jspSmartUpload组件的主要API;
(3)使用jspSmartUpload组件实现文件上传及其应用;
(4)使用jspSmartUpload组件实现文件下载及其应用。
2. 重点
文件上传下载组件、图表组件等及其应用。
3. 难点
常用组件特别是jspSmartUpload组件在实际项目开发中的灵活应用。
(七)EL&JSTL技术及其应用(6学时)
1.知识点
(1)JSTL标签简介及JSTL标签配置;
(2)EL表达式,主要包含EL表达式的基本语法、EL表达式隐含对象、EL运算符、EL函数等;
(3)JSTL的常用标签,分支标签及其应用,迭代标签及其应用、URL相关标签等;
(4)EL&JSTL在实际项目的应用。
2. 重点
EL表达式及JSP常用标签、分支标签和迭代标签。
3.难点
EL表达式及JSP标签等在实际项目开发中的灵活应用。
(八)Web应用项目开发(6学时)
1.知识点与要求
(1)教师可以根据自己的研究领域和Web应用开发方面的技术设计一些项目让学生完成,也可以让学生自拟项目经教师审核批准后让其完成;
(2)设计的Web项目最好是以团队为单位进行开发,一般一个团队3-7人为宜;
(3)教师应运用软件工程的思想指导学生完成Web项目的开发。
2. 重点与难点
三层架构思想、基于数据连接池的JDBC工具类在Web项目中的综合应用。
五、教学方法及手段
根据学生的实际情况,结合本课程的特点,为提高教学效果,实现课程的教学任务和目标,贯彻“以学生为主体,教师为主导”的教学理念,课程采用以任务驱动法、案例分析法、分组讨论法、通过网络课程线上线下相结合等多种教学方法和手段,鼓励学生通过自主学习、小组合作的方式学习,以培养他们的自主学习能力。兴趣是最好的老师,在教学过程中将以兴趣为先导,精心设计上机实践题目,培养学生分析问题、解决问题、动手实践能力以及团队协作能力。鼓励学生多角度思考问题,对同一问题提供多种算法,培养学生的创新思维。
六、实验或上机内容
实验一:JSP指令和内置对象的综合应用
1.使用JSP的基本语法、指令标记、动作标记和内置对象等完成用户信息的提交和显示的操作。
2.设计JSP页面的最顶部有LOGO、最低部有版权信息、中间部分显示页面主题内容。
3.学生要完成前述两项的内容和要求,特别是指令标记、动作标记和内置对象request、response、out、session等要在实验中使用。
4.学生按上述要求完成该实验项目,教师检查每个学生的完成情况。
5.学生要提交完整的web项目(能够发布运行),或实验报告;且每个学生都要提交。
6.学生要单人单机实验。
实验二:MVC及三层架构综合应用
1.分析与研究教师指定项目的静态页面,创建数据库及其表;
2.使用JSP、JavaBean、Servlet和三层架构(表示层、业务逻辑层和数据访问层)完成项目编程实现:
(1)使用JdbcUtil工具类完成数据访问层的操作。
(2)表示层、业务逻辑层和数据库访问层之间要使用接口。
(3)项目实现的流程一般是JSPàServletà业务逻辑层à数据访问层à数据库,Servlet获取的数据在JSP页面展示。
3.学生按上述要求完成该实验项目,教师检查每个学生的完成情况。
4.学生要提交完整的web项目(能够发布运行),或实验报告;且每个学生都要提交。
5.学生要单人单机实验。
实验三:JSP常用组件及其应用
1.根据常用组件设计综合项目,完成上传下载组件、动态图表组件、PDF文件操作组件或Excel组件的应用等。
2.设计的项目一般至少要使用jspSmartUpload或Commons-FileUpload组件完成文件上传和下载的功能。
3.学生按教师的要求完成该实验项目,教师检查每个学生的完成情况。
4.学生要提交完整的web项目(能够发布运行),或实验报告;且每个学生都要提交。
5.学生要单人单机实验。
实验四:EL&JSTL技术及其应用
1.把Web项目中JSP页面的Java程序片和Java表达式等用EL或JSTL来实现。
2.实验所需Web项目可由教师指定或学生自选(要教师审核批准);把Ajax技术尽量应用到实验项目中。
3.学生按上述内容和要求完成该实验项目,教师检查每个学生的完成情况。
4.学生要提交完整的web项目(能够发布运行),或实验报告;且每个学生都要提交。
5.学生要单人单机实验。
七、先修课程、后续课程
先修课程:《面向对象程序设计(Java)》、《Web开发基础》、《数据库原理及应用》
后续课程:《框架编程技术》
八、考核方式
为了提高学生出勤率,改善上课方式、突出学生的主体地位,加强学生的动手和实践能力,让学生能够充分体会软件开发方法、过程和团队协作等,可以采用灵活多样的考核方式,可以使用如下的方式,但不限于此。
1. 传统的考核方式:最终成绩 = 平时成绩(20%)+ 期末成绩(80%),详见考试大纲。
2. 过程化考核方式:最终成绩 = 考勤成绩(10%)+ 过程成绩(90%),详细内容参见过程化考试方案。
九、教材及主要参考资料
[1] 贾志城、王云,《JSP程序设计》人民邮电出版社,2016年4月。
[2] 郭珍、王国辉,《JSP程序设计教程》,人民邮电出版社,2014年3月。
[3] 王国辉、李文立等,《JSP数据库系统开发完全手册》,人民邮电出版社,2010年5月。
[4] 陈丹丹、高飞,《JSP项目开发全程实录》,清华大学出版社,2013年12月。