自定义博客皮肤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)
  • 收藏
  • 关注

转载 Spring——Spring5框架新功能

1.整个Spring5框架的代码基于Java8开发,运行时兼容jdk9,许多不建议使用的类和方法在代码库中删除2.Spring5.0框架自带了通用的日志封装。

2022-03-10 17:45:14 294

转载 验证码Kaptcha

为什么需要验证码?kaptcha如何使用:添加jar在web.xml文件中注册KaptchaServlet,并设置验证码图片的相关属性<servlet> <servlet-name>KaptchaServlet</servlet-name> <servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class&g.

2022-03-10 10:43:39 394

转载 Cookie了解

详细内容:Cookie.创建Cookie对象@WebServlet("/cookie01")public class CookieServlet01 extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //1. 创建一个cookie对

2022-03-10 10:01:33 132

转载 监听器Listener

详细内容:监听器Listener1. 分类:ServletContextListener - 监听ServletContext对象的创建和销毁的过程HttpSessionListener - 监听HttpSession对象的创建和销毁的过程ServletRequestListener - 监听ServletRequest对象的创建和销毁的过程ServletContextAttributeListener - 监听ServletContext的保存作用域的改动(add,remove,repl

2022-03-09 22:08:09 110

转载 过滤器Filter

Filter也属于Servlet规范Filter开发步骤:新建类实现Filter接口,然后实现其中的三个方法:init、doFilter、destroy配置Filter,可以用注解@WebFilter,也可以使用xml文件 <filter> ``<filter-mapping>Filter在配置时,和servlet一样,也可以配置通配符,例如 @WebFilter("*.do")表示拦截所有以.do结尾的请求@WebFilter("/demo01.do")public .

2022-03-09 21:38:31 90

转载 视图模板技术-Thymeleaf

Thymeleaf - 视图模板技术1) 添加thymeleaf的jar包2) 新建一个Servlet类ViewBaseServlet3) 在web.xml文件中添加配置- 配置前缀 view-prefix- 配置后缀 view-suffix4) 使得我们的Servlet继承ViewBaseServlet5) 根据逻辑视图名称 得到 物理视图名称//此处的视图名称是 index//那么thymeleaf会将这个 逻辑视图名称 对应到 物理视图 名称上去//逻辑视图名称 : index

2022-03-09 10:34:23 349

转载 Servlet

1. TomcatTomcat是一个web应用服务器(或容器)。官网:here.2. Servlet入门创建html<!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8"> <title>Title</title></head><body><form action="add" method="pos

2022-03-08 21:18:42 147

转载 会话跟踪技术Session

会话1) Http是无状态的- HTTP 无状态 :服务器无法判断这两次请求是同一个客户端发过来的,还是不同的客户端发过来的- 无状态带来的现实问题:第一次请求是添加商品到购物车,第二次请求是结账;如果这两次请求服务器无法区分是同一个用户的,那么就会导致混乱- 通过会话跟踪技术来解决无状态的问题。2) 会话跟踪技术 - 客户端第一次发请求给服务器,服务器获取session,获取不到,则创建新的,然后响应给客户端 - 下次客户端给服务器发请求时,会把sessionID带给服务器,那

2022-03-08 21:03:27 340

转载 Http协议

详细内容:Htttp协议1) Http 称之为 超文本传输协议2) Http是无状态的3) Http请求响应包含两个部分:请求和响应- 请求:请求包含三个部分: 1.请求行 ; 2.请求消息头 ; 3.请求主体1)请求行包含是三个信息: 1. 请求的方式 ; 2.请求的URL ; 3.请求的协议(一般都是HTTP1.1)2)请求消息头中包含了很多客户端需要告诉服务器的信息,比如:我的浏览器型号、版本、我能接收的内容的类型、我给你发的内容的类型、内容的长度等等3)请求体,三种情况get方式,

2022-03-08 18:01:40 74

转载 Java数据库连接(Java Database Connectivity, JDBC)

1.JDBC简介以及数据库的连接JDBC是sun公司发布的一个Java程序与数据库之间通信的规范(接口)各大数据库厂商去实现JDBC规范(实现类),并将这些实现类封装成jar包。连接mport java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;//目标:与数据库建立连接public class Demo1 { public static void main(String[

2022-03-08 10:34:26 387

转载 Redis——1. NoSQL数据库简介

