个人技术总结

您所在的位置:网站首页 excel提示无法复制数据 个人技术总结

个人技术总结

2023-06-10 05:21| 来源: 网络整理| 查看: 265

目录技术概述技术详述导入相关依赖使用mybatis和数据库交互使用springboot来接受和处理HTTP请求大致的流程图技术使用中遇到的问题和解决过程使用@Autowired注解爆红,提示无法找到该类对应的bean在使用查询方法时,提示语法错误在使用请求映射注解时,对应方法接收的参数为空总结参考

技术概述 mybatis用于和数据库进行交互,在维护数据库中存储的数据对象时使用,学习该技术,减少了传统jdbc编程中的代码量,且更容易维护和调试自己写的代码,个人认为学习该技术的的难点在于sql语句的编写以及相关注解的记忆。springboot用于接收并转发处理客户端中发送过来的请求,在考虑构建一个javaWeb项目时,可以考虑使用springboot框架,相比于使用SSM框架,直接使用springboot可以减少大量的手动配置工作量,可以更快的进行开发。个人认为学习该技术的难点在于熟悉springboot的框架的工作流程以及相关注解的使用。 技术详述 导入相关依赖

首先在pom文件中引入于springboot和mybaits有关的依赖,这是使用他们的前提

img

使用mybatis和数据库交互

本次项目中,为了减少对单表操作的代码量,直接使用了mybaitsPlus内置的对于单表的操作,具体流程为创建一个实体类所对应的mapper接口并继承于BaseMapper后,使用注解标识为mapper,便可以直接对该在数据库中维护该实体类。在涉及到多表操作时,需要自己使用注解并编写sql语句。

img

img

使用springboot来接受和处理HTTP请求

在这一部分中,主要是编写controller类和service类,在controller类中使用请求映射注解将来自客户端的请求映射到需要执行的方法,并返回相应的数据,需要注意的是,controller类中的方法一般不会涉及到具体实现的业务逻辑,具体的实现应交由service实现类来完成。

img

至于service类中,一般是补充实现业务逻辑,这一过程主要是调用之前的mapper接口,来与数据库进行交互

img

大致的流程图

(省略了最开始的配置配置文件、引入依赖以及定义数据库表和数据模型)

img

技术使用中遇到的问题和解决过程

在使用过程中碰到了许许多多的问题,下列列举3个

使用@Autowired注解爆红,提示无法找到该类对应的bean

img

解决过程,在springboot中,因为它自动配置了文件,不用像spring那样,还要到上下文配置文件中查找是否时配置文件的问题,当时我仅在相应的提示无法找到bean对象的类中添加上了@Mapper注解或者@Service注解解决了问题

在使用查询方法时,提示语法错误

问题描述:当时使用了myabaitsPlus自带的对单表的查询方法,但是总是报错,说存在mysql的语法错误,但可以肯定的是自动编写的语句并没有错误。

解决过程:查阅资料后得知,mybatis等orm框架通常会SQL 语句和 Java 对象进行映射,如果 Java 对象中的属性名和 MySQL 中的关键字相同,就会导致语法错误。具体的解决措施是使用反引号括住要进行操作的属性的名字

SELECT `name`, `count` FROM `user` WHERE `group` = 'admin'; 在使用请求映射注解时,对应方法接收的参数为空

问题描述:在使用postman等测试工具进行测试时,发现返回结果对不上,调试后发现,方法接收到的参数为空,但是在使用测试工具时,的确传递了参数

解决过程:正确使用 @RequestBody 和 @PathVariable 这两个注解后解决了问题,@RequestBody 注解用于将 HTTP 请求的请求体转换为 Java 对象,通常与Post或Put等方法结合使用,不应试图在请求url中添加参数类映射。@PathVariable 注解才是用于将 URL 中的路径变量映射到方法的参数上,要与Get方法结合使用。

img

总结

经过这学期的软工实践,我接触并入门了springboot和mybatis这两种技术,在为学习到新技术而高兴的同时也不由得感慨自己接触这两门技术得是否太晚了,对此我感到压力山大,但种一棵树最好的时间最好是十年前,其次便是现在。我希望自己在本科中已所剩不多的时间内,继续深入学习springboot和mybatis,让自己真正的掌握到这门技术,对各种方法的实现信手拈来,对于aop,ioc,缓存等概念也有更进一步的理解。而不是在一边学一边补天(连一个基本的分页查询都要写半天)。

参考

《javaee企业级应用》

许多问题都是通过和chartgpt对话而解决



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3