自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 问答 (10)
  • 收藏
  • 关注

原创 postman测试接口在URL配置正确的情况下出现404或者500错误

而我们接口返回结果要json格式的数据,所以添加@ResponseBody或者使用@RestController即可。总结404找不到资源,无非就是接口路径,提交方式、参数类型、返回结果类型有问题。调试接口的过程中,出现404,第一确认类上注解是@RestController。2.确定方法上有没有声明PostMapping或者GetMapping。加上@GetMapping测试成功。不然在测试的时候会出现500。3.uri路径确认没问题。...

2022-07-21 10:50:32 11253 4

原创 值得一看——Mybatis动态sql的使用——不是很深但是很细

在实际开发时,如需要根据姓名或者备注去查询时,当姓名为空再去使用姓名作为条件查询时就不太合适了,这时候通常其他框架或java代码去判断,但可读性差。Mybatis提供了动态sql,仅仅需要几个XML的元素即可完成,虽然Mybatis也提供了注解的形式,但对于较为复杂的sql而言可读性太差,所以不推荐使用。动态SQL实际使用的元素并不多,但是它们带来了灵活性,减少许多工作量的同时,也在很大程度上提高了程序的可读性和可维护性。1.创建POJO及Mapper@Datapublic class Ro

2022-01-24 22:08:03 1051

原创 Java使用Mybatis调用存储过程以及简单使用游标—重点都在XML文件中

存储过程:它是数据库预先编译好的一个sql,可以重复调用,无需二次编译,如果不太清楚可以试着理解为在Java中写的一个方法。1.存储过程参数存储过程定义了三个参数:IN:输入参数,即外界传入的参数 OUT:输出参数,即经过计算返回的参数 INOUT:输入输出参数,即外界传入的参数,经过计算又返回的参数2.IN,OUT,IN OUT演示这里使用Oracle数据库进行编写存储过程假如我们要求输入一个名字查询条数和目前时间,根据输入id返回其notecreate or repl

2022-01-17 20:01:19 2696

原创 详解mybatis的一二级缓存以及缓存失效原因

数据库的大部分场景下是从磁盘读取,如果数据从内存进行读取,速度较比磁盘要快得多。但因为内存的容量有限,所以一般只会把使用和查询较多的数据缓存起来,以便快速反应,其他使用率不太多的继续存放在磁盘。mybatis分为一级缓存和二级缓存1.一级缓存一级缓存存放在SqlSqeeion上,默认开启1.1pojo@Datapublic class Role{ private Long id; private String roleName; private String note;}

2022-01-10 21:19:55 2707

原创 多对多级联以及一对多和多对多级联为什么要使用关联表