NoSQL数据库概述NoSQL(NoSQL= NOT ONLY SQL),意即“不仅仅是SQL”,泛指非关系型的数据库。NoSQL不依赖业务逻辑方式存储,而以简单的key-value模式存储。因此大大的增加数据库的扩展能力。不遵循SQL标准。不支持ACID。远超SQL的性能。NoSQL适用场景对数据高并发的读写海量数据的读写对数据高可扩展性。NoSQL不适用场景需要事务的支持基于sql的机构化查询存储,处理复杂的关系,需要即席查询。用不着sql和用了sql也不行的情况,请

2021-04-27 16:24:32 90

转载 MySQL高级5——主从复制

复制的基本原理slave会从master读取binlog来进行数据同步三步骤+原理图:复制的基本原则每个slave只有一个master每个slave只能由一个唯一的服务器ID每个master可以有多个slave复制的最大问题:延时一主一从常见配置...

2021-04-26 20:33:32 100

转载 MySQL高级4——MySQL锁机制

概述定义锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源,如何保证数据并发访问的一致性、有效性是所有所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。锁的分类按对数据的操作类型分:读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响。写锁(排它锁):当前写操作没有完成前,它会阻断其他写锁

2021-04-23 23:13:45 76

转载 MySQL高级2——索引优化分析

性能下降SQL慢执行时间长等待时间长查询语句写的烂索引失效(单值、复合)关联查询太多join(设计缺陷或不得已的需求)服务器调优及各种参数设置(缓冲、线程数等)常见通用的Join查询SQL执行顺序手写:机读总结7种joinMySQL全连接可以通过union实现索引简介MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。可以得到索引的本质:索引是数据结构。索引的目的在于提高查询效率,可以类比字典你可以简单理解为*

2021-04-21 21:46:03 118

转载 MySQL高级1——MySQL架构介绍

MySQL逻辑架构介绍和其它数据库相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上,插件式的存储引擎将查询处理和其他的系统任务以及数据的存储提取相分离。这种架构可以根据业务的需求和实际需求选择合适的存储引擎。连接层最上层是一些客户端和连接服务,包含本地sock通信和大多数基于客户端/服务端工具实现的类似于tcp/ip的通信。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程

2021-04-16 16:06:46 92

原创 注解(Annotation)

注解的概述常见的Annotation实例自定义AnnotationJDK中的元注解利用反射获取注解信息JDK8中注解的新特性

2021-04-15 20:29:36 66

转载 MySQL——存储过程、函数、流程控制结构

存储过程和函数:类似于Java中的方法好处:提高代码的重用性简化操作一、存储过程含义:一组预先编译好的SQL语句的集合,理解成批处理语句。提高代码的重用性简化操作减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率。1. 创建语法create procedure 存储过程名(参数列表)BEGIN 存储过程体(一组合法的SQL语句)END注意:参数列表包含三部分参数模式 参数名 参数类型举例:IN stuname VARCHAR(20)参数模式:I

2021-04-13 10:41:28 146

转载 MySQL——变量

分类:系统变量:——> 全局变量——> 会话变量自定义变量:——> 用户变量——> 局部变量一、系统变量说明:变量由系统提供,不是用户定义,属于服务器层面使用的语法:查看所有的系统变量SHOW GLOBAL|【SESSION】 VARIABLES;(全局|会话)查看满足条件的部分系统变量SHOW GLOBAL|【SESSION】 VARIABLES LIKE '%char%';查看制定的某个系统变量的值SELECT @@GLOBAL|【SESSIO

2021-04-09 17:01:00 95

转载 MySQL——视图

含义:虚拟表,和普通表一样使用MySQL5.1版本出现的新特性,是通过表动态生成的数据。比如:临时班和普通班的对比。创建视图:CREATE VIEW my_v1ASSELECT stuname, majorname FROM student s JOIN major m ON s.majorid=m.majorid;举例:查询姓“张”学生的名字以及对应的专业名不采用视图的查询语句:SELECT stuname,majorname FROM student s JOIN major

2021-04-09 11:38:13 123

转载 事务控制语言 (Transaction Control Language)

事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么不执行。案例:转账张三丰 1000郭襄 1000update 表 set 张三丰的余额=500 where name='张三丰';update 表 set 郭襄的余额=1500 where name='郭襄';这两条sql语句要么都执行,要么都不执行。事务的...

