- 博客(87)
- 收藏
- 关注
原创 MySQL-索引
参考博客:http://www.cnblogs.com/wupeiqi/articles/5713323.htmlhttp://www.cnblogs.com/wupeiqi/articles/5716963.html索引,是数据库中专门用于帮助用户快速查询数据的一种数据结构。类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获取即可。没有索引的查找相当于从前到后一条一条的查找!作用:MySQL中常见索引有:索引名词:覆盖索引:索引合并:索引种类(某种格式存储):建立索引:My
2022-07-13 13:49:16 274 1
原创 MySQL-pymysql模块
pymysql安装:安装成功!检查是否安装成功,即在python环境下import pymysql,不报错就安装成功!代码实现:如果含中文,应在pymysql.connect中添加charset=‘utf8’如下:二、SQL注入攻击的总体思路1.寻找到SQL注入的位置2.判断服务器类型和后台数据库类型3.针对不通的服务器和数据库特点进行SQL注入攻击当用户名输入:'or 1=1-- (前面是个空格)的时候会产生SQL注入这句SQL语句就变成了:解释:or 后面有1=1 是永远成立
2022-07-13 13:32:14 747
原创 MySQL-自增、索引、外键、其他操作
一些简单的SQL语句:例如:自增MySQL: 自增步长基于会话级别:一个用户的登录sql窗口就是一个会话,用户设置自增步长,不影响其他用户会话窗口设置。SqlServer:自增步长:基于表级别:数据表会话级别:就是当前运行的会话窗口中执行操作。全局级别:每次进行都是该方式2 索引(加速查找的)唯一索引:MySQL 每张表只能有1个自动增长字段,这个自动增长字段即可作为主键,也可以用作非主键使用,但是请注意将自动增长字段当做非主键使用时必须必须为其添加唯一索引,否则系统将会报错。索引中
2022-07-13 13:23:36 1063
原创 MySQL-mysql基础
关系型数据库(数据之间约束和依赖多):sqllite,db2,oracle,access,sql server MySQL非关系型数据库(数据之间约束和依赖少):MongoDB,redis 单机程序(自己DB数据库) 联机程序(公用DB数据库)1.MySQL:是用于管理文件的一个软件服务端软件客户端软件(各种各样)PS:2.在数据库中: 文件夹->数据库 db文件->数据表 文件中的数据->数据行第一步:去官网下载安装(重点)第二步:先解压,然后在mysql下创建一个data空文件夹。
2022-07-13 13:04:55 1130
原创 Redis介绍和安装
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction
2022-07-10 21:52:06 392
原创 JVM基础
面试常见: 1.请你谈谈你对JVM的理解? 2.java8虚拟机和之前的变化更新? 3.什么是OOM,什么是栈溢出StackOverFlowError? 怎么分析? 4.JVM的常用调优参数有哪些? 5.内存快照如何抓取?怎么分析Dump文件? 6.谈谈JVM中,类加载器你的认识?1.JVM的位置三种JVM:Sun公司:HotSpot 用的最多BEA:JRockitIBM:J9VM我们学习都是:HotSpot2.JVM的体系结构java存储机制(栈、
2022-05-29 17:50:35 186
原创 机器学习-逻辑回归
1 分类(Classification)2 假设函数表示(Hypothesis Representation)3 决策边界(Decision Boundary)4 代价函数(Cost Function) 5 简化的成本函数和梯度下降(Simplified Cost Function and Gradient Descent)6 进阶优化(Advanced Optimization)function [jVal, gradient]
2022-04-06 11:08:26 1442 1
原创 机器学习-多变量线性回归
1 多特征(Multiple Features)对于一个要度量的对象,一般来说会有不同维度的多个特征。比如之前的房屋价格预测例子中,除了房屋的面积大小,可能还有房屋的年限、房屋的层数等等其他特征:2 多变量梯度下降(Gradient Descent for Multiple Variables)3 梯度下降实践1-特征值缩放(Gradient Descent in Practice I - Feature Scaling)4 梯度下降实践2-学习速率(Gradient Descent
2022-04-06 11:01:51 1622
原创 机器学习-单变量的线性回归
1 模型表示(Model Representation)1.房价预测训练集Size in feet²**(x)**Price ($) in 1000’s(y)210446014162321534315852178……房价预测训练集中,同时给出了输入 和输出结果 ,即给出了人为标注的 ”正确结果“,且预测的量是连续的,属于监督学习中的回归问题。2.问题解决模型2 代价函数(Cost Function)3 代价函数 - 直观理解1
2022-04-06 10:34:30 1980
原创 SpringCloud-Zull路由网关
什么是zuul? Zull包含了对请求的路由(用来跳转的)和过滤两个最主要功能: 其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础,而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验,服务聚合等功能的基础。Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他服务的消息,也即以后的访问微服务都是通过Zuul跳转后获得。注意:Zuul 服务最终还是会注册进 Eureka提供:代理 + 路由 + 过滤
2022-04-06 10:17:38 142
原创 SpringCloud-Hystrix:服务熔断
分布式系统面临的问题 复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免失败!1 服务雪崩 多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的“扇出”,如果扇出的链路上某个微服务的调用响应时间过长,或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”。 对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源都在几十秒内饱和。比失败更糟糕的是,这些应
2022-04-06 10:09:29 546
原创 SpringCloud-Feign:负载均衡(基于服务端)
1 Feign简介 Feign是声明式Web Service客户端,它让微服务之间的调用变得更简单,类似controller调用service。SpringCloud集成了Ribbon和Eureka,可以使用Feigin提供负载均衡的http客户端只需要创建一个接口,然后添加注解即可~ Feign,主要是社区版,大家都习惯面向接口编程。这个是很多开发人员的规范。调用微服务访问两种方法微服务名字 【ribbon】接口和注解 【feign】Feign能干什么?Feign旨在使编写Java
2022-04-06 10:02:11 313
原创 SpringCloud-Ribbon:负载均衡(基于客户端)
1 负载均衡以及RibbonRibbon是什么?Spring Cloud Ribbon 是基于Netflix Ribbon 实现的一套客户端负载均衡的工具。简单的说,Ribbon 是 Netflix 发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将 Netflix 的中间层服务连接在一起。Ribbon 的客户端组件提供一系列完整的配置项,如:连接超时、重试等。简单的说,就是在配置文件中列出 LoadBalancer (简称LB:负载均衡) 后面所有的及其,Ribbon 会自动的帮助你
2022-04-06 09:55:10 161
原创 SpringCloud-Eureka服务注册中心
1 什么是EurekaNetflix在涉及Eureka时,遵循的就是API原则.Eureka是Netflix的有个子模块,也是核心模块之一。Eureka是基于REST的服务,用于定位服务,以实现云端中间件层服务发现和故障转移,服务注册与发现对于微服务来说是非常重要的,有了服务注册与发现,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了,功能类似于Dubbo的注册中心,比如Zookeeper.2 原理理解Eureka基本的架构Springcloud 封装了Net
2022-04-06 09:48:44 212
原创 SpringCloud-Rest学习环境搭建:服务提供者
1 介绍我们会使用一个Dept部门模块做一个微服务通用案例Consumer消费者(Client)通过REST调用Provider提供者(Server)提供的服务。回顾Spring,SpringMVC,Mybatis等以往学习的知识。Maven的分包分模块架构复习。一个简单的Maven模块结构是这样的:-- app-parent: 一个父项目(app-parent)聚合了很多子项目(app-util\app-dao\app-web...) |-- pom.xml | |-
2022-04-06 09:38:17 133
原创 SpringBoot-Dubbo和Zookeeper集成
什么是分布式系统? 在《分布式系统原理与范型》一书中有如下定义:“分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统”; 分布式系统是由一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。分布式系统的出现是为了用廉价的、普通的机器完成单个计算机无法完成的计算、存储任务。其目的是利用更多的机器,处理更多的数据。 分布式系统(distributed system)是建立在网络之上的软件系统。 首先需要明确的是,只有当单个节点的处理能力无法满足日益增长的
2022-04-06 09:19:49 282
原创 SpringBoot-集成Redis
1. 概述1.1 SpringDataSpringBoot 操作数据都是使用 ——SpringData以下是 Spring 官网中描述的 SpringData 可以整合的数据源可以发现 Spring Data Redis1.2 lettuce说明:在 SpringBoot 2.X 之后,原来的 Jedis 被替换为了 lettuceJedis 和 lettuce 区别Jedis :采用的是直连的服务,如果有多个线程操作的话是不安全的,就需要使用 Jedis Pool 连接池取解决。问题就
2022-04-05 16:58:10 195
原创 SpringBoot-异步、定时、邮件任务
前言 在我们的工作中,常常会用到异步处理任务,比如我们在网站上发送邮件,后台会去发送邮件,此时前台会造成响应不动,直到邮件发送完毕,响应才会成功,所以我们一般会采用多线程的方式去处理这些任务。还有一些定时任务,比如需要在每天凌晨的时候,分析一次前一天的日志信息。还有就是邮件的发送,微信的前身也是邮件服务呢?这些东西都是怎么实现的呢?其实SpringBoot都给我们提供了对应的支持,我们上手使用十分的简单,只需要开启一些注解支持,配置一些配置文件即可!那我们来看看吧~异步任务1、创建一个service
2022-04-05 12:42:27 156
原创 SpringBoot-集成Swagger
项目集成Swagger学习目标:了解Swagger的概念及作用掌握在项目中集成Swagger自动生成API文档Swagger简介前后端分离前端 -> 前端控制层、视图层后端 -> 后端控制层、服务层、数据访问层前后端通过API进行交互前后端相对独立且松耦合产生的问题前后端集成,前端或者后端无法做到“及时协商,尽早解决”,最终导致问题集中爆发解决方案首先定义schema [ 计划的提纲 ],并实时跟踪最新的API,降低集成风险Swagge
2022-04-05 11:32:40 384
原创 SpringBoot-集成Shiro
参考笔记1 什么是Shiro?●Apache Shiro是一个Java 的安全(权限)框架。●Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。●Shiro可以完成,认证,授权,加密,会话管理,Web集成,缓存等.●下载地址: http://shiro.apache.org/2. 有哪些功能●Authentication: 身份认证、登录,验证用户是不是拥有相应的身份;●Authorization:授权,即权限验证,验证某个已认证的用
2022-04-05 11:26:52 492
原创 SpringBoot-集成SpringSecurity
安全简介 在 Web 开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求,但是应该在应用开发的初期就考虑进来。如果在应用开发的后期才考虑安全的问题,就可能陷入一个两难的境地:一方面,应用存在严重的安全漏洞,无法满足用户的要求,并可能造成用户的隐私数据被攻击者窃取;另一方面,应用的基本架构已经确定,要修复安全漏洞,可能需要对系统的架构做出比较重大的调整,因而需要更多的开发时间,影响应用的发布进程。因此,从应用开发的第一天就应该把安全相关的因素考虑进来,并在整个应用的开发过程中。 市面
2022-04-05 11:19:09 1393 1
原创 SpringBoot-整合Druid
Druid简介 Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。 Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。 Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生就是针对监控而生的 DB 连接池。 Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。 Spring Boot 2.0 以上默认使用 Hikari 数据
2022-04-05 11:07:00 308
原创 SpringBoot-整合JDBC
1 SpringData简介 对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 底层都是采用 Spring Data 的方式进行统一处理。 Spring Boot 底层都是采用 Spring Data 的方式进行统一处理各种数据库,Spring Data 也是 Spring 中与 Spring Boot、Spring Cloud 等齐名的知名项目。Sping Data 官网:https://spring.io/projects/spring
2022-04-05 11:01:21 135
原创 SpringBoot-国际化
有的时候,我们的网站会去涉及中英文甚至多语言的切换,这时候我们就需要学习国际化了!1 准备工作先在IDEA中统一设置properties的编码问题! 编写国际化配置文件,抽取页面需要显示的国际化页面消息。我们可以去登录页面查看一下,哪些内容我们需要编写国际化的配置!2 配置文件编写2.1 我们在resources资源文件下新建一个i18n目录,存放国际化配置文件2.2 建立一个login.properties文件,还有一个login_zh_CN.properties;发现IDEA自动识别
2022-04-05 10:56:44 191
原创 SpringBoot-MVC自动配置原理
1 官网阅读 在进行项目编写前,我们还需要知道一个东西,就是SpringBoot对我们的SpringMVC还做了哪些配置,包括如何扩展,如何定制。 只有把这些都搞清楚了,我们在之后使用才会更加得心应手。途径一:源码分析,途径二:官方文档!地址 :https://docs.spring.io/spring-boot/docs/2.2.5.RELEASE/reference/htmlsingle/#boot-features-spring-mvc-auto-configurationSpring M
2022-04-05 10:49:51 169
原创 SpringBoot-Web开发
1 简介 其实SpringBoot的东西用起来非常简单,因为SpringBoot最大的特点就是自动装配。使用SpringBoot的步骤:1、创建一个SpringBoot应用,选择我们需要的模块,SpringBoot就会默认将我们的需要的模块自动配置好2、手动在配置文件中配置部分配置项目就可以运行起来了3、专注编写业务代码,不需要考虑以前那样一大堆的配置了。要熟悉掌握开发,之前学习的自动配置的原理一定要搞明白! 比如SpringBoot到底帮我们配置了什么?我们能不能修改?我们能修改哪些配置
2022-04-05 10:42:50 1710
原创 SpringBoot-yaml配置文件
1 yaml语法学习配置文件SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的application.properties语法结构 :key=valueapplication.yml语法结构 :key:空格 value配置文件的作用 :修改SpringBoot自动配置的默认值,因为SpringBoot在底层都给我们自动配置好了;比如我们可以在配置文件中修改Tomcat 默认启动的端口号!server.port=8081yaml概述 YAML是 “
2022-04-04 20:39:53 2116
原创 SpringBoot-运行原理
1 SpringBoot自动装配原理1.1 pom.xml父依赖其中它主要是依赖一个父项目,主要是管理项目的资源过滤及插件! <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.6.0</vers
2022-04-04 20:32:01 1127
原创 SpringBoot-第一个SpringBoot程序
1 准备工作 我们将学习如何快速的创建一个Spring Boot应用,并且实现一个简单的Http请求处理。通过这个例子对Spring Boot有一个初步的了解,并体验其结构简单、开发快速的特性。环境准备:java version “11.0.6”Maven-4.0.0SpringBoot 2.x 最新版开发工具:IDEA2 创建基础项目说明Spring官方提供了非常方便的工具让我们快速构建应用Spring Initializr:https://start.sprin
2022-04-04 20:23:16 184
原创 SpringMVC-JSON详解
1 什么是JSON?JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 在 JavaScript 语言中,一切都是对象。因此,任何JavaScript 支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组
2022-04-04 17:30:30 1756
原创 SpringMVC-第一个springMVC
1 什么是SpringMVC1.1 概述 Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。官方文档:https://docs.spring.io/spring/docs/5.2.0.RELEASE/spring-framework-reference/web.html#spring-web我们为什么要学习SpringMVC?Spring MVC的特点:1.轻量级,简单易学2.高效 , 基于请求响应的MVC框架3.与Spring兼容
2022-04-04 11:56:29 135
原创 Spring5-声明式事务
1 回顾事务把一组业务当成一个业务来做:要么都成功,要么都失败事务在项目开发中十分重要,涉及到数据的一致性问题,不能马虎。确保完整性和一致性事务ACID原则原子性一致性持久性:一旦提交,无法更改隔离性:多个业务可能操作同一个资源,防止数据损坏2 spring中的事务管理声明式事务:AOP编程时事务:需要在代码中,进行事务的管理pom.xml<?xml version="1.0" encoding="UTF-8"?><proj
2022-04-04 11:44:10 98
原创 Spring5-整合MyBatis
步骤:1.导入相关jar包junitmybatismysqlspring-webmvspring-jdbaspetjweavermybatis-spring[新包] <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId&
2022-04-04 11:39:15 846
原创 Spring5-AOP
1 什么是AOPAOP意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生泛型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各个部分之间的耦合度降低,提高程序的可重用性,同时提高了开发效率。2 AOP在Spring中的作用提供声明式事务;允许用户自定义切面横切关注点:跨越应用程序多个模块的方法或功能。即:与我们业务逻辑无关的,但是我们需要关注的
2022-04-04 11:35:12 156
原创 Spring5-代理模式
为什么要学习代理模式?这是SpringAOP的底层实现![SpringAOP和SpringMVC]静态代理动态代理1 静态代理角色分析:抽象角色:一般会使用接口或者抽象类来解决真实角色:被代理的角色代理角色:代理真实角色,代理真实角色后,一般会做一些附属操作客户:访问代理对象的人代码步骤:1.1 接口package com.kwok.demo01;// 租房的接口public interface Rent { public void rent
2022-04-04 11:29:41 91
原创 Spring5-Bean的自动装配
自动装配是Spring满足bean依赖的一种方式Spring会在上下文中自动寻找,并自动给bean装配属性在Spring中有三种装配方式1.在xml中显式配置2.在java中现实配置3.隐式的自动装配bean(重要)1 测试环境搭建:一个人有两个宠物package com.kwok.pojo;public class Cat { public void shout(){ System.out.println("miao~"); }}package .
2022-04-04 11:09:16 385
原创 Spring5-DI(Dependency Injection)依赖注入
1 构造器注入constructor-arg,前面已经论述2 Set方式注入[重点]依赖注入:Set注入依赖:bean对象的创建依赖于容器注入:bean对象中的所有属性,由容器来注入[环境搭建]2.1 复杂类型package com.kwok.pojo;public class Address { private String address; public String getAddress() { return address;
2022-04-03 14:11:36 106
原创 Spring5-配置说明
1 别名<!--使用Spring来创建对象,在Spring中这些都成为Bean--> <bean id="user" class="com.kwok.pojo.User"> <constructor-arg index="0" value="Spring学习"/> </bean> <alias name="user" alias="test"/> @Test public void MyTest(
2022-04-03 14:06:09 385
原创 Spring5-IOC创建对象方式
1.默认使用无参构造创建对象!2.假设我们要使用有参构造构建对象(1)下标赋值<!--使用Spring来创建对象,在Spring中这些都成为Bean--> <bean id="user" class="com.kwok.pojo.User"> <constructor-arg index="0" value="Spring学习"/> </bean>(2)类型创建<!--不建议使用--> <
2022-04-03 14:02:10 352
原创 Spring5-HelloSpring
实体类:package com.kwok.pojo;public class Hello { private String str; public String getStr() { return str; } public void setStr(String str) { this.str = str; } @Override public String toString() { return
2022-04-03 13:58:37 154
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人