自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springboot RestTemplate 乱码问题

发送前中文没有乱码,接收方乱码。需要在发送前加上一段代码,设置编码restTemplate.getMessageConverters().set(1,new StringHttpMessageConverter(StandardCharsets.UTF_8));

2021-09-01 17:52:00 201

原创 模版方法模式

模版方法模式我的理解:模版方法模式就是将子类相同部分的代码和相同的步骤给抽象出一个父类。百度百科 :模板方法模式定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实践方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤使用场景多个子类有公有的方法,并且逻辑基本相同时。重要、复杂的算法,可以把核心算法设计为模板方法,周边的相关细节功能则由各个子类实现。重构时,模板方法模式是一个经常使用的模式,把相同的代码抽取到父类中,然后通 过钩子函数(见“模板方法模式的扩展”)约束其行

2021-08-25 15:02:42 125 1

原创 工厂方法模式

工厂方法模式工厂方法模式(FACTORY METHOD)是一种常用的类创建型设计模式,此模式的核心精神是封装类中变化的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦、复用和方便后期维护拓展的目的。它的核心结构有四个角色,分别是抽象工厂;具体工厂;抽象产品;具体产品。工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象

2021-08-19 15:25:09 136

原创 单例模式的几个方法

单例模式什么是单例模式单例模式就是只允许有一个实例存在,自己向外部提供方法获取实例。一般获取对象都是通过new对象来完成,这样系统中肯定就不至一个实例。我们怎么来完成这种单例模式了,我们可以通过把构造方法给私有化,这样外部就无法直接通过new来获取这个对象,我们内部再提供一个 getInstance() 来获取对象。单例模式的应用场景需要生成唯一序列的环境。要频繁实例化然后销毁的对象。创建对象时耗时过多或者耗资源过多,但又经常用到的对象。方便资源相互通信的环境。单例模式的实现下面就用

2021-08-19 11:11:41 108

原创 git命令

git 命令git init 初始化仓库复制仓库地址,然后,在窗口输入命令: git remote add origin + 仓库地址git pull origin master 将仓库pull到本地仓库命令:git add . (. 表示所有的)或者 git add + 文件名 //将要添加的文件保存在本地缓冲区。git commit -m ‘新添加的文件内容描述’ 。 给本次提交添加备注git push origin master ,将本地仓库推送到远程

2021-07-24 11:17:15 60

原创 springboot整合redis

springboot整合redis第一步导包<!--redis --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency><!-- spring2.x集成redis需要的commons-poo

2021-06-28 18:22:13 180 2

原创 maven下载过慢

在pom.xml中添加如下<repositories><!-- 代码库 --> <repository> <id>maven-ali</id> <url>http://maven.aliyun.com/nexus/content/groups/public//</url> <releases>

2021-06-27 16:59:52 46

原创 SpringMVC-ajax初探

springMVC-ajax初探ajaxAjax即Asynchronous Javascript And XML(异步JavaScript和XML)在 2005年被Jesse James Garrett提出的新术语,用来描述一种使用现有技术集合的‘新’方法,包括: HTML 或 XHTML, CSS, JavaScript, DOM, XML, XSLT, 以及最重要的XMLHttpRequest。 使用Ajax技术网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面,这使得程序

2021-06-01 20:55:23 131 2

原创 ssm回复评论实现

前端实现回复评论主要是记录一下这个回复评论怎么实现的。自己前端的代码不熟悉,导致有几个点百度了很久。js和jQuery代码不熟悉效果如下评论的展示就用foreach遍历。卡我的一个点:回复评论,需要下面的表单获取焦点的同时改变表单中隐藏的几个值(fatherId,fatherName)。就是在怎么点击事件传参数这个点不知道,后面百度了很久知道了==data-==定义属性的方法<!-- 通过data-XXX 自定义XXX属性 --><span data-comment

2021-05-25 22:24:03 2273 8

原创 springMVC 登录拦截

SpringMVC登录拦截springmvc的登录拦截很简单,只需要你写一个拦截器类实现HandlerInterceptor这个接口的方法,再在springmvc配置文件中注入即可LoginInterceptorpackage com.yxx.interceptor;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;im