2021-04-08 22:32:52 554

转载 sql语言学习——数据定义语言

数据定义语言:库和表的管理。库的管理:创建、修改、删除表的管理:创建、修改、删除创建:create修改:alter删除:drop查看表的结构:DESC 表名;查看库中的表:SHOW TABLES;一、库的管理1.1 库的创建语法: create database [if not exists] 库名;案例:创建库booksCREATE DATABASE IF NOT EXISTS books;1.2 库的修改更改库的字符集:ALTER DATABASE books CHARACT

2021-04-07 20:08:33 863

转载 SQL语言学习——增删改查

1. 查询1.1 基础查询语法:select 查询列表 from 表名;特点:查询列表可以是:表中的字段、常量值、表达式、函数。查询的结果是一个虚拟表格。举例:查询表中的单个字段SELECT last_name FROM employees;查询表中的多个字段`SELECT last_name,salary,email FROM employees;查询表中的所有字段SELECT * FROM employees;查询常量值SELECT 100;SELECT 'John

2021-04-06 21:33:54 538

转载 MySQL——MySQL的介绍、安装、卸载与使用

1. 介绍MySQL数据库隶属于MySQL AB公司,总部位于瑞典,后被oracle公司收购。优点:成本低:开放源码,可免费使用性能高:执行很快简单:容易安装和使用

2021-03-30 22:42:45 78

转载 MySQL——数据库的相关概念

1. 数据库的相关概念**2. 数据库存储数据的特点

2021-03-30 16:05:06 114

转载 Java概念图——理解JVM、JRE、JDK之间关系

点击这里:Java概念图

2021-03-22 09:44:15 263

原创 栈、队列、堆的java实现

一、栈特点:先入后出(FILO)。代码实现:Java官方建议使用Deque(双端队列)接口实现栈。不要使用Stack类(Vector类子类)实现,效率低。Deque有两个常用实现类,分别为ArrayDeque(底层数组)和LinkedList(底层链表)。至于在这两个中如何选择?我认为两者都有优劣。LinkedList每次在插入或删除一个元素时都涉及到一个Node的创建和销毁,效率较低,并且LinkedList存储结构是不连续的,访问是不能很好的利用CPU缓存。可以插入null。ArrayD

2020-12-29 10:13:20 660 3

原创 二叉树的遍历汇总

1. 给定一个二叉树的结构//二叉树public class BinaryTree { private BinaryTreeNode root; public BinaryTree(BinaryTreeNode root) { this.root = root; } public BinaryTree() { }}//树节点public class BinaryTreeNode { private int val; p

2020-12-22 21:31:01 89

原创 Java8新特性

1. Lambda表达式2. 函数式(Functional)接口3. 方法引用与构造器引用4. 强大的Stream API5. Optional类

2020-12-21 21:49:45 136

原创 动态规划(Dynamic Programming,DP)

核心思想在解决一个棘手问题时,将问题分解成离散的子问题,通过先解决子问题,再逐步的解决大问题。与分治算法的异同相同点:两者的基本思想都是将待求解的问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。不同点:分治算法分解得到的子问题往往都是独立的,相互之间无关,如快速排序。而动态规划分解得到的子问题往往不是相互独立的,即下一个子问题求解往往是建立在对上一个子问题的求解的基础上进一步求解。经典问题1——01背包问题假如你是个小偷,背着一个可装4磅东西的背包,你可以盗窃的

2020-12-15 22:06:13 197

原创 OSM上获取路网数据

通过over-pass-turbo从osm中提取路网数据[out:xml][timeout:25];// fetch area “Beijing” to search in{{geocodeArea:Beijing}}->.searchArea;// gather results( way["highway"="motorway"](area.searchArea); way["highway"="trunk"](area.searchArea); way["highway"="

2020-12-13 17:28:25 1315

原创 贪心算法(贪婪算法,greedy algorithm)

核心思想在对问题进行求解时,每步都选择局部最优解,希望最终可以得到全局最优解。(贪心算法最终所得的结果不一定是全局最优解,但确是近似的最优解。)经典问题——集合覆盖问题有n个集合,每个集合都含有若干个元素,从中找出m个集合,要求包含n个集合中所有的元素且m最小。一般解决方法:(1)列出n个集合的所有组合方案,因为每个集合都可以包含或不包含,所以共有2n2^n2n种组合方案。(2)在这些组合方案中,找出含有所有元素的集合的组合,且组合中含有集合的个数最小。该方法的时间复杂度为O(2n)O(2

2020-12-10 22:49:36 6021

原创 Java排序算法整理

1. 冒泡排序public static void bubbleSort(int[] arr) { int temp; for (int i = 0; i < arr.length - 1; i++) { //优化:如果某次排序未发生位置交换,说明数组已有序。 boolean flag = true; for (int j = 0; j < arr.length - 1 - i; j++)

2020-11-30 15:52:09 80

原创 希腊字母读法与写法

Α α:阿尔法 AlphaΒ β:贝塔 BetaΓ γ:伽玛 GammaΔ δ:德尔塔 DelteΕ ε:艾普西龙 EpsilonΖ ζ :捷塔 ZetaΕ η:依塔 EtaΘ θ:西塔 ThetaΙ ι:艾欧塔 IotaΚ κ:喀帕 Kappa∧ λ:拉姆达 LambdaΜ μ:缪 MuΝ ν:拗 NuΞ ξ:克西 XiΟ ο:欧麦克轮 Omicron∏ π:派 PiΡ ρ:柔 Rho∑ σ:西格玛 SigmaΤ τ:套 TauΥ υ:宇普西龙 UpsilonΦ φ

2020-11-16 11:45:18 907

原创 windows10系统U盘启动盘的制作

浏览器搜索----下载window10认准微软官网链接,点击进入点击立即下载工具即可下载–media creation tool下载完成双击运行–media creation tool等待–正在进行准备工作–转完,出现适用的声明和许可条款,点击–接受等待–正在进行准备工作–转完,出现–你想执行什么操作?–界面,点击–为另一台电脑创建安装介质(U盘、DVD或ISO文件),点击–下一步出现–选择语言、体系结构和版本–界面,依次选择中文(简体),windows 10,64位,点击–下一步选择U盘,.

2020-11-16 11:34:31 190

原创 Spring:事务操作

一、事务概念1.什么是事务?(1)事务时数据库操作的最基本的单元,逻辑上的一组操作,要么都成功,如果有一个失败,所有操作都失败。(2)典型场景:银行转账lucy转账100元给mary。lucy少100,mary多100.2.事务的四个特性:(ACID)(1)原子性(2)一致性(3)隔离性(4)持久性二、事务操作(搭建事务操作环境)1.创建数据库,创建表2.创建service,搭建dao,完成对象创建与注入关系service注入dao, 在dao注入JdbcTemplate,在jd

2020-11-05 21:55:28 114

原创 Spring——JdbcTemplate操作数据库

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

2020-11-05 16:15:33 124

原创 Spring:AOP

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

2020-11-02 22:21:30 185

原创 Spring:IOC容器

1. IOC底层原理1.1 什么是IOC(1)控制反转,把对象创建和对象之间的调用过程,交给Spring管理(2)使用IOC目的:为了耦合度降低(3)做入门案例就是IOC实现1.2 IOC底层管理(1)xml解析,工厂模式,反射。2. IOC接口(BeanFactory)IOC思想基于IOC容器完成,IOC容器底层就是对象工厂Spring提供IOC实现两种方式:(两个接口)(1)BeanFactory: IOC容器基本实现,是Spring内部的使用接口,不提供开发人员进行使用。

2020-10-29 21:56:31 150

原创 拼多多java面试题:找String对象子串问题

题目给定一个字符串,要求找到满足如下条件的子串P。1)P包含s中出现的所有字符。2)P的字典序最小。3)P的起始位置越靠后越好。输入:dcdcaz 输出:cdcazpackage org.example.exer;import java.util.HashMap;import java.util.Scanner;/** * @author AmorFati * @create 2020/10/25 22:38 */public class StringExer {

2020-10-26 10:27:00 133

原创 Java常用类

1. 字符串相关的类String类及其用法字符串常量池的位置:jdk6之前:方法区(永久代)jdk7:堆jdk8:方法区(元空间)String常用方法StringBuffer、StiringBuilder2. JDK8之前的日期时间APISystem 静态方法Date类Calendar类3. JDK8中新日期时间APILocalDate、LocalTime、LocalDateTimeInstantDateTimeFormatter其他类4. Java比较器

2020-10-19 17:18:10 132

空空如也

空空如也

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

TA关注的人

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