SPOC学校专有课程
JAVA高级编程技术
分享
spContent=企业Web应用的开发效率一直以来是应用开发者关注的问题。为了提高开发效率,市场上出现了很多应用框架,Spring框架无疑是其中优秀的代表。Spring作为一个开源框架,带给开发者编程艺术和体验上的享受。Spring具有非常好的设计理念和众多的技术优势。Spring Boot让Spring应用的开发变得简单和高效,进而实现快速应用开发。本课程将介绍Spring和Spring Boot的主要知识体系。在Spring应用环境中,软件设计就像搭积木,Spring提供了丰富的工具,我们可以轻松地实现基于Web的数据库应用开发。本课程介绍了使用JdbcTemplate、JPA以及MyBatis等多种数据库访问形式。数据库除MySQL关系数据库外,还介绍了MongoDB数据库的访问。Spring还支持面向实时交互的WebSocket编程以及响应式应用开发。课程学习强调实战,不少实例适当美化和改进后就可以成为实用的应用模块。希望课程能够为您的应用开发添砖加瓦。
—— 课程团队
课程概述

  课程较系统地介绍Spring框架的核心思想和编程技术,重点围绕应用来介绍Spring和Spring Boot的知识体系,包括基于MVC和数据库访问的Web应用,基于WebSocket的实时通信应用,用Spring安全来进行应用系统的安全规划等。课程案例有:基于MVC的虚拟网盘案例,网络考试系统,资源共享网站设计以及利用各种技术分别实现的聊天室应用等。

   课程内容丰富,符合时代发展要求,教学设计有如下特色:

 (1)内容新颖。按循序渐进原则系统介绍Spring 和Spring Boot 的技术特征和知识体系。

 (2) 学用结合。注重理论与实际的结合,强调在实战中增进学生对相关知识概念的理解。 

 (3)项目导向。各部分知识结合案例讲解,案例实用性强,有利于学生专业能力培养。

授课目标

  目标1.掌握Spring框架的基础知识,理解IOC和AOP的概念,理解所需工程的构建方法,熟悉 STS工具的使用;

  目标2.熟悉面向切面编程,MVC编程及响应式编程的思想,养成良好的编程习惯,在编程训练中培养计算思维能力和科学精神;

  目标3.熟悉Spring 数据库访问方法,了解消息通信编程和WebSocket编程,利用Spring Boot相关技术实现较复杂的应用设计。

  目标4:养成良好职业素养(如团队合作等),具有自主学习意识和能力。

成绩 要求

本课程的成绩构成由5部分构成,分别是单元测试成绩(20%),作业成绩(30%),期末考试成绩(20%)和讨论成绩(10%).视频学习(20%)

讨论:在课堂交流区内回复主题帖,按回复次数计分,回复5次及以上满分,评论不计分,其他讨论区不计分。

作业:部分作业要求互评,未参加互评的同学将给与所得分数的50%;参与互评,但未完成5份的,将给与所得分数的80%。

成绩60分以上为合格,85分以上为优秀.

课程大纲
预备知识

首先要熟悉Java语言,本课程是采用Java语言来编写应用代码。其次,课程很多样例是结合网页使用的,所以要了解HTML网页知识。另外,Spring的一些配置是采用XML标记语言来表示,所以,还要了解XML的知识。

参考资料

范萍、丁振凡编著,《Spring Boot应用设计案例教程》,清华大学出版社,2024.5

常见问题

Q : Spring是什么?

A : Spring是一个轻量级的Java开发框架,IOC和AOP是Spring的两个最重要的核心思想。

Q : Spring Boot是啥?

A : Spring Boot是建立在Spring的基础上的快速应用开发框架,其核心思想是约定大于配置,通过依赖关系的整合简化应用。

Q : 如何理解IOC?

A : IOC的全称是Inversion Of Control,也就是控制反转,Spring容器依托IOC管理Bean的依赖关系。

Q : 什么是AOP?

A : AOP的全称是Aspect Oriented Programming),也就是面向方面的编程。其关注的是某一方面的应用,可以让开发者从不同方面去组织应用。实现业务逻辑与系统级服务的分离。

Q : 什么是MVC?

A : MVC的全称是 Model View Control,它代表一种应用开发模式,将控制器,模型和视图三者分离,便于应用的分工设计。

Q :  什么是 SSM?

A : SSM全称是Spring,Spring Boot,Mybatis的组合,是目前流行的Web数据库应用开发框架。

Q : 什么是WebSocket?

A : WebSocket是一种基于Web的实时通信方式,是在HTTP的基础上通过协议升级建立连接信道的实时通信方式,可实现基于发布/订阅的双向通信。

Q : Bean是什么?

A : 就是由Spring容器管理的Java对象。