目录1.pojo清单2.Mapper接口清单3.XML文件4.测试多对多级联5.为什么使用关联表多对多级联是一种非常复杂的级联关系,一般采用两个一对多来进行处理例如:现实中有许多用户,用户又归属于一些角色,这样一个用户可以对应多个角色,而一个角色又可以由多个用户担当,这个时候用户和角色是以一张用户角色表建立关联关系,这样用户和角色就是多对多的关系。1.pojo清单1.1用户@Datapublic class User2 { private Long id;

2022-01-09 20:25:55 1487

原创 升级windows11系统之后,IDEA报错无法启动,原因竟是因为JDK

Error:Abnormal build process termination:"C:\Program Files\Java\jdk1.8.0_91\bin\java.exe" -Xmx700m -Djava.awt.headless=true -Djava.endorsed.dirs=\"\" -Djdt.compiler.useSingleThread=true -Dexternal.project.config=C:\Users\Administrator\.IntelliJIdea2018..

2021-12-25 14:27:41 4674

原创 JavaEE互联网轻量级框架整合开发笔记:mybatis中的fetchType属性怎么使用

目录懒加载:fetchType上一篇我们说了如何使用mybatis中的懒加载机制解决级联造成的N+1问题,但同时也有一个问题,我们没有办法去个性化的编写代码。懒加载:lazyLoadingEnabled为true时,所有的关联对象都不会加载aggressiveLazyLoading为false时,只有当调用具有懒加载对象的属性时才会加载不理解的话就先看这篇如何利用mybatis的懒加载机制解决级联造成的N+1问题_m0_56058975的博客-CSDN博客例如现在有用户,订单

2021-12-23 20:35:47 1044

原创 如何利用mybatis的懒加载机制解决级联造成的N+1问题

目录1.代码演示1.1创建POJO1.2创建Mapper接口1.3创建XML映射文件1.4创建mybatis-config.xml文件1.5测试未使用lazyLoadingEnabled和aggressiveLazyLoading2.lazyLoadingEnabled和aggressiveLazyLoading2.1配置lazyLoadingEnabled并测试2.2配置aggressiveLazyLoading并测试什么是N+1:例如我们有用户Use...

2021-12-22 23:20:37 520

原创 Mapped Statements collection does not contain value for mybatis03.mapper.TaskMapper.getTask

中文意思:映射语句集合不包含mybatis03.mapper.TaskMapper.getTask的值org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for mybatis03.mapper.Tas.

2021-12-21 22:44:21 1085

原创 一分钟明白:EnumOrdinalTypeHandler和EnumTypeHandler的区别

在开发用,如果使用枚举而又没有在配置中指定类型,mybatis默认使用EnumTypeHandler。EnumTypeHandler和EnumOrdinalTypeHandler区别主要在于数据库存取类型不一样。

2021-12-20 21:51:58 1376

原创 一分钟明白:mybatis自定义别名的三种方式和自定义TypeHandler类型转换器

1.自定义别名1.1自定义类别名自定义别名可以让我们在xml文件中写sql文件时,减少一些繁琐而又没必要写的一些代码例如: <select id="getRole" parameterType="long" resultType="mybatis02.pojo.Role"> select id, role_name, note from t_role where id = #{id} </select>我们在写select查询时需要指..

2021-12-15 22:21:54 2446

原创 一招解决:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 找不到Mapper里的方法

一招解决 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 找不到Mapper里的方法的错误

2021-12-14 22:00:08 1514

原创 Mybatis使用properties配置的3种方式,其中第二种最常用

一般而言,MyBatis提供了3种方式让我们使用properties,它们是:●property子元素。●properties文件。●程序代码传递。但是需要注意的是,MyBatis 配置项的顺序不能颠倒。如果颠倒了它们的顺序,那么在MyBatis启动阶段就会发生异常,导致程序无法运行。1.使用properties下的子元素<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLI..

2021-12-13 21:13:33 6285

原创 举一个简单的例子,轻松搞懂所谓的“观察者模式”

看上面那些可能不太容易理解,简单举个例子,假如有一个产品列表,当这个产品列表更新的时候就会同步到一些电商平台,最简单的可能会用if进行判断,当产品列表更新就同步,例如下图:

2021-12-09 21:39:16 707

原创 简单理解JDK动态代理使用拦截器和责任链模式

目录1.拦截器1.1在JDK代理中使用拦截器:2.责任链模式2.1定义责任链拦截器接口由于动态代理一般都比较难理解,程序设计者会设计一个拦截器接口供开发者使用,开发者只要知道拦截器接口的方法、含义和作用即可,无须知道动态代理是怎么实现的。用JDK动态代理来实现一个拦截器的逻辑,为此先定义拦截器接口Interceptor1.拦截器package service;import java.lang.reflect.Method;public interface...

2021-12-08 23:46:58 742

原创 一文搞懂两种最常用的动态代理:JDK和CGLIB

目前最常用两种动态代理就是JDK和CGLIB,一种是JDK自带的,一种是三方技术。两者区别:JDK:JDK动态代理是java.lang.reflect.*包提供的方式,它必须借助一个接口才能产生代理对象。CGLIB:在一些不能提供接口的环境中,只能采用其他第三方技术,比如CGLIB动态代理。它的优势在于不需要提供接口,只要一个非抽象类就能实现动态代理。1.JDK代理因为JDK需要接口才能产生代理对象,所以先创建一个接口package service;public inte..

2021-12-07 21:46:59 716

原创 项目使用内嵌式H2数据库,IDEA配置完成,在浏览器输入:http://localhost:8080/h2-console却无法连接

出现这种情况是因为URL的路径不对,在你启动项目的时候,日志里会输出这个路径地址,在输入框里填入此路径即可,以后你每次启动项目都会重新生成路径需要每次填写

2021-12-03 21:08:14 1657

原创 Spring实战第五版第三章疑难解答,启动项目JDBC报错找不到类和配置内嵌式H2数据库,修改建表字段和类对应

Spring实战第五版第三章疑难解答,启动项目JDBC报错找不到类和配置内嵌式H2数据库,修改建表字段和类对应

2021-12-01 18:47:03 1074

原创 学会spring看这个就够了,《Spring实战第五版》笔记第二章

Spring MVC是基于注解的,通过像@RequestMapping、@GetMapping和@PostMapping这样的注解来启用请求处理方法的声明。大多数的请求处理方法最终会返回一个视图的逻辑名称,比如Thymeleaf模板,请求会转发到这样的视图上(同时会带有任意的模型数据)。Spring MVC支持校验,这是通过Java Bean Validation API和Validation API的实现(如Hibernate Validator)完成的。对于没有模型数据和逻辑处理的HTTP GET请

2021-11-30 22:36:53 603 1

原创 真的不敢相信会有这么全的spring实战第五版笔记-第一章(最后会有本章知识点总结)

1.1什么是SpringSpring的核心是提供了一个容器(container),通常称为Spring应用上下文(Spring application context),它们会创建和管理应用组件。这些组件也可以称为bean,会在Spring应用上下文中装配在一起,从而形成一个完整的应用程序。这就像砖块、砂浆、木材、管道和电线组合在一起,形成一栋房子似的。将bean装配在一起的行为是通过一种基于依赖注入(dependency injection,DI)的模式实现的。此时,组件不会再去创建它所依赖的组件

2021-11-29 23:01:45 335

原创 JDBC Template的query方法第二个参数:自定义方法替代rowmapper和lambda表达式使用

最近在复习sqping,选择看spring实战第五版,但是其中总会有不理解的地方,所以选择解决之后并记录package tacos.data;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.stereotype.Repository;import tacos.Ing

2021-11-21 15:27:41 1333

原创 o.s.boot.SpringApplication,Error creating bean with name ‘paymentImpl‘,xml配置文件错误

xml错误配置文件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.atguigu.springcloud.dao.PaymentDao">

2021-10-14 16:55:12 306

原创 网上查不到的oracle错误:ORA-56904:pivot value must have datatype that is convertible to pivot column

之前调用此存储过程时是没有问题的,今天突然出现了这个问题,习惯性网上搜索之后竟然查不到相关信息,存储过程内容是a表和一个视图进行inner连接,(之前也是这样,不出错)之后换成了LEFT JOIN 后解决,在本次业务中,我也可以在视图中修改内容,避免和a表进行连接。报错信息:ORA-56904:pivot value must have datatype that is convertible to pivot column pivot值必须具有可转换为枢轴列的数据类...

2021-08-18 17:29:53 365 2

原创 配置maven和本地仓库图文详细教程

目录1.首先上maven官网下载自己需要的安装包2. 创建一个maven文件夹3.配置环境变量4.验证maven是否安装成功5.IDEA使用本地仓库1.首先上maven官网下载自己需要的安装包maven官网2. 创建一个maven文件夹将下载好的安装包解压到maven文件夹中,并将创建repository文件夹和解压好的maven文件在同一级目录,之后将maven文件里的settings.xml文件复制一份到maven文件同级目录之后将settings.x..

2021-08-10 14:41:57 825

原创 java.lang.ClassNotFoundException: Cannot find class: deptMap

java.lang.ClassNotFoundException: Cannot find class: deptMaporg.springframework.beans.factory.BeanCreationException: Error creating bean with nameError parsing Mapper XML. The XML location is 'fileorg.apache.ibatis.builder.BuilderException: Error resolv

2021-04-26 23:01:30 606

原创 Maven项目添加依赖时pom文件中的project标签报错 Duplicated tag: ‘dependencies‘ (position: START_TAG seen ...</build>

Maven项目添加依赖时pom文件中的project标签报错Duplicated tag: ‘dependencies’ (position: START_TAG seen …\r\n … @84:17)遇到此问题先别急,把要添加的依赖写进已有的标签就可以了

2021-04-09 22:19:20 1599

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除