2021-05-24 15:31:10 534

原创 SpringMVC使用json

springMVC使用JSON什么是JSONJSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。JSON 指的是 JavaScript 对象表示法(JavaScript Object N

2021-05-24 13:07:48 151 1

原创 SSM整合

SSM整合整合的配置文件导入需要的依赖(数据库驱动,mybatis,mybatis-spring,junit,servlet,jsp,spring,aop织入)<!--数据库驱动--><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.23</

2021-05-23 17:16:02 96

原创 SpringMVC入门使用注解

SpringMVC使用注解开发需要知道的几个注解@Controller : 表示这是一个组件(Controller) 注册到spring容器中,他还有几个相似的注解(@Service @Component @Repository)都表示是一个组件@RequestMapping : 获取所有请求@GetMapping: 获取Get请求@PostMapping:获取Post请求下面就以一个Hello 程序例子来入门注解开发第一步 检查包是否导入 需要的依赖如下<dependency

2021-05-21 17:27:00 128

原创 SpringMVC: hello

SpringMVC:hellomvc什么是MVCMVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型-视图-控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smalltalk-80发明的一种软件设计模式,已被广泛使用。后来被推荐为Oracle旗下Sun公司Java

2021-05-20 18:13:21 86

原创 Spring整合mybatis

Spring整合Mybatis这个因为今天mybatis-spring官网进不了,也总结不出来什么,但是这个整合也没有什么,几乎就是代码吧。导入需要的包(junit,mybatis,mysql,spring相关,aop织入,mybatis-spring)<!--导入mybatis依赖 --> <dependency> <groupId>org.mybatis</groupId> <

2021-05-18 16:50:14 55

原创 spring 使用注解开发

使用注解开发​ 使用注解必须导入content约束,必须保证aop的包导入<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.or

2021-05-15 16:57:11 66

原创 spring bean自动装配

Spring bean自动装配原理:spring可以在应用上下文中自动扫描,找到并给bean装配属性方法:byType:通过类型byName:通过名字测试搭建环境一个person拥有两个宠物person类:(省略 get set 构造 tostring)public class Person { private String name; private Dog dog; private Cat cat;}宠物public class

2021-05-15 15:56:56 70

原创 Spring依赖注入

依赖注入构造器注入前面有一篇文章写过,还有大神的依赖注入理解 https://blog.csdn.net/weixin_44424328/article/details/116656937Set方式注入依赖注入:使用set注入!依赖 :bean对象的创建依赖于容器!注入 :bean对象中的属性由容器来注入!搭建环境复杂类型(省略get set 构造 tostring 下同)public class Address { private String address;

2021-05-14 16:18:11 73

原创 SpringIOC理解

Spring IOC这里直接给出自己的理解了IOC(控制反转)到底是什么,他不是什么技术,而是一种思想。在没用IOC之前,我们都需要用new XXX()来获取对象,主动权在我们手上,但是当有多个用户需要使用这个对象是,一个用户需要A对象,一个用户需要B对象,这个时候因为主动权在我们手上,那我们就必须去修改new XXX()这行代码,但是一旦我们有很多行的这个代码那就非常的麻烦。而当我们使用IOC之后,我们直接将new XXX()放在spring容器来管理,这个时候当用户需要不同对象时,就只需要修改spr

2021-05-13 18:12:58 85

原创 MyBatis学习总结

MyBatis学习这次用了一周多的时间学习了mybatis。简介MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。什么是持久层持久层,可以理解成数据 保存在 数据库或者 硬盘一类可以保存很长时间的

2021-05-11 15:35:17 411 2

原创 spring boot 学习

springboot 官方文档springboot简介SpringBoot是由Pivotal团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。它基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。特点(1)可以创建独立的Spring应用程序,并且基于其Maven或Grad

2021-04-23 14:09:53 301

原创 差分数组菜鸟理解

浅谈差分当我们只做区间修改和单点查询时,差分这个数据结构就非常有用,不用去写线段树和树状数组。差分数组是什么?就是个数组,就是个辅助数组我数据结构没学好深,谈谈自己对差分的理解差分就是数据之间的差,就是原始数组相邻元素之间的差值 diff[ i ] = a[ i + 1] - a[ i ]下面给出一个例子:当我们进行区间修改时:[1 4] 加2[2 4] 减2看着很简单把,我直接暴力循环都能写完,但是当区间达到1e5是就会超时这个时候差分数组的优点就体现出来了,其实你对整个区间

2020-12-03 17:33:04 549

原创 动态规划 1639. 通过给定词典构造目标字符串的方案数

动态规划这道题做下来我感觉是一道比较有意思的题自己推公式没有推出来。好久没写博客都不知道自己在写什么。直接说思路吧**题目描述**给你一个字符串列表 words 和一个目标字符串 target 。words 中所有字符串都 长度相同 。你的目标是使用给定的 words 字符串列表按照下述规则构造 target :从左到右依次构造 target 的每一个字符。为了得到 target 第 i 个字符(下标从 0 开始),当 target[i] = words[j][k] 时,你可以使用 w

2020-11-06 21:24:41 187

原创 wyh的物品 (二分)

链接:https://ac.nowcoder.com/acm/problem/15446来源:牛客网题目描述wyh学长现在手里有n个物品,这n个物品的重量和价值都告诉你,然后现在让你从中选取k个,问你在所有可能选取的方案中,最大的单位价值为多少(单位价值为选取的k个物品的总价值和总重量的比值)输入描述:输入第一行一个整数T(1<=T<=10)接下来有T组测试数据,对于每组测试数据,第一行输入两个数n和k(1<=k<=n<=100000)接下来有n行,每行两个是a和

2020-05-24 15:23:43 372 8

原创 STL容器

setset集合lower_bound upper_boundlower_bound(x)返回第一个大于等于x的数upper_bound(x)返回第一个大于x的数

2020-05-21 15:14:51 83

原创 归并排序

归并排序1.归并排序是利用的分治的策略进行的排序,用的二分,每次都分成两部分,这两部分分别有序,在合并为一个整体有序。2.归并排序是稳定排序归并排序分的部分采用递归的形式:void mysort(int L,int R){ if(L>=R) return ; int mid=(L+R)>>1; mysort(L,mid);//下面两步就是二分 mysort(mid+1,R); bin(L,R,mid);// 归并操作}代码看上去并不复杂

2020-05-19 20:51:59 100

原创 区间合并

区间合并区间合并思路:以左边端点排序,然后下一个左端点比较以前尤端点的最大值,记住这里必须是比较最大值。更新左右端点就行了;代码如下:#include<bits/stdc++.h>#define ll long longusing namespace std;const int N=1e5+5;struct node{ int l; int r;}a[N];bool cmp(node x,node y){ return x.l<y.l;}int

2020-05-16 16:20:20 140 1

原创 前缀和

直接说例题把数学考试链接:https://ac.nowcoder.com/acm/problem/15553来源:牛客网今天qwb要参加一个数学考试,这套试卷一共有n道题,每道题qwb能获得的分数为ai,qwb并不打算把这些题全做完,他想选总共2k道题来做,并且期望他能获得的分数尽可能的大,他准备选2个不连续的长度为k的区间,即[L,L+1,L+2,…,L+k-1],[R,R+1,R+2,…,R+k-1](R >= L+k)。输入描述:第一行一个整数T(T<=10),代表有T组数

2020-05-15 21:03:07 124

原创 二进制枚举

二进制枚举颓废了几个月没打代码了,今天开始要认真的代码了记录一下学习的二进制枚举二进制枚举就是用01串来表示一个状态,选或者不选。列如我们有五瓶矿泉水,我们就可以用0 1来选择要不要。就是从00000~11111之间的枚举,也就是[0,2^n-1]之间的枚举。如此就有for(int i=0;i<(1<<n);i++)我们还需知道哪些位置选了,如此就有for(int j = 0; j < n; j++) if(i & (1 <<

2020-05-15 19:50:52 269

原创 堆排序

堆排序堆排序就是在反复的建堆,你如果是从小到大排序就是建大根堆,从大到小排序的话就是建小跟堆;建大根堆的话,就是父亲结点大于左右孩子结点,所以根结点就是最大的点,每次将最大的点与数组最后一个点交换;建堆代码:void bulid_heap(int len){ for(int i=len-1;i>=0;i--) heap(i,len);}heap函数:vo...

2019-12-10 13:38:39 70

原创 单源最短路(Dijkstra)

DijkstraDijkstra也是单源最短路,下面是博主对Dijkstra个人了理解上次学Dijkstra的时候根本没有学懂感觉好难,这几天看别人的博客再加上自己的思考终于搞懂了Dijkstra;直接进入正题:它需要一个辅助数组来记录已经确定的最短路径的点;每次需要找到一个距离源点最近的点,然后再以这个点为转折点比较ans[ k ]与ans[ j ] + dis [j ][ k ]的大...

2019-11-27 17:47:27 184

原创 div3 582 D2. Equalizing by Division (hard version)

D2. Equalizing by Division (hard version)time limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThe only difference between easy and hard versions is the...

2019-11-13 20:16:55 119

原创 数学知识

∑i=1n∑j=1ni×j=∑i=1ni×(∑j=1nj)=(∑j=1nj)×(∑i=1ni)=(n(n+1)2)2\begin{aligned}\sum_{i=1}^n\sum_{j=1}^ni\times j=\sum_{i=1}^ni\times\left(\sum_{j=1}^nj\right)=\left(\sum_{j=1}^nj\right)\times\left(\sum_{i=...

2019-11-09 13:53:38 149

原创 Codeforces Round #599 (Div. 2) B2. Character Swap (Hard Version)

B2. Character Swap (Hard Version)This problem is different from the easy version. In this version Ujan makes at most 2???? swaps. In addition, ????≤1000,????≤50 and it is necessary to print swaps themselves. ...

2019-11-07 17:46:37 143

原创 cf B. Alice and the List of Presents

B. Alice and the List of Presents time limit per test: 1 second memory limit per test: 256 megabytes input: standard input output: standard outputAlice got many presents these days. S...

2019-10-28 22:55:44 183

原创 费马大定理及构造勾股数

费马大定理费马大定理就是指a^ n+ b ^n=c ^n;当n>2时无解;构造勾股数a ^2+b ^2=c ^2;当a是奇数时:tmp=(a-1)/2;b=2tmp(tmp+1);c=b+1;当a是偶数时:tmp=a/2-1;b=tmp*(tmp+2);c=b+2;...

2019-09-19 21:50:59 131

原创 java环境安装(jdk环境配置及eclipse下载)

eclipse软件下载该软件直接在官网下载:https://www.eclipse.org/downloads/要注意在中国的镜像在下载,不然下载速度非常慢;jdk下载jdk在官网下载一样非常慢;采用在华为的一个镜像网站下载:https://repo.huaweicloud.com/java/jdk/jdk环境配置在此电脑->属性->高级系统设置->环境变量;里...

2019-09-04 22:49:10 225 2

原创 codeforces D. Print a 1337-string...

题目链接:https://codeforc.es/contest/1202/problem/Doutputstandard outputThe subsequence is a sequence that can be derived from another sequence by deleting some elements without changing the order of th...

2019-08-09 15:47:44 155

原创 分数取模

题目:https://ac.nowcoder.com/acm/contest/946/A牛客网第一题就把我卡住了,因为不能整除时输出对分数取模后的结果;自己很菜,肯定不知道分数怎么取模,直接上百度,了解了一下小费马定理:a^p-1 mod p = 1 mod p根据小费马定理就可以推到: *(b/a)%p=b*a^-1%p=b a ^p-2%p#include<bits/stdc+...

2019-08-07 16:28:57 1187

原创 大数模板

大数加法模板///大数加法模板///c++函数传入两个string,返回string///该模板没有处理前导零string sum(string s1,string s2){ if(s1.length()<s2.length()) { string temp=s1; s1=s2; s2=temp; ...

2019-08-06 09:19:54 67

空空如也

空空如也

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

TA关注的人

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