目录
前言
通过本课程的学习,我们将掌握Web应用开发的基本原理和技术,学会使用主流的Web开发框架和工具,能够独立完成Web应用的设计和开发,为日后的职业发展打下坚实的基础。
一、Web应用项目开发主要功能及特点
1. 需求分析
在Web项目开发的初期,需求分析是至关重要的。它包括了对功能的确定和性能的要求。功能通常指的是Web应用能做什么,例如购物、注册、浏览、搜索等。性能则关注系统在高负载下的表现,如支持多少并发用户、响应时间要求等。需求分析阶段还会涉及到头脑风暴、会议讨论、原型设计(包括界面和业务原型)等。
2. 分析设计
分析设计阶段涵盖了架构设计、技术选型、业务逻辑分析等方面。架构设计又分为逻辑架构和物理架构。逻辑架构涉及软件组件之间的关系,常用的设计模式包括MVC(模型-视图-控制器)等。物理架构则关注服务器、数据库的分布等。技术选型需要决定使用哪种后端技术(如Java、.NET、PHP)、前端技术(如HTML、CSS、JavaScript框架)以及数据库技术。
3. 业务逻辑设计
基于需求分析,进一步明确业务逻辑,包括用户操作流程、业务规则等,并确定所需的类、接口、属性及其关系。这一阶段往往与数据库设计并行进行,确保数据模型能够有效地支撑业务逻辑。
4. 界面设计
界面设计关注用户的视觉体验,包括颜色、风格以及具体界面的布局。高保真的界面原型有助于团队和客户对最终产品的预期达成一致。
5. 前端开发
前端开发涉及HTML、CSS和JavaScript的使用,以及框架和库(如Bootstrap、Foundation)的应用,它们可以帮助快速构建响应式和移动优先的Web界面。前端工具(如Dreamweaver、Visual Studio Code)和IDE(如WebStorm、Visual Studio)提供了代码编辑、调试等功能,极大提高了开发效率。
6. 后端开发
后端开发关注服务器、应用程序和数据库之间的交互。常用的后端技术有Spring、Django、Express等。这些技术提供了数据库连接、业务逻辑处理、接口定义等功能,是构建功能强大的Web应用的基础。
7. 测试
在整个开发过程中,测试是确保产品质量的关键环节。单元测试、集成测试、系统测试、性能测试等都是测试的不同层次,它们旨在发现和修复代码中的问题,确保应用能够在各种条件下稳定运行。
8. 部署与维护
部署是将Web应用发布到服务器并可供用户访问的过程。维护则关注应用的持续运行和更新,包括监控、故障排查、性能优化、安全更新等。
9. 项目管理
项目管理贯穿整个Web应用开发过程,涉及团队协作、版本控制(如Git)、进度跟踪、风险管理等。有效的项目管理可以确保项目按时按质完成。
二、开发环境配置
JDK环境配置;Maven环境配置;IDEA的环境配置
二、常用类注解
1、@Component:这是一个泛型注解,用于标记一个类作为组件类。这通常用于Spring框架中,用于自动检测和注册组件。
2、@Service:这是一个泛型注解,用于标记一个类作为服务类。这通常用于Spring框架中,用于自动检测和注册服务。
3、@Repository:这是一个泛型注解,用于标记一个类作为数据访问类。这通常用于Spring框架中,用于自动检测和注册数据访问组件。
4、@Controller:这是一个泛型注解,用于标记一个类作为控制器类。这通常用于Spring框架中,用于自动检测和注册控制器。
5、@RestController:这是一个泛型注解,用于标记一个类作为RESTful风格的控制器类。这通常用于Spring框架中,用于自动检测和注册RESTful风格的控制器。
6、@RequestMapping:这是一个泛型注解,用于标记一个方法作为请求映射。这通常用于Spring框架中,用于将HTTP请求映射到相应的方法。
7、@GetMapping:这是一个泛型注解,用于标记一个方法作为GET请求的映射。这通常用于Spring框架中,用于将GET请求映射到相应的方法。
8、@PostMapping:这是一个泛型注解,用于标记一个方法作为POST请求的映射。这通常用于Spring框架中,用于将POST请求映射到相应的方法。
9、@PutMapping:这是一个泛型注解,用于标记一个方法作为PUT请求的映射。这通常用于Spring框架中,用于将PUT请求映射到相应的方法。
10、@DeleteMapping:这是一个泛型注解,用于标记一个方法作为DELETE请求的映射。这通常用于Spring框架中,用于将DELETE请求映射到相应的方法。
三、mybatis与mybatis-plus
MyBatis 和 MyBatis-Plus 都是用于简化 Java 数据访问操作的框架,它们之间的主要区别在于功能和使用场景。
1. MyBatis:
- MyBatis 是一款优秀的持久层框架,它支持自定义 SQL 语句,提供了映射器(Mapper)接口和 XML 映射文件两种方式来编写 SQL 语句。
- MyBatis 需要手动编写 SQL 语句,但是它的灵活性更高,可以满足复杂的 SQL 需求。
- MyBatis 适用于对数据访问操作有较高要求的场景,如复杂的 SQL 查询、存储过程等。
2. MyBatis-Plus:
- MyBatis-Plus 是在 MyBatis 的基础上进行增强的框架,它内置了大量的通用 SQL 操作,如增删改查、分页查询等,简化了数据访问操作。
- MyBatis-Plus 使用注解和 Java API 来代替 XML 映射文件,提高了开发效率。
- MyBatis-Plus 适用于简化通用数据访问操作的场景,如简单的增删改查、分页查询等。
总结:
- MyBatis 适用于对数据访问操作有较高要求的场景,需要手动编写 SQL 语句。
- MyBatis-Plus 适用于简化通用数据访问操作的场景,使用注解和 Java API 来代替 XML 映射文件。
MyBatis-Plus 可以看作是 MyBatis 的增强版,它内置了大量的通用 SQL 操作,提高了开发效率。但是在面对复杂的 SQL 需求时,MyBatis 的灵活性更高。因此,在实际项目中,可以根据需求灵活选择 MyBatis 或 MyBatis-Plus。
四、基础页面维护练习
1、登录功能
2.新增基础页面
3.更新基础页面
4.根据主页查询基础页面信息
5.根据多条件查询基础页面信息
五、问题及解决方法
1、601 “jwt无效”
只需重新运行项目,重新生成jwt即可
2、500 "error": "Internal Server Error"
程序出现异常It‘s likely that neither a Result Type nor a Result Map was specified.
遗漏一个属性:resultType,添上即可
3、程序报错:Error resolving template [weburl/errLevel/add], template might not exist or might not be accessible by any of the configured Template Resolvers
将@Controller 换成 @RestController