自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

weixin_44152682的博客

温故而知新

  • 博客(42)
  • 收藏
  • 关注

原创 MyBatisPlus 自动生成

MyBatisPlus 自动生成根据数据表自动生成实体类、Mapper、Service、ServiceImpl、Controller1、pom.xml 导⼊ MyBatis Plus Generator<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plusgenerator</artifactId> <version>3.3.1.tmp&

2022-05-21 18:30:00 461

原创 SpringBoot查询、自定义 SQL(多表关联查询)、添加、删除

查询//mapper.selectList(null);QueryWrapper wrapper = new QueryWrapper();// Map<String,Object> map = newHashMap<>();// map.put("name","⼩红");// map.put("age",3);// wrapper.allEq(map);// wrapper.gt("age",2);// wrapper.ne("name","⼩红");// wr

2022-05-20 17:30:00 1519

原创 MyBatisPlus常用注解

MyBatisPlus常用注解@TableName映射数据库的表名package com.southwind.mybatisplus.entity;importcom.baomidou.mybatisplus.annotation.TableName;import lombok.Data;@Data@TableName(value = "user")public class Account { private Integer id; private String name; pri

2022-05-19 19:00:00 463

原创 MyBatis Plus

MyBatis Plus国产的开源框架,基于 MyBatis,核心功能就是简化 MyBatis 的开发,提高效率。MyBatis Plus 快速上手Spring Boot(2.3.0) + MyBatis Plus1、创建 Maven 工程2、pom.xml 引入 MyBatis Plus 的依赖<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot

2022-05-18 23:35:06 159

原创 Spring Cloud Config 本地配置、 Spring Cloud 服务跟踪

Spring Cloud Config 本地配置本地文件系统我们可以将微服务的相关配置文件存储到本地文件中,然后让微服务来读取本地配置文件。创建本地 Config Server1、创建 Module,pom.xml<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server

2022-05-17 15:46:08 389

原创 Fiegn 声明式接口调用、Hystrix 容错监控机制

Fiegn 声明式接口调用什么是FeignNetflix,Feign 是⼀个提供模版的声明式 Web Service 客户端,使用 Feign 可以简化 Web Service 客户端的编写,开发者可以通过简单的接口和注解来调用 HTTP API。Spring Cloud Feign:可插拔、基于注解、负载均衡、服务熔断只需要创建接口,同时在接口上添加相关注解即可。Ribbon 和 Feign 的区别:Ribbon 是⼀个通用的 HTTP 客户端⼯具,Feign 是基于 Ribbon ,更加灵动

2022-05-13 11:00:00 221

原创 服务网关、Spring Cloud Zuul、Ribbon 负载均衡

服务网关API 网关可以对所有的 API 请求进行统⼀的管理维护,相当于为系统开放出⼀个统⼀的接口,所有的外部请求只需要统⼀访问这个外部⼊口即可,系统内部再通过高API 网关去映射不同的微服务。对于开发者而言就不需要关注具体的微服务 URL,直接访问网关即可。Spring Cloud Zuul1、创建 Module,pom.xml<dependencies> <dependency> <groupId>org.springframework.cloud&l

2022-05-12 10:45:00 227

原创 Spring Cloud 、RestTemplate

RestTemplate通过 RestTemplate 可以实现不同微服务之间的调用。RestTemplate 是 Spring 框架提供的⼀种基于 RESTful 的服务组件,底层对 HTTP 请求及响应进行了封装,提供了很多访问远程 REST 服务的方法,可以简化代码的开发。如何使用 RestTemplate1、创建 Maven 工程,pom.xml<parent> <groupId>org.springframework.boot</groupId>

2022-05-11 15:45:00 189

原创 Spring Cloud Eureka

什么是 Eureka?Spring Cloud Eureka,提供服务注册和服务发现功能。Spring Cloud Eureka 的组成Eureka Server 服务端Eureka Client 客户端代码实现1、创建 Maven ⽗⼯程,pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://ww

2022-05-10 11:00:00 68

原创 Spring Cloud、微服务架构的核心组件、Spring Boot 和 Spring Cloud 的关系

Spring Cloud微服务产生的背景单体应用存在的问题:1、随着业务的发展,开发变得越来越复杂。2、修改、新增某个功能,需要对整个系统进行测试,重写部署。3、⼀个模块出现问题,很可能导致整个系统崩溃。4、多团队同时对数据进⾏行管理,容易产生安全漏洞。5、各个模块使用同⼀种技术框架,局限性太大,很难根据业务选择最适合的技术架构。6、模块内容太复杂,如果员工离职,可能需要很长时间才能完成任务交接。为了解决上述问题,微服务架构应运而生,简单来说,微服务就是将⼀个单体应用拆分成若干个小型服务

2022-05-09 16:30:00 297

原创 Spring Boot 整合 Spring Data JPA、Spring Boot 整合 Spring Security

Spring Boot 整合 Spring Data JPASpring Data JPA 是 Spring Data ⼤家族的⼀员JPA 和 Spring Data JPA 的关系JPA (Java Persistence API)Java 持久层规范,定义了⼀系列 ORM 接口,它本身是不能直接使用,接口必须实现才能使用,Hibernate 框架就是⼀个实现了 JPA 规范的框架。Spring Data JPA 是 Spring 框架提供的对 JPA 规范的抽象,通过约定的命名规范完成持久层接口

2022-05-09 09:30:00 312

原创 Spring Boot 整合持久层、 Spring Boot 整合 JdbcTemplate、Spring Boot 整合 MyBatis

Spring Boot 整合持久层Spring Boot 整合 JdbcTemplateJdbcTemplate 是 Spring 自带的 JDBC 模版组件,底层实现了对 JDBC 的封装,用法与 MyBatis 类似,需要开发者自定义 SQL 语句,JdbcTemplate 帮助我们完成数据库的连接,SQL 执行,结果集的封装。不足之处是灵活性不如 MyBatis,因为 MyBatis 的 SQL 语句定义在 XML 中,更有利于维护和扩展,JdbcTemplate 以硬编码的方式将 SQL 直接

2022-05-08 21:32:09 232

原创 Thymeleaf 对象、Thymeleaf 内置对象

Thymeleaf 对象Thymeleaf 支持直接访问 Servlet Web 原生资源,HttpServletRequest、HttpServletResponse、HttpSession、ServletContext。#request: 获取 HttpServletRequest 对象#response: 获取 HttpServletResponse 对象#session: 获取 HttpSession 对象#servletContext: 获取 ServletContext 对象``

2022-05-07 10:30:00 912

原创 Spring Boot 整合 Thymeleaf、Thymeleaf 常用标签

Spring Boot 整合 ThymeleafThymeleafThymeleaf 是⼀个支持原生THML 文件的 Java 模版,可以实现前后端分离的交互方式,即视图与业务数据分开响应,它可以直接将服务端返回的数据生成 HTML 文件,同时也可以处理 XML、JavaScript、CSS 等格式。Thymeleaf 最⼤的特点是既可以直接在浏览器打开(静态方式),也可以结合服务端将业务数据填充到HTML 之后动态生成的页面(动态方法),Spring Boot 支持 Thymeleaf,使用起来非常

2022-05-06 17:00:00 2555

原创 Spring Boot 整合 JSP

Spring Boot 整合 JSPSpring Boot 与视图层的整合:1、JSP2、ThymeleafJava Server Page,是 Java 提供的⼀种动态网页技术,底层是 Servlet,可以直接在 HTML 中插⼊ Java代码。JSP 底层原理:JSP 是⼀种中间层组件,开发者可以在这个组件中将 Java 代码与 HTML 代码进行整合,由 JSP 引擎将组件转为 Servlet,再把开发者定义在组件中的混合代码翻译成 Servlet 的响应语句,输出给客户端。1、创建基于

2022-05-05 11:00:00 445

原创 Spring Boot、使用、配置文件

Spring Boot通过 Spring Boot 可以快速构建⼀个基于 Spring 框架的 Java Application,简化配置,自动装配。JavaConfiguration 用 Java 类替代 XML 的配置方式。Spring Boot 对常用的第三方库提供了配置方案,可以很好地和 Spring 进行整合,⼀键式搭建功能完备的 Java 企业级应用。开箱即用是 Spring Boot 的特点Spring Boot 的优势:不需要任何 XML 配置⽂件,内嵌 Tomcat,可以直接部

2022-05-04 15:30:00 149

原创 SSM 框架整合

SSM 框架整合Spring + Spring MVC + MyBatis代码实现1、创建 Maven Web 工程,pom.xml引入依赖<dependencies> <!-- Spring MVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <vers

2022-05-03 23:00:08 76

原创 MyBatis 动态 SQL

MyBatis 动态 SQLpublic class User{ private Integer id; private String username; private String password; private Integer age; }通过 id 和 username 查询 User。通过 username 和 password 查询 User。通过 password 和 age 查询 User。在 UserRepository 中定义上述 3 个方法public Use

2022-05-02 18:45:00 217

原创 MyBatis 缓存

MyBatis 缓存使⽤缓存的作用也是为了减少 Java Application 与数据库的交互次数,从而提升程序的运行效率。MyBatis 有两种缓存:一级缓存和二级缓存。一级缓存MyBatis 自带⼀级缓存,并且是无法关闭的,⼀直存在,⼀级缓存的数据存储在 SqlSession 中。即使用同⼀个 SqlSession 进行查询操作的时候,⼀级缓存存在,如果使用多个 SqlSession 进行查询操作,⼀级缓存不存在,缓存只针对于查询,但是如果 SqlSession 执行了增、删、改操作,MyB

2022-05-02 09:30:00 99

原创 MyBatis 逆向工程、MyBatis 延迟加载

MyBatis 逆向工程MyBatis 是半自动化的 ORM 框架,SQL 语句需要开发者自定义,SQL 需要单独定义在 Mapper.xml中,与 Mapper 接口对应,使用MyBatis 进行开发的基本配置:实体类Mapper 接⼝Mapper.xml这种方法的缺陷是如果参与业务的表太多,每张表的业务都需要自定义 SQL、创建实体类、Maper 接口,工作量较大。MyBatis 框架可以自动根据数据表,帮助开发者生成实体类、Mapper 接口、Mapper.xml,这就是逆向工程。逆向

2022-05-01 23:30:00 786

原创 Mapper.xml 常用配置、单表查询(paramterType、resultType)、多表关联查询(一对多、多对多)

Mapper.xml 常用配置MyBatis 配置文件有两种:1、全局环境配置文件(数据源、事务管理、Mapper 注册、打印 SQL、惰性加载、二级缓存。。。)2、Mapper 配置文件(定义自定义接口的具体实现方案:SQL、数据与 POJO 的映射)多表关联查询包括一对一、一对多、多对多单表查询<select id="findById" parameterType="java.lang.Integer"resultType="com.southwind.entity.People"&

2022-05-01 16:26:18 4249

原创 MyBatis介绍、使用

MyBatis主流的 ORM 框架,之前叫做 iBatis,后来更名为 MyBatis,实现数据持久化的框架。同时 Java,.NET,Ruby 三种语言,MyBatis 是⼀个对 JDBC 进行封装的框架。ORM 框架 Hibernate,MyBatis 和 Hibernate 的区别?Hibernate 是⼀个“全自动化” ORM 框架,MyBatis 是⼀个“半自动化的”ORM框架。全自动化:开发者只需要调用相关接口就可以完成操作,整个流程框架都已经进行了封装。Hibernate 实现了 PO

2022-05-01 09:30:00 175

原创 Spring MVC表单标签库、Spring MVC国际化

Spring MVC表单标签库1、Student 实体类package com.southwind.entity2;import lombok.Data;@Datapublic class Student { private Integer id; private String name; private Integer age; private String gender; }2、Handlerpackage com.southwind.controller;import com

2022-04-30 23:30:00 321

原创 Spring MVC实现文件的上传下载、Spring MVC 数据校验

文件上传单文件上传1、底层使用的是 Apache fileupload 组件完成上传功能,Spring MVC 只是对其进行了封装,简化开发,pom.xml<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version></dependency> <depe

2022-04-30 17:00:00 274

原创 Spring MVC自定义数据类型转换器、Spring MVC与RESTful的集成

Spring MVC自定义数据类型转换器1、创建 DateConverter 类,并实现 org.springframework.core.convert.converter.Converter 接口,这样它就成为了⼀个自定义数据类型转换器,需要指定泛型 <String,Date>,表示将 String 类型转为Date 类型。package com.southwind.converter;import org.springframework.core.convert.converter

2022-04-30 09:30:00 366

原创 Spring MVC 视图层解析、业务数据绑定到 request 域对象、业务数据绑定到 session 域对象

Spring MVC 视图层解析调⽤ Web 资源给域对象传值pagerequestsessionapplication业务数据的绑定是指将业务数据绑定给 JSP 域对象,业务数据的绑定是由 ViewResolver 来完成的,开发时,我们先添加业务数据,再交给 ViewResolver 来绑定,因此学习的重点在于如何添加业务数据,Spring MVC 提供了以下几种⽅式来添加业务数据:MapModelModelAndView@SessionAttribute@ModelAttrib

2022-04-29 16:30:00 395

原创 Spring MVC页面的转发和重定向、数据绑定

JSP 页面的转发和重定向Spring MVC 默认以转发的形式响应 JSP,可以手动进行修改。重定向@RequestMapping("/restful/{id}/{name}")public String restful(@PathVariable("id") Integer id,@PathVariable("name")String name){ System.out.println(id+"-"+name); return "redirect:/index.jsp"; }设置重定向

2022-04-29 10:00:00 384

原创 Spring MVC 常用注解、@RequestMapping 常用参数、参数绑定( RESTful 、映射 Cookie、使用POJO 绑定参数)

Spring MVC 常用注解@RequestMappingSpring MVC 通过 @RequestMapping 注解将 URL 请求与业务方法进行映射,在控制器的类定义处以及方法定义处都可以添加 @RequestMapping ,在类定义处添加相当于多了⼀层访问路径。package com.southwind.controller;import org.springframework.stereotype.Controller;import org.springframework.web.

2022-04-28 23:45:00 1062

原创 Spring MVC功能、原理、使用

Spring MVCSpring MVC 是 Spring Framework 提供的 Web 组件,全称是 Spring Web MVC,是⽬前主流的实现MVC 设计模式的框架,提供前端路由映射、视图解析等功能。Java Web 开发者必须要掌握的技术框架。Spring MVC 功能MVC:Controller(控制层)、Model(模型层)、View(视图层)流程:Controller 接收客户端请求,调⽤相关业务层组件产出 Model,或业务数据并返回给Controller,Controll

2022-04-28 19:11:44 526

原创 Spring AOP

Spring AOPAOP(Aspect Oriented Programming)面向切面编程。OOP(Object Oriented Programming)面向对象编程,用对象化的思想来完成程序。AOP 是对 OOP 的⼀个补充,是在另外⼀个维度上抽象出对象。具体是指程序运行时动态地将非业务代码切⼊到业务代码中,从而实现程序的解耦合,将非业务代码抽象成⼀个对象,对对象编程就是面向切面编程。上述形式的代码维护性差,没有代码复用性,使⽤ AOP 进行优化,如下图所示。AOP 的优点:1、可

2022-04-28 13:06:55 92

原创 Spring IoC 自动装载 autowire、 基于注解的开发

Spring IoC 自动装载 autowire自动装载是 Spring 提供的⼀种更加简便的⽅式来完成 DI,不需要手动配置 property,IoC 容器会自动选择 bean 完成注⼊。自动装载有两种⽅式:byName,通过属性名完成自动装载。byType,通过属性对应的数据类型完成⾃动装载。byName 的操作如下所示。1、创建 Person 实体类。@Datapublic class Person { private Integer Id; private String name

2022-04-27 21:05:00 1002

原创 Spring、Spring依赖、Spring读取外部资源、Spring工厂方法

Spring 的依赖用来设置两个 bean 的创建顺序。IoC 容器默认情况下是通过 spring.xml 中 bean 的配置顺序来决定创建顺序的,配置在前⾯的 bean 会先创建。在不更改 spring.xml 配置顺序的前提下,通过设置 bean 之间的依赖关系来调整 bean 的创建顺序。<bean id="account" class="com.southwind.entity.Account" depends-on="user"></bean> <bean

2022-04-27 15:27:18 88

原创 Spring Ioc、Ioc DI、Spring 继承,been

Spring 两⼤核心机制IoC:工厂模式AOP:代理模式IoCIoC 是 Spring 框架的灵魂,控制反转。开发步骤1、创建 Maven ⼯程,pom.xml 导⼊依赖。<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>

2022-04-25 21:16:27 468

原创 数据库连接池、C3P0

数据库连接池JDBC 开发流程1、加载驱动(只需要加载⼀次)2、建⽴数据库连接(Connection)3、执⾏ SQL 语句(Statement)4、ResultSet 接收结果集(查询)5、断开连接,释放资源数据库连接对象是通过 DriverManager 来获取的,每次获取都需要向数据库申请获取连接,验证⽤户名和密码,执行完 SQL 语句后断开连接,这样的⽅式会造成资源的浪费,数据连接资源没有得到很好的重复利⽤。可以使⽤数据库连接池解决这⼀问题。数据库连接池的基本思想就是为数据库建⽴⼀个

2022-04-24 23:07:30 123

原创 JDBC的介绍与使用

JDBCJava DataBase Connectivity 是⼀个独⽴于特定数据库的管理系统,通⽤的 SQL 数据库存取和操作的公共接⼝。定义了⼀组标准,为访问不同数据库提供了统⼀的途径。JDBC 体系结构JDBC 接⼝包括两个层⾯:⾯向应⽤的 API,供程序员调⽤⾯向数据库的 API,供⼚商开发数据库的驱动程序JDBC API提供者:Java 官⽅内容:供开发者调⽤的接⼝java.sql 和 javax.sqlDriverManager 类Connection 接⼝Sta

2022-04-24 16:46:02 66

原创 JSP 内置对象作⽤域、EL 表达式、JSTL

JSP 内置对象作⽤域page、request、session、applicationsetAttribute、getAttributepage 作⽤域:对应的内置对象是 pageContext。request 作⽤域:对应的内置对象是 request。session 作⽤域:对应的内置对象是 session。application 作⽤域:对应的内置对象是 application。page < request < session < applicationpage 只在当

2022-04-23 23:17:10 71

原创 JSP内置对象,session,cookie

JSPJSP 本质上就是⼀个 Servlet,JSP 主要负责与⽤户交互,将最终的界⾯呈现给⽤户,HTML+JS+CSS+Java 的混合⽂件。当服务器接收到⼀个后缀是 jsp 的请求时,将该请求交给 JSP 引擎去处理,每⼀个 JSP ⻚⾯第⼀次被访问的时候,JSP 引擎会将它翻译成⼀个 Servlet ⽂件,再由 Web 容器调⽤ Servlet 完成响应。单纯从开发的⻆度看,JSP 就是在 HTML 中嵌⼊ Java 程序。具体的嵌⼊⽅式有 3 种1、JSP 脚本,执⾏ Java 逻辑代

2022-04-22 22:56:57 237

原创 Servlet

Servlet什么是 Servlet?Servlet 是 Java Web 开发的基⽯,与平台⽆关的服务器组件,它是运⾏在 Servlet 容器/Web 应⽤服务器/Tomcat,负责与客户端进⾏通信。Servlet 的功能:1、创建并返回基于客户请求的动态 HTML ⻚⾯。2、与数据库进⾏通信。如何使⽤ Servlet?Servlet 本身是⼀组接⼝,⾃定义⼀个类,并且实现 Servlet 接⼝,这个类就具备了接受客户端请求以及做出响应的功能。package com.southwind

2022-04-21 22:26:05 80

转载 java反射

定义JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。获取Class对象的方式:1. Class.forName(“全类名”):将字节码文件加载进内存,返回Class对象* 多用于配置文件,将类名定义在配置文件中。读取文件,加载类2. 类名.class:通过类名的属性class获取* 多用于参数的传递3. 对象.getClass():getCl

2022-04-20 11:24:08 83

原创 java集合

1.Collection接口Collection是最基本的集合接口,一个Collection代表一组Object的集合,这些Object被称作Collection的元素。所有实现Collection接口的类都必须提供两个标准的构造函数:无参数的构造函数用于创建一个空的Collection,有一个Collection参数的构造函数用于创建一个新的Collection,这 个新的Collection与传入的Collection有相同的元素。后一个构造函数允许用户复制一个Collection。Collect

2022-04-19 10:51:24 46

空空如也

空空如也

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

TA关注的人

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