自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (2)
  • 收藏
  • 关注

原创 在Linux服务器上连接MySQL与查看版本

好好学习,一起成长…Linux连接MySQL命令:mysql -h主机地址 -u用户名 -p用户密码 如果输入-p回车可以隐藏输入密码连接本机MySQL还可以直接使用命令:mysql -u用户名 -p用户密码 mysql -uyeb -p4356765Linux查看MySQL版本信息mysql -V或mysql --version连接MySQL后,可以使用以下方式查看select version();status...

2021-02-28 22:32:20 395 1

原创 Java 静态代理和动态代理的使用及原理解析

好好学习,一起成长…转发自Java 静态代理和动态代理的使用及原理解析 - 山南旅人的文章 - 知乎代理模式代理模式是软件开发中常见的设计模式,它的目的是让调用者不用持有具体操作者的引用,而是通过代理者去对具体操作者执行具体的操作。静态代理显示声明代理对象,在编译期就生成了代理类。由程序员创建或特定工具自动生成源代码,再对其编译。在程序运行之前,代理类的类文件就已经被创建了实现操作接口(抽象角色)public interface Operate { void doSom.

2021-02-01 16:41:15 233 2

原创 yeb02 - SpringSecurity自定义成功处理器与失败处理器

学习ing,一起成长…需求:登录成功后跳转到百度页面在SpringSecurity的配置类中配置successForwardUrl(“http://www.baidu.com”)@Configurationpublic class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Bean public BCryptPasswordEncoder getBCryptPasswordEncoder(){.

2021-01-31 11:04:23 481 1

原创 eyb02-Spring Security快速入门

初识Spring SecuritySpring Security概念Spring Security是spring采用AOP思想,基于servlet过滤器实现的安全框架。它提供了完善的认证机制和方法级的授权功能。是一款非常优秀的权限管理框架。权限管理概念权限管理,一般指根据系统设置的安全规则或者安全策略,用户可以访问而且只能访问自己被授权的资源。在权限管理的概念中,有两个非常重要的名词:认证:通过用户名和密码成功登陆系统后,让系统得到当前用户的角色身份。授权:系统根据当前用户的角色,给其授予

2021-01-31 10:58:37 251 2

原创 yeb02 MyBatis-Plus代码自动生成器

这里采用的是新建一个子工程来完成代码生成,个人觉得直接导入代码生成器的类即可,不需要那么繁琐。1、新建子项目–springboot项目2、导入依赖 <!--web 依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</arti

2021-01-21 15:53:54 626 3

原创 yeb01 - 项目搭建

创建父工程yeb1、创建springboot项目,只留pom.xml2、创建子工程yeb-server选择maven工程(个人建议选择springboot功能)补充完成项目结构YebApplication.java@SpringBootApplication@MapperScan("com.lzy.server.mapper")public class YebApplication { public static void main(String[] args) {

2021-01-21 15:52:21 1764 12

原创 MyBatis-Plus 代码自动生成器

看狂神视频然后总结笔记,为以后自己复习用,如有错误,可在评论中指出,一起成长。前言AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率。测试public class CodeGenerator { /** * <p> * 读取控制台内容 * </.

2021-01-18 14:44:08 135

原创 MyBatis-Plus 条件构造器(Wrapper)

这博客好:https://blog.csdn.net/m0_37034294/article/details/82917234

2021-01-18 14:26:02 567

原创 MyBatis-Plus 性能分析插件

看狂神视频然后总结笔记,为以后自己复习用,如有错误,可在评论中指出,一起成长。前言性能分析拦截器,用于输出每条 SQL 语句及其执行时间,解决我们在开发中遇到的慢sql问题;应用MyBatis-Plus也提供性能分析插件,如果超过这个时间就停止运行1、导入插件/** * SQL执行效率插件 */ @Bean @Profile({"dev","test"}// 设置 dev test 环境开启,保证我们的效率 public PerformanceInterceptor performan.

2021-01-18 14:14:54 633

原创 MyBatis-Plus 逻辑删除

看狂神视频然后总结笔记,为以后自己复习用,如有错误,可在评论中指出,一起成长。一、删除操作// 测试删除 @Test public void testDeleteById(){ userMapper.deleteById(15645165121L); }// 通过id批量删除 @Test public void testDeleteBatchId(){ userMapper.deleteBatchIds(Arrays.asList(1123434654363544961L.

2021-01-15 22:35:37 584

原创 Mybatis-Plus 分页插件

看狂神视频然后总结笔记,为以后自己复习用,如有错误,可在评论中指出,一起成长。一、查询操作// 测试查询 这里直接使用的是Mapper中的方法@Test public void testSelectById(){ User user = userMapper.selectById(1L); System.out.println(user); }// 测试批量查询! @Test public void testSelectByBatchId(){ List<Us.

2021-01-15 22:10:33 5880

原创 MyBatis-Puls 乐观锁实现

看狂神视频然后总结笔记,为以后自己复习用,如有错误,可在评论中指出,一起成长。乐观锁与悲观锁乐观锁:总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁。CAS属于乐观锁。悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁。synchronized、Lock属于悲观锁。Lock有三种实现类:ReentrantLock、ReadLock(读锁)和WriteLock(写锁)。乐观锁(OptimisticLockerInnerInt.

2021-01-14 22:00:24 274

原创 MyBatis-Plus 自动填充

看狂神视频然后总结笔记,为以后自己复习用,如有错误,可在评论中指出,一起成长。在项目中,有一些公共的数据需要修改,但是我们不希望手动去更新,需自动化完成,create_time,update_time等字段阿里巴巴开发手册:所有的数据库表:gmt_create、gmt_modified几乎所有的表都要配置上!而且需要自动化!方式一:数据库级别实现1、在表中新增字段create_time,update_time注意:mysql版本低于5.6增加列失败MySQL的日期类型可以使用CURRE.

2021-01-14 21:26:08 223

原创 MyBatis-Plus 主键生成策略

MyBatis-Plus 主键生成策略插入操作 @Test void insert() { User user = new User(); user.setAge(21); user.setEmail("12561@qq.com"); user.setName("xiaohong"); int result = userMapper.insert(user); //自动生成id Syste

2021-01-14 20:43:40 1482

原创 MyBatis-Plus快速入门

MyBatis-Plus快速入门简介MyBatis-Plus (简称 MP)是一个 [MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。官网:https://mp.baomidou.com/快速入门需要以下条件:拥有 Java 开发环境以及相应 IDE熟悉 Spring Boot熟悉 Maven步骤1、创建数据库 mybatis_plus2、创建user表,导入对应数据DROP TABLE IF EXISTS user;CRE

2021-01-14 20:08:32 167 1

转载 zookeeper Leader选举 投票过程

转载来源:https://blog.csdn.net/weixin_40849725/article/details/105783272 zookeeper Leader选举 投票过程 术语解释Zookeeper集群中的三种服务器角色Leader选举概述一、服务器启动时期的Leader选举1.每个Server会发出一个投票2.接收来自各个服务器的投票3.处理投票4.统计投票5.改变服务器状态 二、服务器运行期间的Leader选举1.变更状态2.每个Server会发出一个投票3.接收来自各个服.

2020-12-16 09:17:48 226

原创 Spring中基于注解的IOC配置

说明并不是说使用了注解之后,就可以不用使用xml文件,使用注解也需要配置xml文件,但是xml文件配置的不再是bean,而是配置扫描,扫描的配置指的是,Spring能够从配置的指定的classpath中自动扫描,侦测和实例化具有特定的Spring注解的组件【类】。环境搭建加入jar包commons-logging-1.1.3.jarspring-aop-4.0.0.RELEASE.jarspring-beans-4.0.0.RELEASE.jarspring-context-4.0.0.R

2020-08-18 19:52:20 107

原创 认识Java 参数传值

在方法中最重要的部分之一就是方法的参数,参数属于局部变量,当对象调用方法时,参数被分配空间,并要求调用者向参数传递值,即方法被调用时,参数变量必须有具体的值。基本类型数据类型参数的传值对于基本数据类型的参数,向该参数传递的值的级别不能高于该参数的级别。如:不可以向int型的参数传递一个float值,但是可以向double型参数传递一个float值。引用类型参数传值Java中的引用型数据包括数组,对象以及接口。当参数是引用类型时,“传值”传递的变量中存放的“引用”,而不是变量所引用的实体。需要注

2020-08-12 20:01:40 360

原创 认识自动类型转换

以下内容参考菜鸟教程,记录自己的学习。数据类型转换整型、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算。自动转换按从低级到高级顺序:低 ------------------------------------> 高byte,short,char—> int —> long—> float —> double 数据类型转换必须满足如下规则:不能对boolean类型进行类型转换。不能把对象类型转换成不相关类.

2020-08-08 21:50:05 425

原创 了解Spring中bean对象的属性注入细节

文章目录字面值注入引入其他的bean内部bean集合属性的装配使用p命名空间< null/>标签的使用级联属性字面值注入value 属性或者value标签可以设置为字面值,字面值可以是字符串或者基本数据类型,其他类型不能使用字面值 <bean id="car3" class="com.wanee.di.Car"> <property name="color"> <value>black</value> </property

2020-08-07 21:53:00 334

原创 bean标签和管理对象的细节

bean标签 /** 属性: id:给对象在容器中提供一个唯一标识。用于获取对象。 class:指定类的全限定类名。用于反射创建对象。默认情况下调用无参构造函数。 scope:指定对象的作用范围。 - singleton:单例,默认的,在SpringIOC容器中仅仅存在一个bean的实例。 - prototype:原型,表示bean的每个实例都是唯一的,也就是每一次获取相同的bean,IOC容器都会重新实例化一个。 - request:请求域 每次的http请求都会创建一个新的bean

2020-08-06 20:42:38 199

原创 BeanFactory与ApplicationContext的概述

概述BeanFactory:bean工厂,是IOC容器对象的最高的父接口,面向的是Spring框架本身,所以在开发中,几乎不会使用BeanFactory作为IOC容器对象,但是BeanFactory提供的getBean方法我们一直在用,只不过是通过子接口使用。ApplicationContext:是BeanFactory的子接口,面向的是Spring的开发者,所以在开发中,我们几乎都使用ApplicationContext作为IOC容器对象。ApplicationContext接口的实现类:Cl

2020-08-06 19:44:48 164

原创 认识成员变量和局部变量

有效范围成员变量:在整个类中都有效,其有效性与它在类体中书写的先后位置无关。局部变量:只在方法内有效,而且与其声明的位置有关(声明之后开始有效)。生命周期成员变量:随着对象的创建而存在,随着对象的消失而消失局部变量:随着方法的调用而存在,随着方法的调用完毕而消失内存中的位置成员变量:在堆中局部变量:在栈中初始化值成员变量:有默认值局部变量:没有默认值,因此在使用局部变量前,必须保证局部变量有具体的值class InitError{ /** *整形的成员变量:默认值 0 *浮点型

2020-08-05 22:45:00 1509

原创 学习Spring简单使用和介绍

Spring是什么Spring 是分层的 Java SE/EE 应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层 SpringMVC 和持久层 Spring JDBC 以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的 Java EE 企业应用开源框架。Spring是一个轻量级框架Sp

2020-08-03 20:42:11 109

原创 工厂模式解耦中理解IOC

我们在开发中,有些依赖关系是必须的,但有些依赖关系可以通过优化代码来解除的。如:public class AccountServiceImpl implements IAccountService { private IAccountDao accountDao = new AccountDaoImpl();}上面的代码表示:业务层调用持久层,并且此时业务层在依赖持久层的接口和实现类。如果此时没有持久层实现类,编译将不能通过。这种编译期依赖关系,应该在我们开发中杜绝。我们需要优化代码解决。

2020-08-03 20:16:26 187

原创 分页插件 - PageHelper的介绍和使用

PageHelper介绍PageHelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,例如mysql、oracle、mariaDB、DB2、SQLite、Hsqldb等。PageHelper使用引入分页插件有下面两种方式:① 引入jar包,以下地址可以下载对应jar包https://oss.sonatype.org/content/repositories/releases/com/github/pagehelper/pagehelper/由于使用了sql

2020-08-02 21:48:05 5390

原创 Maven的继承和聚合

为什么需要继承?在Maven中,非compile范围的依赖不能在依赖中传递,所以需要每个工程单独配置非compile范围的依赖,就比如我们junit依赖。如果现在各个工程的junit版本都需要是4.9,那么这个时候各个工程手动去修改无疑是不可取的,使用继承就可以将这样的依赖信息统一到父工程中进行统一管理。创建父工程,一般都使用Java工程,唯一需要注意的是打包方式为pom。在父工程中配置jar包的依赖<project xmlns="http://maven.apache.org/

2020-07-31 19:31:55 150

原创 Maven中依赖的特性

依赖的传递疑问:在MakeFriends工程中没有依赖Hello这个jar包,却能够在MakeFriends中使用Hello jar包中的程序,这是为什么呢?MakeFriends工程的pom.xmlHelloFriend工程的pom.xmlHello工程的pom.xml如果依赖jar包的范围是compile,则这个jar包可以进行传递,比如在A工程中依赖b.jar,b.jar中依赖c.jar,如果A工程工程中对b.jar的依赖是compile范围,b.jar中依赖的c.jar也是compi

2020-07-30 20:33:12 162

原创 Maven中scope的理解

在依赖的配置中,除了所需要依赖jar包的坐标之外,还有一个scope设置,scope表示的是范围,这里指的就是依赖的范围。依赖的范围常用的值:test:test范围依赖的jar包只服务于测试程序compile(默认值) :compile范围依赖的jar包服务于主程序,也服务器测试程序provided :provided 范围依赖的jar包服务于主程序,也服务器测试程序对于compile范围和provided范围的依赖区别在哪里呢?Compile和provided 范围的区别: Compile

2020-07-30 20:00:52 208

原创 Maven安装步骤

资源链接:https://pan.baidu.com/s/1_goOQQOPKFTP5WTLTY7RQg 提取码:ymqu安装① : 检查是否安装了JDK(java -version)② :解压Maven的核心程序将apache-maven-3.2.2-bin.zip解压到一个非中文无空格的目录下。例如:D:\DevInstall\apache-maven-3.2.2③ : 配置环境变量在系统变量中新建,填入以下值。在path变量中新增④ : 查看Maven版本信息,验证是否安

2020-07-30 19:49:29 124

原创 MyBatis缓存策略 - 一级缓存和二级缓存

内容简介一级缓存一级缓存的失效情况二级缓存二级缓存的使用缓存的设置使用第三方缓存具体内容MyBatis是一个持久化框架,提供了缓存策略,但是做缓存的话MyBatis不专业,专业的缓存是Redis和MongBD,所以在开发中用的不多,但是面试经常会问到,什么是缓存:比如我们在使用某个系统的时候,对于登录用户的可操作权限,每个人的权限基本上是固定的,如果每次登录都从数据库中查询权限的话,在用户量一大的情况下,势必会加重数据库的压力,所以有些常用的数据,我们在第一次查询之后,将查询结果集加入到

2020-07-28 21:01:04 279

原创 MyBatis中动态Sql

内容简介动态sql简介ifwheretrimchooseset和if结合动态更新foreachmysql下的批量保存oracle下的批量保存内置参数参数绑定sql抽取动态sql的简介Mybatis 的映射文件中,前面我们的 SQL 都是比较简单的,有些时候业务逻辑复杂时,我们的 SQL 是动态变化的,此时在前面的学习中我们的 SQL 就不能满足要求了。需求:查询员工信息,要求传入的参数是Emp对象,如果empName不为空,需要根据empName查询,如果empMail不为

2020-07-27 19:49:05 150

原创 MyBatis映射配置文件

具体内容

2020-07-27 17:24:29 194

原创 MyBatis全局配置文件详情

引入dtd文件<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">一、引入外部的属性文件 - properties在类路径下添加db.propertiesmysql.driver=com.mysql.jdbc.Drivermysql.url=jdbc:mysql://127.0.0.1:3306/ssm

2020-07-25 08:39:37 143

原创 xml文件中标签不提示的解决方案 —引入dtd文件

资源链接:https://pan.baidu.com/s/187bkPhzOEy28R27nx2KpCQ 提取码:h4xr我们在进行开发的时候,发现Eclipse中没有全局配置文件和SQL映射文件的联想,我们引入DTD约束之后,能够在Eclipse中更加快速的开发全局配置文件和SQL映射文件。我们需要引入的DTD约束,这个文件在联网的状态下可以自动下载,没有联网也没有关系,我们的MyBatis的jar包中就存在这两个文件。添加全部配置文件DTD约束①:打开Eclipse的配置,找到DTD的配置–&

2020-07-24 19:47:32 447

原创 安装Oracle数据库详细

资源链接:https://pan.baidu.com/s/1he_09YLal7IItzF5AmrzgQ 提取码:176pOracle安装步骤①:修改安装文件的兼容性,并退出所有的安全管家之类的软件②:安装,双击即可安装,安装最好在无网络的情况下安装③:记住安装的全局数据库名称(service名称)和口令,并且可以更改安装位置④:等待安装成功,安装过程中一切的错误提示都忽略,强制继续执行,此处勾上。⑤ Oracle服务器安装成功之后,会有五个服务存在:Oracle服务一般都设置为手

2020-07-23 21:59:23 136

原创 MyBatis-接口式编程

概述 无论是让mybatis帮我们创建代理对象还是上一章中直接使用mybatis提供的CRUD方法,其本质都是得到jdbc的Connction对象,执行对应sql语句,最终封装结果集。基于接口式创建Java工程加入jar包mybatis-3.4.1.jarmysql-connector-java-5.1.37-bin.jar创建数据库和对应的表创建对应实体类public class Emp { private Integer empId; private String empN

2020-07-23 21:16:48 977

原创 MyBatis的简介与入门

MyBatis框架简述mybatis是一个优秀的基于java的持久层框架,它的内部封装了jdbc,使开发者只需要关注sql语句的本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁琐的过程。mybatis通过xml或注解的方式将要执行的各种statement配置起来,并通过java对象和statement中的sql的动态参数进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射为java对象并返回。采用ORM思想解决实体和数据库映射的问题,对jdbc进行

2020-07-22 21:35:25 101

原创 SpringMVC运行流程图

2020-07-21 20:22:05 92

原创 SpringMVC异常处理

ExceptionHandler注解在程序开发的时候,控制层难免出现异常,出现异常之后直接在页面显示500错误,这样肯定不合适,最好是提示一些友好的提示性信息。SpringMVC上下文中,已经装备好了异常解析器对象:ExceptionHandlerExceptionResovler,所有的其他装配的异常解析器都是ExceptionHandlerExceptionResolver的子类。异常处理的步骤编写异常处理类@ControllerAdvice //表示这个类作为异常處理器public cla

2020-07-21 20:13:31 87

MyBaits Plus代码生成器的sql

MyBaits Plus代码生成器测试sql

2021-01-22

bookstore项目和数据库创建.zip

根据学的spring、springMVC写的一个网上书城小项目,实现了一些基本的功能,如登录、账户余额充值、分页、购买、加入购物车、清空购物车、删除购物车的某商品,以上都是使用ajax异步请求获取后端接口数据,进行页面数据渲染。写的有点简陋,新手一枚

2020-07-18

空空如也

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

TA关注的人

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