自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 Mybatis中的#{}和${}格式的占位符

由于语义分析是在编译之前执行的,所以,一旦执行到了编译,则SQL语句的“意思”不会再发生变化!,因为在编译之前就已经确定了此SQL语句的语义,无论传的值是什么样的,语义都不会改变!会被识别成参数,经过预编译(先编译,再传值,再执行)处理后,无论在此处传入什么值,都会被认为是参数,语义不会发生变化!格式的占位符,需要关心参数值的数据类型问题,如果参数的值是字符串类型的,必须在值的两侧添加单引号,这种做法。格式的占位符,不必关心参数值的数据类型问题,并且,格式的占位符,会进行预编译的处理,如果使用的是。

2022-10-19 11:59:01 532 1

原创 关于Spring框架

Spring框架主要解决了创建对象、管理对象的相关问题。管理对象:Spring会在创建对象之后,完成必要的属相赋值等操作,并且,还会持有所创建的对象的引用,由于持久大量的对象引用,所以,Spring框架也通常被称之为“Spring容器”。

2022-10-11 08:59:50 109

原创 JAVA基础学习(九)

*** 排序自定义类型元素*//*编译不通过的原因:Collections.sort(List list)该方法要求集合中的元素类型必须实现接口:Comparable,该接口中有一个抽象方法compareTo,这个方法用来定义元素之间比较大小的规则.所以只有实现了该接口的元素才能利用这个方法比较出大小进而实现排序操作.*///编译不通过 compare比较 comparable可以比较的}}

2022-10-06 18:47:20 318

原创 JAVA基础学习(八)

集合与数组一样,可以保存一组元素,并且提供了元素的相关方法,使用更方便。

2022-10-06 18:35:43 234

原创 JAVA基础学习(七)

线程提供了一个静态方法sleep方法处理异常:InterruptedException.当一个线程调用sleep方法处于睡眠阻塞的过程中,该线程的interrupt()方法被调用时,sleep方法会被抛出该异常从而打断睡眠阻塞。

2022-10-06 17:44:20 158

原创 JAVA基础学习(六)

*** 第二种创建线程的方式* 实现Runnable接口单独定义线程任务*///实例化任务//创建线程并指派任务}}i

2022-10-06 17:16:41 115

原创 JAVA基础学习(五)

当一个方法中使用throw抛出一个非RuntimeException的异常时,就要在该方法上使用throws声明这个异常的抛出。此时调用该方法的代码段就必须处理这个异常,否则编译不通过。旨在IO操作中可以更简洁的使用异常处理机制完成最后的close操作。上述语法中可在try的“()”定义的初始化对象必须实现了java.io.AutoCloseable接口,否则编译不通过。当我们调用一个含有throws声明异常抛出的方法时,编译期要求我们必须处理这个异常否则编译不通过。

2022-10-05 18:07:44 134

原创 JAVA基础学习(四)

java.io.BufferedWriter和BufferedReader缓冲字符流内部也有一个缓冲区,读写文本数据以块读写形式加快效率,并且缓冲流有一个特别的功能:可以按行读写文本数据。java.io.PrintWriter具有自动行刷新的缓冲字符输出流,实际开发中更常用,它内部总是会自动连接BufferedWriter作为块写加速使用。 在流连接中使用PWPrintWriter的自动行刷新功能如果实例化PW时第一个参数传入的是一个流,则此时可以在传入一个boolean型的参数,此值为

2022-10-05 17:50:13 259

原创 JAVA基础学习(三)

缓冲流是一对高级流,作用是提高读写数据的效率缓冲流内部有一个字节数组,默认长度是8K。缓冲流读写数据是一定是将数组的读写方式转换为块读写来保证读写效率。

2022-10-05 17:35:59 53

原创 JAVA基础学习(二)

java.io.InputStream:所有字节输入流的超类,其中定义了读取数据的方法,因此将来不管读取的是什么设备(连接该设备的流)都有这些读取的方法,因此我们可以用相同的方法读取不同设备中的数据。java.io.OutputStream:所有字节输出流的超类,其中定义了写出数据的方法。

