自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MyBatis运行原理

Mybatis的运行过程分为两大步:第1步,读取配置文件缓存到Configuration对象,用于创建SqlSessionFactory;第2步,SqlSession的执行过程。相对而言,SqlSessionFactory的创建还算比较容易理解,而SqlSession的执行过程就不那么简单了,它包括许多复杂的技术,要先掌握反射技术和动态代理,这里主要用到的是JDK动态代理.MyBatis的主要构件及其相互关系SqlSession作为MyBatis工作的主要顶层API,表示和数据库交互的会话,完成必

2021-12-14 17:03:10 296

原创 MyBatis总结

一、MyBatis介绍MyBatis 是支持定制化SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的JDBC 代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(普通的Java对象)映射成数据库中的记录.为什么要使用MyBatis?MyBatis是一个半自动化的持久化层框架。JDBC–SQL夹在Java代码块里,耦合度高导致硬编码内伤–维护不易且实际开发需求中sql是有变化,频繁修改的情况多见

2021-12-14 15:06:52 1172

原创 SpringMVC执行流程

一、SpringMVC常用组件DispatcherServlet:前端控制器,不需要工程师开发,由框架提供作用:统一处理请求和响应,整个流程控制的中心,由它调用其它组件处理用户的请求HandlerMapping:处理器映射器,不需要工程师开发,由框架提供作用:根据请求的url、method等信息查找Handler,即控制器方法Handler:处理器,需要工程师开发作用:在DispatcherServlet的控制下Handler对具体的用户请求进行处理HandlerAdapter:

2021-12-03 15:16:31 722

原创 注解配置SpringMVC

一、开发环境IDE:idea 2019.2构建工具:maven3.5.4服务器:tomcat7Spring版本:5.3.1二、创建maven工程a>添加web模块b>打包方式:warc>引入依赖注:由于 Maven 的传递性,我们不必将所有需要的包全部配置依赖,而是配置最顶端的依赖,其他靠传递性导入。<dependencies> <!-- SpringMVC --> <dependency> <g

2021-12-02 20:53:07 154

原创 SpringMVC

一、SpringMVC简介什么是SpringMVCSpringMVC是Spring的一个后续产品,是Spring的一个子项目SpringMVC 是 Spring 为表述层开发提供的一整套完备的解决方案。在表述层框架历经 Strust、WebWork、Strust2 等诸多产品的历代更迭之后,目前业界普遍选择了 SpringMVC 作为 Java EE 项目表述层开发的首选方案。注:三层架构分为表述层(或表示层)、业务逻辑层、数据访问层,表述层表示前台页面和后台servletSpringMVC的特点

2021-12-02 20:36:54 326

原创 Spring JdbcTemplate & Spring 事务操作

一、JdbcTemplate什么是 JdbcTemplateSpring 框架对 JDBC 进行封装,使用 JdbcTemplate 方便实现对数据库操作使用JdbcTemplate准备工作(1)引入相关jar 包(2)在 spring 配置文件配置数据库连接池<!-- 数据库连接池 --> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close

2021-11-21 21:47:05 978

原创 Spring AOP详解

一、AOP概念什么是 AOP(1)面向切面编程(方面),利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。(2)通俗描述:不通过修改源代码方式,在主干功能里面添加新功能(3)使用登录例子说明 AOP二、AOP底层原理AOP 底层使用动态代理有两种情况动态代理(1)第一种 有接口情况,使用 JDK 动态代理创建接口实现类代理对象,(实现接口)增强类的方法(2)第二种 没有接口情况,使用 CGLIB 动态代

2021-11-21 21:06:20 98

原创 Spring5 框架概述 、IOC 容器

一、Spring5 框架概述介绍Spring 是轻量级的开源的 JavaEE 框架Spring 可以解决企业应用开发的复杂性Spring 有两个核心部分:IOC 和 Aop(1)IOC:控制反转,把创建对象过程交给 Spring 进行管理(2)Aop:面向切面,不修改源代码进行功能增强Spring 特点(1)方便解耦,简化开发(2)Aop 编程支持(3)方便程序测试(4)方便和其他框架进行整合(5)方便进行事务操作(6)降低 API 开发难度二、IOC(概念和原理)什么是 IO

2021-11-21 20:00:03 913

原创 Cookie、Session、Filter过滤器、Ajax请求