2022-10-05 17:21:52 82

原创 JAVA基础学习(一)

但是File不能访问文件数据。

2022-10-05 16:50:08 43

原创 Java语言基础学习(五)

2进制:规则:逢2进1数字:0 1基数:2权:128 64 32 16 8 4 2 1如何将2进制转换为10进制:将二进制每个1位置的权相加即可--------------正数权: 32 16 8 4 2 1二进制: 1 0 1 1 0 1十进制: 32+8+4+1=45int n = 45;//编译时会被编译为:101101//以2进制输出//以10进制输出n++;//将101101增1----101110//以2进制输出//以10进制输出。

2022-10-04 17:57:23 84

原创 JAVA语言基础学习(四)

当时用字面量方式来创建对象时,会将这个字面量对象的引用地址缓存到字符串常量池中,当使用相同字符串在创建字符串对象时,将会复用常量池中的引用,以减少内存开销。java.lang包中,final的,不能被继承,底层封装了一个不可变char数组,Unicode,一个字符占2个字节。字符串对象一旦建好,对象内容永远无法改变,但字符串引用变量可以重新赋值(创建一个新的对象)------不变对象。1、字符串内容若做查看操作,建议使用String--------------------实际应用中一般都是查看。

2022-10-04 17:09:29 91

原创 Java语言基础学习(三)

修饰词 返回值类型 方法名(参数列表) {方法体}//无参无返回值System.out.println("大家好,我叫WKJ,今年38岁了");}//有参无返回值public static void sayHi(String name){ //形参System.out.println("大家好,我叫"+name+",今年38岁了");}//有参无返回值public static void sayHello(String name,int age){ //形参。

2022-10-03 18:12:20 159

原创 Java语言基础学习(二)

算术:+、-、*、/、%、++、--%:取模/取余,余数为0即为整除++/--:自增1/自减1,可在变量前也可在变量后单独使用时,在前在后都一样被使用时,在前在后不一样a++的值为a----------(a--的值为a)++a的值为a+1--------(--a的值为a-1)逻辑:&&、||、!逻辑运算是建立在关系运算的基础之上的 逻辑运算的结果也是boolean型&&:短路与(并且),两边都为真则为真,见false则false||:短路或(或者),有真则为真,见true则true。

2022-10-03 17:50:46 230

原创 Java语言基础学习(一)

编译期:.java源文件,经过编译,生成.class字节码文件运行期:JVM加载并运行.class(0和1)特点:跨平台、一次编译到处使用。

2022-10-03 17:00:23 44

原创 关于Knife4j框架及关于`@RequestBody`

Knife4j是一款基于Swagger 2的在线API文档框架。使用Knife4j,需要:添加Knife4j的依赖当前建议使用的Knife4j版本,只适用于Spring Boot 2.6以下版本,不含Spring Boot 2.6在主配置文件()中开启Knife4j的增强模式必须在主配置文件中进行配置,不要配置在个性化配置文件中添加Knife4j的配置类,进行必要的配置必须指定控制器的包在在根包下创建完成后,启动项目,通过即可访问在线API文档!@Api:添加在控制器类上,通过此注解的。

2022-09-29 21:02:34 1628 1

原创 关于RESTful、实现前后端交互及关于响应正文的结果

响应到客户端的数据中,应该包含“业务状态码”,以便于客户端迅速判断操作成功与否,为了规范的管理业务状态码的值,在根包下创建。通常,需要使用自定义类,作为处理请求的方法、处理异常的方法的返回值类型。RESTful也可以简称为REST,是一种设计软件的风格。根据请求访问数据的方式,使用不用的请求方式。RESTful既不是规定,也不是规范。这种做法在复杂的业务系统中并不适用。处理请求后是响应正文的。如果尝试添加数据,使用。如果尝试删除数据,使用。如果尝试修改数据,使用。如果尝试查询数据,使用。

2022-09-29 20:42:41 647