一、Cookie什么是Cookie1、Cookie翻译过来是饼干的意思。2、Cookie是服务器通知客户端保存键值对的一种技术。3、客户端有了Cookie后,每次请求都发送给服务器。4、每个Cookie的大小不能超过4kb如何创建Cookie服务器如何获取Cookie服务器获取客户端的Cookie只需要一行代码:req.getCookies():Cookie[]Cookie值的修改方案一:1、先创建一个要修改的同名(指的就是key)的Cookie对象2、在构造器,同时赋于新的Coo

2021-11-11 21:09:28 1487

原创 JSP、EL表达式、JSTL标签库

一、jsp介绍jsp的全称是javaserverpages。Java的服务器页面。jsp的主要作用是代替Servlet程序回传html页面的数据因为Servlet程序回传html页面数据是一件非常繁锁的事情。开发成本和维护成本都极高jsp页面和html页面一样,都是存放在web目录下。访问也跟访问html页面一样。jsp的本质jsp页面本质上是一个Servlet程序。当我们第一次访问jsp页面的时候。Tomcat服务器会帮我们把jsp页面翻译成为一个java源文件。并且对它进行编译成为.clas

2021-11-11 20:28:00 1016

原创 Servlet技术总结

一、Servlet介绍什么是Servlet1、Servlet是JavaEE规范之一。规范就是接口2、Servlet就JavaWeb三大组件之一。三大组件分别是:Servlet程序、Filter过滤器、Listener监听器。3、Servlet是运行在服务器上的一个java小程序,它可以接收客户端发送过来的请求,并响应数据给客户端。手动实现Servlet程序1、编写一个类去实现Servlet接口public class HelloServlet implements Servlet{@Overr

2021-11-11 17:05:56 344

原创 jQuery基础总结

一、jQuery介绍什么是jQueryjQuery,顾名思义,也就是JavaScript和查询(Query),它就是辅助JavaScript开发的js类库。jQuery核心思想它的核心思想是writeless,domore(写得更少,做得更多),所以它实现了很多浏览器的兼容问题。jQuery好处jQuery是免费、开源的,jQuery的语法设计可以使开发更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用Ajax以及其他功能使用jQuery使用jQuery一定要引入jQu

2021-11-11 15:44:23 1140

原创 JavaScript基础总结

一、JavaScript 简介JavaScript 是脚本语言JavaScript 是一种轻量级的编程语言。JavaScript 是可插入 HTML 页面的编程代码。JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。JavaScript 很容易学习。用途直接写入 HTML 输出流对事件的反应改变 HTML 内容改变 HTML 图像改变 HTML 样式验证输入二、JavaScript用法HTML 中的脚本必须位于 < script> 与 &lt

2021-10-28 16:39:24 341

原创 CSS基础总结

一、CSS简介CSS 指层叠样式表 (Cascading Style Sheets)样式定义如何显示 HTML 元素样式通常存储在样式表中把样式添加到 HTML 4.0 中,是为了解决内容与表现分离的问题外部样式表可以极大提高工作效率外部样式表通常存储在 CSS 文件中多个样式定义可层叠为一个CSS 语法CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明:选择器通常是您需要改变样式的 HTML 元素。每条声明由一个属性和一个值组成。属性(property)是您希望设置的样

2021-10-28 14:03:01 93

原创 HTML基础总结

一、简介<!DOCTYPE html> 声明为 HTML5 文档<html> 元素是 HTML 页面的根元素<head> 元素包含了文档的元(meta)数据,如 <meta charset="utf-8"> 定义网页编码格式为 utf-8。<title> 元素描述了文档的标题<body> 元素包含了可见的页面内容<h1> 元素定义一个大标题<p> 元素定义一个段落1.2什么是htmlHTML

2021-10-28 12:37:27 79

原创 JDBC核心技术(进阶)

一、 批量插入1.1批量执行SQL语句当需要成批插入或者更新记录时,可以采用Java的批量更新机制,这一机制允许多条语句一次性提交给数据库批量处理。通常情况下比单独提交处理更有效率JDBC的批量处理语句包括下面三个方法:addBatch(String):添加需要批量处理的SQL语句或是参数;executeBatch():执行批量处理语句;clearBatch():清空缓存的数据1.2高效的批量插入数据库中提供一个goods表。创建如下:CREATE TABLE goods(id

2021-10-28 10:25:03 102

原创 JDBC核心技术(基础)

JDBC核心技术(基础)一、JDBC概述1.1 Java中的数据存储技术在Java中,数据库存取技术可分为如下几类:JDBC直接访问数据库JDO (Java Data Object )技术第三方O/R工具,如Hibernate, Mybatis 等JDBC是java访问数据库的基石,JDO、Hibernate、MyBatis等只是更好的封装了JDBC。1.2 JDBC介绍JDBC(Java Database Connectivity)是一个独立于特定数据库管理

2021-10-27 20:05:43 260

原创 Statement和PreparedStatement的联系与区别

Statement和PreparedStatement的联系与区别联系PreparedStatement继承自Statement,两者都是接口两者都在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句区别Statement对象,用于执行不带参数的简单SQL语句prepareStatement会先初始化SQL,先把这个SQL提交到数据库中进行预处理,多次使用可提高效率。两种方式执行SQL语句的代码:Statementpublic void delete( int id){

2021-10-23 16:22:22 269

原创 MySQL进阶总结

MySQL进阶总结数据类型整型种类:tinyint、smallint、mediumint、int/integer、bigint长度:1 2 3 4 8如果不设置无符号还是有符号,默认是有符号,如果想设置无符号,需要添加unsigned关键字如果插入的数值超出了整型的范围,会报out of range异常,并且插入临界值如果不设置长度,会有默认的长度长度代表了显示的最大宽度,如果不够会用0在左边填充,但必须搭配zerofill使用浮点型定点数:dec(M

2021-09-29 16:29:54 101

原创 MySQL基础总结

MySQL基础总结1.整体大纲2.相关概念介绍DB:数据库(database):存储数据的“仓库”。它保存了一系列有组织的数据。DBMS数据库管理系统(Database Management System)。数据库是通过DBMS创建和操作的容器常见的数据库管理系统:MySQL、Oracle、DB2、SqlServer等。SQL结构化查询语言(Structure Query Language):专门用来与数据库通信的语言。SQL的优点:①简单易学;②不是某个特定数据库供应商专有的语言,几乎

2021-09-29 15:46:24 67

原创 Java学习(十七)多线程

Java学习(十七)多线程文章目录Java学习(十七)多线程前言一、多线程概述二、多线程实现多线程实现方式三、线程安全问题同步代码块解决线程安全问题JDK5之后的Lock锁的概述和使用线程间的等待唤醒机制内存可见性问题线程池前言要想说线程,首先必须得聊聊进程,因为线程是依赖于进程存在的。进程就是正在运行的程序,是系统进行资源分配和调用的独立单位。每一个进程都有它自己的内存空间和系统资源。多进程的意义单进程计算机只能做一件事情。而我们现在的计算机都可以一边玩游戏(游戏进程),一边听音乐(音乐进

2021-09-21 20:32:16 67

原创 linux下的图形界面X server

linux下的图形界面X server1.Linux本身没有图形界面linux现在的图形界面的实现只是linux下的应用程序实现的,图形界面并不是linux的一部分,linux只是一个基于命令行的操作系统。同样X server只是 linux下的一个应用程序而已,不是系统的一部分。WINDOWS 95及以后的版本他们的图形界面是操作系统的一部分,图形界面在系统内核中就实现了,没有了图形界面windows就不成为windows 了,但linux却不一样,没有图形界面linux还是linux,很多装lin

2021-09-08 20:07:13 1876

原创 Linux无桌面环境下,实现USB的自动挂载/卸载

Linux无桌面环境下,实现USB的自动挂载/卸载1.gnome桌面环境如何实现USB的自动挂载2.udev3.单个设备自动挂载/卸载4.usbmount工具实现自动挂载卸载linux无桌面环境是无法自动挂载和卸载USB设备的,需要通过mount和umount命令实现手动挂载卸载,今天就讲一下无桌面环境下Linux如何实现USB设备的自动挂载和卸载。1.gnome桌面环境如何实现USB的自动挂载首先我们要了解gnome桌面环境如何实现USB的自动挂载的。U盘的热拔插/自动挂载跟linux2.6 ke

2021-09-08 11:33:00 1605

原创 Java学习(十六)IO流

Java学习(十六)IO流文章目录Java学习(十六)IO流一、IO流概述及其分类二、IO流整体继承体系介绍一、IO流概述及其分类IO流概述IO流用来处理设备之间的数据传输Java对数据的操作是通过流的方式Java用于操作流的对象都在IO包中 java.ioIO流分类1.按数据流向分类是站在内存角度看,分为输入流(读数据)和输出流(写数据)2.按照数据类型分类字节流 可以读写任何类型的文件 比如音频 视频 文本文件字符流 只能读写文本文件分类图如下:IO流基

2021-06-12 21:44:39 65

原创 Java学习(十五)异常、File文件类

Java学习(十五)异常、File文件类文章目录Java学习(十五)异常、File文件类一、异常异常概述JVM默认是如何处理异常的异常处理自定义异常编译期异常和运行期异常的区别Throwable的几个常见方法异常注意事项二、File类概述构造方法File的功能一、异常异常概述异常就是Java程序在运行过程中出现的错误。有一些错误是用户造成的,比如,希望用户输入一个int类型的年龄,但是用户的输入是abc还有一些错误是随机出现,并且永远不可能避免的。比如:网络突然断了,连接不到远程服务器;

2021-06-04 20:40:20 133

原创 # Java学习(十四)数据结构、泛型

Java学习(十四)数据结构、泛型文章目录Java学习(十四)数据结构、泛型一、数据结构二、泛型一、数据结构数据结构其实就是存储数据的格式分类:栈 , 队列 , 数组 , 链表 , 树 , 哈希表,图,堆1.数组数组是一种线性结构,而且在物理内存中也占据着一块连续空间。优点:访问数据简单。缺点:添加和删除数据比较耗时间。使用场景:频繁查询,对存储空间要求不大,很少增加和删除的情况。数据访问:由于数据是存储在连续空间内,所以每个数据的内存地址都是通过数据小标算出,所以可以直

2021-06-04 19:34:26 124

原创 Java学习(十三)集合

Java学习(十三)集合文章目录Java学习(十三)集合前言一、集合的由来及集合继承体系图前言集合的由来面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,Java就提供了集合类。一、集合的由来及集合继承体系图集合的由来面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,Java就提供了集合类。集合框架被设计成要满足以下几个目标。 1.该框架必须是高性能的。基本集合(动态数组,链表,树,哈希表)的实现也必须是高效的。 2.该框架允许不

2021-06-04 19:13:47 75

原创 Java学习(十二)正则表达式、常用类介绍

Java学习(十二)正则表达式、常用类介绍-Pattern、Matcher、Math、BigDecimal、Date等文章目录Java学习(十二)正则表达式、常用类介绍-Pattern、Matcher、Math、BigDecimal、Date等一、正则表达式正则表达式概述Pattern和Matcher的概述二、Math类概述和方法使用三、Random类的概述和方法使用System类BigDecimal类Date类SimpleDateFormat类一、正则表达式正则表达式: 正确规则的表达式 规

2021-05-21 16:36:37 255

原创 # Java学习 排序算法

Java学习 排序算法—冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序排序就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法在很多领域得到相当地重视,尤其是在大量数据的处理方面。一个优秀的算法可以节省大量的资源。文章目录Java学习 排序算法—冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序前言一、冒泡排序二、选择排序三、插入排序四、希尔排序五、快速排序六、归并排序总结前言今天讲Java中常用的几种排序算法原理以及代码,常见的排序算

2021-05-14 22:27:07 71

原创 Java学习(十一)StringBuffer类、基本数据类型包装类

Java学习(十一)StringBuffer类、基本数据类型包装类文章目录Java学习(十一)StringBuffer类、基本数据类型包装类一、StringBuffer类StringBuffer类概述、构造方法StringBuffer类其他方法StringJoiner二、基本类型包装类基本类型包装类的概述Integer类的概述和构造方法JDK5的新特性自动装箱和拆箱一、StringBuffer类StringBuffer类概述、构造方法-StringBuffer类线程安全的可变字符序列我们如

2021-05-14 17:23:42 101

原创 Java学习(十)Object类、String类

Java学习(十)Object类、String类基本类及其方法的学习和使用文章目录Java学习(十)Object类、String类一、Object类API概述以及Object类的概述Object类常见方法二、String类String类的概述String的特点一旦被创建就不能改变String类的判断功能String类的获取功能String类的转换功能String类的其他功能一、Object类API概述以及Object类的概述API应用程序编程接口Java API就是Jav

2021-05-14 15:45:52 147

原创 Java学习(九)返回值类型研究、权限修饰符、内部类

Java学习(九)返回值类型研究、权限修饰符、内部类文章目录Java学习(九)返回值类型研究、权限修饰符、内部类一、方法参数类型以及返回值类型问题研究二、权限修饰符三、内部类内部类概述成员内部类局部内部类匿名类一、方法参数类型以及返回值类型问题研究类名作为形式参数、返回值类型当你以后看到一个方法的形参要一个 类 类型,你就传递一个该类的对象。当你以后看到一个方法的返回值类型,是一个类 类型,你就返回一个该类的对象。抽象类名作为形式参数、返回值类型当你以后看到一个方法的形参要

2021-05-07 18:57:01 76

原创 Java学习(八)面向对象—多态、抽象类、接口

面向对象—多态、抽象类、接口文章目录面向对象—多态、抽象类、接口一、多态多态概述多态的前提多态的好处与弊端多态的内存图解二、抽象类三、接口一、多态多态概述某一个事物,在不同时刻表现出来的不同状态。举例 举例: Cat c=new Cat(); Animal a=new Cat(); 猫可以是猫的类型。猫 m = new 猫(); 同时猫也是动物的一种,也可以把猫称为动物。动物 d = new 猫();多态的前提 a:要有继承关系。 b:要有方法重写。

2021-05-07 17:44:25 131

原创 Java学习(七)面向对象—继承

Java学习(七)面向对象—继承今天学习面向对象三个概念中的继承文章目录Java学习(七)面向对象—继承代码块继承概述继承中成员变量的关系继承中构造方法的关系方法重写final关键字概述代码块代码块概述在Java中,使用{ }括起来的代码被称为代码块。代码块分类及其作用分类:根据其位置和声明的不同,可以分为局部代码块,构造代码块,静态代码块,同步代码块(多线程讲解)。常见代码块的应用 a:局部代码块 在方法中出现;限定变量生命周期,及早释放,提高内存利用率

2021-04-30 18:07:29 106 1

原创 Java学习(六)面向对象概述、封装

Java学习(六)面向对象概述、封装我们来回想一下,这几天我们完成一个需求的步骤:首先是搞清楚我们要做什么,然后在分析怎么做,最后我们再代码体现。一步一步去实现,而具体的每一步都需要我们去实现和操作。这些步骤相互调用和协作,完成我们的需求。在上面的每一个具体步骤中我们都是参与者,并且需要面对具体的每一个步骤和过程,这就是面向过程最直接的体现。那么什么是面向过程开发呢? 面向过程开发,其实就是面向着具体的每一个步骤和过程,把每一个步骤和过程完成,然后由这些功能方法相互调用,完成需求。文章目录Java

2021-04-23 16:13:29 60

原创 Java学习(五)一维数组、二维数组、递归

Java学习(五)一维数组、二维数组、递归数组(Array)是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。文章目录Java学习(五)一维数组、二维数组、递归前言一、一维数组数组概念Java中的内存分配以及栈和堆的区别二、二维数组2.读入数据总结前言数组在编程中应用广泛,在javaz中数组和局部变量的存储的数据区域不同,要注意区分一、一维数组数组概念:数组是存储同一种数据类型多个元素的集合

2021-04-12 21:33:52 212

原创 JAVA学习(四)循环语句、跳转语句、方法(函数)

JAVA学习(四)提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录JAVA学习(四)前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内

2021-04-09 15:46:45 90

原创 Java学习(三)运算符、键盘录入、流程控制语句

Java学习(三)运算符、键盘录入、流程控制语句java语言基础,学习​运算符:逻辑运算符 ​ 、位运算符 ​ 、三元运算符 、键盘录入数据;流程控制语句:顺序结构语句 ​ 、选择结构文章目录Java学习(三)运算符、键盘录入、流程控制语句前言一、运算符1.逻辑运算符2.位运算符3.三元运算符二、键盘录入1.格式三、流程控制语句1.顺序结构2.选择结构总结前言一、运算符1.逻辑运算符分类&(并且) , |(或者) , !(非) , ^(异或) , &&(短

2021-04-05 21:04:56 91 1

原创 Java学习(二)常量变量、数据类型、运算符

Java学习(二)(二)这次我们讲java语言基础文章目录Java学习(二)前言一、常量二、变量1.引入库2.读入数据三、运算符总结前言今天主要讲java语言基础的常量,变量,运算符的一些基础知识,补充一下反码补码的一些知识一、常量示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、变量1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot

2021-04-01 21:58:06 70

原创 JAVA学习(一)java介绍、JDK安装配置

JAVA学习(一)(一)Java学习的基础内容:java介绍、JDK安装配置、语言基础、文章目录JAVA学习(一)前言一、java介绍java编程工具java语言平台java语言特点编程环境JDK、JRE、JVM二、使用步骤1.引入库2.读入数据总结前言Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言是静态面向对象编程语言的代表,极好地实现了面向对象理论,java语言变得

2021-03-31 16:46:48 123

空空如也

空空如也

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

TA关注的人

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