原创 在Spring MVC中接收请求参数

如果客户端提交的请求参数略多(达到2个或以上),且参数之间存在相关性,则应该将这些参数封装到自定义的POJO类型中,并且,使用此POJO类型作为处理请求的方法的参数,同样,POJO类中的属性的类型可以按需设计。如果客户端提交对应名称的请求参数,且参数有正确的值,则方法的参数值为就是请求参数值,如果方法的参数是需要将字符串转换为别的格式,但无法转换,则会抛出异常。如果客户端提交的请求参数数量较少,且参数之间没有相关性,则可以选择将各请求参数声明为处理请求的方法的参数,并且,参数的类型可以按需设计。

2022-09-29 20:35:23 150

原创 关于控制器详解

在编写控制器相关代码之前,需要在项目中添加依赖项。是基于(包含)的,所以,添加后,就不必再显式的添加了,则可以将原本的改成包含了一个内置的Tomcat,当启动项目时,会自动将当前项目编译、打包并部署到此Tomcat上。在项目中,控制器表现为各个Controller,是由Spring MVC框架实现的相关数据处理功能,以上添加的包含了Spring MVC框架的依赖项()。控制器的主要作用是接收请求,并响应结果。

2022-09-28 09:04:41 362

原创 关于Profile配置及YAML配置笔记

在配置中,许多配置值会因为当前环境不同,需要配置不同的值,例如,在开发环境中,日志的显示级别可以是trace这种较低级别的,而在测试环境、生产环境(项目部署上线并运行)中可能需要改为其它值,再例如,连接数据库配置的相关参数,在不同环境中,可能使用不同的值……如果在中反复修改大量配置值,是非常不方便的!Spring框架支持Profile配置(个性化配置),Spring Boot简化了Profile配置的使用,它支持使用作为配置文件的名称,其中,xxx以上这些不在中的配置,默认是不生效的!需要在。

2022-09-26 21:08:26 625

原创 SLF4j日志

使用以上方式输出时,会将字符串部分进行缓存(是一种预编译的做法),在执行时,并不会出现拼接字符串的情况,所以,在执行效率方面,比传统的。以上的第2个方法适用于在输出的日志中添加变量的值,在第1个字符串参数中,各变量均使用。变量来输出日志时,可以使用以上级别对应的方法,则可以输出对应级别的日志!及更加严重的级别的日志!如果需要修改日志的显示级别,需要在。在Spring Boot项目中,日志的默认显示级别是。的日志对象变量,此变量可以调用相关方法来输出日志!方法,其它级别的日志也有完全相同参数列表的方法。

2022-09-26 21:02:00 150

原创 通过Mybatis实现数据库编程中常见的错误

错误原因: resource/mapper/xxx.xml文件中SQL标签中resultType标注错误!错误原因:resource/mapper/xxx.xml文件中SQL标签没有标注resultType。错误原因:resultType类型权限定名(类名加包名)错误,检查resultType后标注VO路径。错误原因:resultType没有写全名(类名+包名),修改resultType权限定名!错误原因:SQL语句拼写错误,检查SQL语句错误!

2022-09-23 11:39:59 627

原创 关于实体类

在项目中,如果某个类的作用就是声明若干个属性,并且添加Setter & Getter方法等,并不编写其它的功能性代码,这样的类都称之POJO,用于表示项目中需要处理的数据。在项目中使用Lombok框架,可以实现:添加注解,即可使得Lombok在项目的编译期自动生成一些代码(例如Setter & Getter)。所有属性都应该有对应的、规范名称的Setter、Getter方法。在POJO类上添加Lombok框架的。如果两个对象的各属性值完全相同,则。如果两个对象存在属性值不同的,则。方法,输出各属性的值。

2022-09-22 18:16:40 156 1

原创 网站开发过程中需要引入的依赖项

注:封装打包依赖坐标提供默认功能便于快速开发配置本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。

2022-09-22 09:50:50 353

空空如也

空空如也

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

TA关注的人

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