上千主上-贝库塔

一头会咬人的狮子并不可怕,可怕的是这头狮子懂得隐忍
私信 关注
一个爱浪费时间的人
码龄5年

一头会咬人的狮子并不可怕,可怕的是这头狮子懂得隐忍

  • 254,736
    被访问量
  • 334
    原创文章
  • 10,098
    作者排名
  • 109
    粉丝数量
  • 于 2015-12-04 加入CSDN
获得成就
  • 获得402次点赞
  • 内容获得77次评论
  • 获得186次收藏
荣誉勋章
兴趣领域
  • #人工智能
    #数据分析#Flink#Python#神经网络#语音识别#TensorFlow#NLP#视觉/OpenCV#自然语言处理#机器学习#PyTorch#深度学习#图像处理#算法
TA的专栏
  • 源码之路
  • 消息中间件
    3篇
  • vue
    5篇
  • 面试必备
    23篇
  • 算法
    15篇
  • ACM-贪心
    9篇
  • ACM-dp(动态规划)
    19篇
  • ACM-搜索(DFS BFS)
    4篇
  • ACM-KMP
    2篇
  • ACM-回文串
  • ACM-Trie树
    2篇
  • ACM-模拟
    3篇
  • ACM-并查集
    5篇
  • ACM-树状数组
    3篇
  • ACM-线段树
    5篇
  • ACM-最小生成树
    7篇
  • ACM-最短路径
    8篇
  • ACM-网络流
    2篇
  • POJ
    21篇
  • UVA
    1篇
  • Codeforces
    13篇
  • HDU
    22篇
  • MySQL
    7篇
  • redis
    24篇
  • HTML5
    7篇
  • CSS
    3篇
  • javaScript
    5篇
  • ajax
    5篇
  • Linux
    7篇
  • JAVA WEB
    24篇
  • JAVA 多线程
    21篇
  • JAVA 正则表达式
    5篇
  • Maven
    9篇
  • 设计模式
    4篇
  • android
    7篇
  • Python
    8篇
  • 网络爬虫
    3篇
  • SSH
    1篇
  • Struts2
    19篇
  • hibernate
    12篇
  • Spring
    8篇
  • mybatis
    2篇
  • SpringMVC
    9篇
  • Spring data
    3篇
  • spring boot
    5篇
  • Spring security+OAuth
    19篇
  • spring Cloud
    6篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

Spring Cloud(六)-分布式配置中心

一.前言这两个都不是停更才不用的…只是单纯被后起之秀阿里巴巴的Nacos所取代当然还有很多公司在用,一共三套选择Config+BusSpring Cloud Alibaba Nacos携程的Apollo(阿波罗)-开源的二.SpringCloud Config分布式配置中心1.概述A.分布式系统面临的—配置问题微服务意味着将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能运行,所以一套集中式的、动态
原创
32阅读
0评论
0点赞
发布博客于 2 月前

Linux菜鸟记-实战之安装常用软件

本实战的系统环境是CentOS 7.5一.安装Jdk下载jdk.tar.gz包,丢到centos上配好了,注销用户,重新登录,环境变量才能生效tar -zxvf jdk... //解压//配置环境变量vim /etc/profileJAVA_HOME=你jdk的路径 PATH=你jdk的路径/bin:$PATHexport JAVA_HOME PATH二.安装Tomcat一般来说jdk版本最好和tomcat版本对应,比如jdk用的1.8,tomcat就用8.0,jdk用1.
原创
23阅读
0评论
0点赞
发布博客于 2 月前

Spring Cloud(五)-服务网关

一.Zuul路由网关Zuul想看的去看2019版了,已经被Gateway取代了本想出Zuul2,但是Zuul核心人员被挖走了…1.概述简介2.路由基本配置3.路由访问映射规则4.查看路由信息5.过滤器二.Gateway新一代网关Spring社区自己研发了新一代网关Gateway1.概述简介A.官网上一代zuul 1.xhttps://github.com/Netflix/zuul/wiki当前gatewayhttps://cloud.spring.io/spr
原创
32阅读
0评论
0点赞
发布博客于 2 月前

MQ之ActiveMQ(三)

一.ActiveMQ多节点集群1.面试题引入消息队列之后该如何保证其高可用性做集群,避免单点故障2.是什么基于Zookeeper和levelDB搭建ActiveMQ集群集群仅提供主备方式的高可用集群功能,避免单点故障3.zookeeper+replicated-leveldb-store的主从集群A.三种集群方式对比官网LevelDB,5.6版本之后推出了LevelDB的持久化引擎,它使用了自定义的索引代替常用的BTree索引,其持久化性能高于KahaDB,虽然默认的持
原创
37阅读
2评论
0点赞
发布博客于 2 月前

Spring Cloud(四)-服务降级

一.Hystrix(黑斯坠斯)断路器1.概述A.分布式系统面临的问题复杂分布式体系结构中的应用程序又数十个依赖关系,每个依赖关系在某些时候将不可避免地失败服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的"扇出"。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“”“雪崩效应”对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源
原创
44阅读
1评论
0点赞
发布博客于 2 月前

Spring Cloud(三)-服务注册

一.Ribbon负载均衡服务调用1.概述A.是什么Spring Cloud Ribbon(瑞本)是基于Netflix Ribbon实现的一套客户端负载均衡的工具简单来说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(简单轮询,随机连接等)去连接这些机器。我们很容易使
原创
50阅读
1评论
0点赞
发布博客于 2 月前

MQ之ActiveMQ(二)

一.ActiveMQ的Broker1.Broker是什么相当于一个ActiveMQ服务器实例说白了,Broker其实就是实现了用代码的形式启动ActiveMQ将MQ嵌入到Java代码中,以便随时用随时启动,在用的时候再去启动这样能节省资源,保证可靠性2.按照配置文件启动不同的配置文件模拟不同的实例cp activemq.xml activemq02.xml//读取activemq02.xml./activemq start xbean:file:/xxxx/conf/active
原创
70阅读
0评论
0点赞
发布博客于 2 月前

Docker实战

一.Docker中安装redis1.单机版公司的windows服务器的redis经常崩,于是乎我就自己搭建一个用吧…先去拉取redis镜像下来docker pull redis查看本地镜像docker images再在服务器创建挂载的目录和配置文件mkdir -p /usr/local/docker/redis/confmkdir -p /usr/local/docker/redis/datatouch redis.conf启动redisdocker run -
原创
28阅读
0评论
0点赞
发布博客于 3 月前

redis-缓存穿透,缓存击穿,缓存雪崩

前言我们在设计有缓存的系统上时,基本流程如下所示一.缓存穿透1.定义是指缓存和数据库都不存在的数据,对于用户的请求访问,缓存一直不被命中,而是一直去请求持久层的数据库,每次去请求持久层的数据库,失去了缓存的意义了在流量大的情况下(秒杀),数据库可能会挂掉,这也可以成为黑客攻击系统的漏洞了2.解决方案A.布隆过滤器布隆过滤器是一种数据结构将所有可能存在的数据哈希到一个足够大的bitmap中一个一定不存在的数据会被这个bitmap拦截掉,从而避免了对数据库的查询压力B.缓存空
原创
26阅读
0评论
0点赞
发布博客于 3 月前

MQ之ActiveMQ(一)

前言消息微信短信语音中间件MQ产品种类KafkaRabbitMQRocketMQActiveMQ(技术维度)API发送和接收MQ的高可用性MQ的集群和容错配置MQ的持久化redis(RDB和AOF)延时发送/定时投递签收机制Spring整合…一.入门概述1.从生活case到实际生产案例微服务架构后,链式调用是我们在写程序时候的一般流程,为了完成一个整体功能会将其拆分成多个函数(子模块),比如模块A调用模块B,模块B调用模
原创
78阅读
3评论
0点赞
发布博客于 3 月前

Docker入门(二)

一.Docker容器数据卷1.是什么先看看Docker理念将运用与运行的环境打包形成容器运行,运行可以伴随着容器,但是我们对数据的要求希望是持久化的容器之间希望有可能共享数据Docker容器产生的数据,如果不通过docker commit生成新镜像,使得数据作为镜像的一部分保存下来,那么当容器删除后,数据自然也就没有了为了能保存数据在docker中我们使用卷2.能干嘛容器的持久化(类似于redis中的AOF和RDB)容器间继承+共享数据卷就是目录或文件,存在于一个或多个容器中
原创
36阅读
0评论
0点赞
发布博客于 3 月前

Linux常见问题总结

1.CentOS 6.8下yum命令报错错误首先检查网络问题,看看网络是否通畅之后考虑yum源的配置问题,比如CentOS6.8自带的yum配置,我是直接删掉的(因为有问题),下载的阿里云yum的源,但是还是会报错看到404…于是乎我直接复制一个地址访问果然真是404,因为6下面已经没有任何东西了,所以会报错,然而7下面存在着文件cd /etc/yum.repos.d //进入yum配置文件夹vi CentOS-Base.repo //编辑yum配置文件将文件中$releasev
原创
34阅读
0评论
0点赞
发布博客于 3 月前

运维菜鸟记-Linux入门(二)

一.RPM和YUM1.rpm介绍一种用于互联网下载包的打包以及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似于Windows中的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的Linux的分发版本都有采用(suse,redhat,centos等等),可以算是工人的行业标准了rpm包的简单查询指令rpm -qa | grep xxx
原创
55阅读
0评论
0点赞
发布博客于 3 月前

动态规划(四)-划分型动态规划

一.例1.LintCode 513 Perfect Squares题意:给定一个正整数n,问最少可以将n分成几个完全平方数(1,4,9…)之和例子:输入:n=13,输出:2(13=4+9)1.确定状态最后一步:关注最优策略中最后一个完全平方数j²最优策略中n-j²也一定被划分成最少的完全平方数之和需要知道n-j²最少被分成几个完全平方数之和,原来求n最少被分成几个完全平方数之和子问题状态:设f[i]表示i最少被分成多少个完全平方数之和划分一般都是设定成二维数组,比如f[i][j],前
原创
103阅读
0评论
0点赞
发布博客于 3 月前

运维菜鸟记-Linux入门(一)

这里我们选择用虚拟机系统环境为centos6.8一.虚拟机安装1.虚拟机安装的三种网络连接桥接模式:在教室环境下,两个人连上网,比如一个人张三windows系统,ip为192.168.0.20,另一个人李四也是windows系统,ip为192.168.0.10,张三装了一个虚拟机,如果虚拟机选择桥接模式,虚拟机环境下的ip地址就会是192.168.0.30,同一个网段下,两个人还是可以互相通信,乍看很不错…但是对于同一个教室下,有200+人,每个人都弄一个虚拟机,网络都选桥接模式会出现ip地址.
原创
472阅读
0评论
0点赞
发布博客于 3 月前

Docker(入门一)

一.Docker简介经常在开发中遇到开发工程师在本机上写好的项目运行没有问题,但是丢给运维工程师喊它部署,报一大堆错误…出现以上问题主要就两条原因,环境和配置Docker就是为了解决上面的问题出现的环境配置如此麻烦,换一台机器,就要重来一次,费力费时,能不能从根本上解决问题,软件带环境安装?也就是说,安装的时候,把原始环境一模一样的复制过来。简单来说以前是搬家…现在是直接搬楼了Dokcer镜像设计,使得Docker得以打破过去程序即引用的观念,透过镜像将作业系统核心除外,运作应用程式所需要的
原创
70阅读
0评论
0点赞
发布博客于 4 月前

动态规划专题

一.leetcode1.LeetCode403-青蛙过河题意一堆石头,给定一个数组stones,代表着石头的位置列表,青蛙在第一个石头上,第一个石头规定只能跳一个单位,青蛙上步跳k单位,那么规定下一步只能跳k-1,k,k+1单位,问青蛙是否可以跳到最后一个石头上(青蛙只能向前跳,不能向后跳)例子:输入:0,1,3,5,6,8,12,17输出:trueA.思考明显的一道动态规划的一道题,当然也可以用dfs来做,不过数组长度上限是4位数,不剪枝肯定会超时,所以这里我们用动态规划来做是
原创
45阅读
0评论
0点赞
发布博客于 4 月前

动态规划(三)-序列型动态规划

一.序列型动态规划概述1.序列型动态规划特点给定一个序列动态规划方程f[i]中的下标i表示前i个元素a[0]、a[1]、…a[i-1]的某种性质坐标型的f[i]表示以ai为结尾的某种性质初始化中,f[0]表示空序列的性质坐标型动态规划的初始条件f[0]就是指以a0为结尾的子序列的性质2.例1(LintCode 516 Paint House II)题意:有一排N栋房子,每栋房子要漆成K种颜色中的一种,任何两栋相邻的房子不能漆成同样的颜色,房子i染成第j种颜色的花费是cos
原创
88阅读
0评论
1点赞
发布博客于 4 月前

Spring Cloud(二)-服务注册中心

为什么需要有服务注册中心?就像是一个病人去私人医院一对一医治专家,不需要中间横着一个门诊挂号,但是随着病人越来越多,量变引起质变,那么专家还有没有剩号、余号?今天有多少个病人去找这个专家了?监控流量的管控,需要有一个类似于门诊前台的东西一样,通过门诊可以知道这个专家今天提供了多少医疗服务,今天有多少人挂这个号,可以统一进行调度和管理一.Eureka服务注册与发现2.x版本停更,但是1.x版本还在维护1.Eureka的基础知识A.什么是服务治理?在传统的rpc远程调用框架中,管理每个服务.
原创
77阅读
0评论
0点赞
发布博客于 4 月前

Spring Cloud(一)-概述和环境搭建

一.微服务结构理论入门1.概述微服务是一种架构模式,提倡将单一应用程序划分成一组小的服务,服务之间互相协调,互相配合每个服务运行在独立的进程中,服务与服务之间采用轻量级的通信机制互相协作(通常基于HTTP协议的RESTful API)能独立部署到生产环境和类生产环境中,尽量避免统一、集中的服务管理机制简单的来说就是Spring boot开发的一个个的服务集合谈谈你对分布式架构的理解,如果面试问到这个问题,肯定要有以下几个方面分布式微服务架构是一个整体,而不是单一的技
原创
69阅读
1评论
0点赞
发布博客于 4 月前

动态规划(二)-坐标型动态规划

例1给定m行n列的网格,有一个机器人从左上角(0,0)出发,每一步可以向下或者向右走一步网格中有些地方有障碍,机器人不能通过障碍格问有多少种不同的方式走到右下角动态规划组成部分一:确定状态这题和上章某题很像,只是网格中可能有障碍最后一步一定是从左边(i,j-1)或上边(i-1,j)过来,这点是没有变的,变的只是多了障碍而已状态f[i][j]表示从左上角有多少种方式走到格子(i,j)(坐标型动态规划基本都是:数组下标[i][j]即坐标(i,j))动态规划组成部分二:转移方程f[i
原创
115阅读
1评论
1点赞
发布博客于 5 月前

算法汇总

一.数据结构1.链表A.快慢指针解决问题:判断链表是否有环,找中间值等快慢指针-讲解博客例题 LeetCode141.环形链表public class Solution { public boolean hasCycle(ListNode head) { if(head==null||head.next==null){ return false; } ListNode slowNode = head;//
原创
63阅读
0评论
0点赞
发布博客于 6 月前

《JAVA设计模式》之策略模式

一.策略模式概述策略模式在设计模式在行为型模式,行为型模式主要特征点为类的行为或其算法可以在运行时更改在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。策略模式主要解决在多种算法类似情况下,用if…else所带来的复杂和难以维护,多一种算法多写一次else if…如果有上千种呢?难道写上千个else if…主要思想:共同实现一个接口举个例子,比如上班,可以骑自行车上班,坐地铁上班,坐公
原创
68阅读
0评论
0点赞
发布博客于 6 月前

动态规划(七)-博弈型动态规划

一.博弈型动态规划的概念博弈为两方游戏一方先下,在一定规则下依次出招如果满足一定条件,则一方胜目标:取胜先手:先出招的一方出招后,先手换人,新的先手面对一个新的局面例1 Coins in a Line(LintCode 394)题意:有一排N个石子,Alice,Bob两人轮流取石子,每次一个人可以从最右边取走一个或两个石子,取走最后石子的人胜,问先手Alice是否必胜(先手必胜:true,先手必败:false)例子:输入:N=5,输出:true(先手取走2个石
原创
136阅读
0评论
0点赞
发布博客于 7 月前

常用验证码图片识别

在我们的生活中,我们遇到的验证码越来越繁杂,本文就是来解决一些常用的验证码的识别,一些较为复杂的验证码,如点选验证码,逻辑验证码等等,联系了开发者,说的是后续会逐一实现。破解验证码无非就是两种方式,一种就是OCR识别,另一种就是比较复杂的深度学习(后者优于前者),但是深度学习听名字就知道高大上…国内除了顶尖985院校,就算是211硕士也只能来当个前后端开发人员,运气好的也许能够成为算法工程师…那么题外话结束了,这里我们就用的深度学习的方法来实现验证码的识别,那么也许很多人都会纠结,看不懂深度学习代码怎.
原创
238阅读
0评论
0点赞
发布博客于 10 月前

动态规划(一)-动态规划入门

一.初入动态规划1.什么是动态规划?A:求有多少种方式走到右下角B:输出所有走到右下角的路径,哪个可以用动态规划?题A是计数问题,属于动态规划题型的一种,而题B则是DFS2.动态规划特点A.计数有多少种方式走到右下角有多少种方法选出k个数使得和是sumB.最大最小值从左上角走到右下角路径的最大数字和最长上升子序列长度C.求存在性取石子游戏,先手是否必胜(博弈论)能不能选出k个数使得和是sum3.例1 零钱兑换(leetcode 322)给定不同的硬币,比如
原创
134阅读
0评论
0点赞
发布博客于 11 月前

Leetcode刷题之路(151-160)

153.寻找旋转排序数组中的最小值寻找旋转排序数组中的最小值题目链接方法一:直接for遍历,时间复杂度为O(n) public int findMin(int[] nums) { int min = nums[0]; for(int i=1;i<nums.length;i++){ min=Math.min(mi...
原创
60阅读
0评论
0点赞
发布博客于 1 年前

Leetcode刷题之路(141-150)

144.二叉树的前序遍历二叉树的前序遍历题目链接方法一:递归法List<Integer> results = new ArrayList<>(); public List<Integer> preorderTraversal(TreeNode root) { if(root!=null){ resul...
原创
70阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(131-140)

136.只出现一次的数字只出现一次的数字题目链接方法一:排个序,然后再处理public int singleNumber(int[] nums) { int result = -1; Arrays.sort(nums); for(int i=0;i<nums.length;i+=2){ if(i+1<n...
原创
53阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(121-130)

待更新
原创
44阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(111-120)

112.路径总和路径总和题目链接同样bfs思想public boolean hasPathSum(TreeNode root, int sum) { boolean flag = false; if(root==null){//注意为空的判断 return flag; } T...
原创
64阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(101-110)

104.二叉树的最大深度二叉树的最大深度题目链接用递归左右两边取最大,不为空的就加1,为空返回0public int maxDepth(TreeNode root) { if(root==null){ return 0; } return Math.max(maxDepth(root.left)+1,maxD...
原创
55阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(91-100)

94.二叉树的中序遍历二叉树的中序遍历题目链接中序遍历:左子树->头节点->右子树方法一:递归法,很简单直接按中序遍历顺序写List<Integer> results = new ArrayList<>(); public List<Integer> inorderTraversal(TreeNode root) { ...
原创
35阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(81-90)

88.合并两个有序数组合并两个有序数组题目链接方法挺多了方法一,最最常见的方法,效率最不高的方法,遍历两个数组,遇到数组2小于数组1的,就把数组1往后移动,这个位置上插入数组2的这个值public void merge(int[] nums1, int m, int[] nums2, int n) { int index1=0,index2=0; int...
原创
42阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(71-80)

77.组合组合题目链接dfs回溯,主要关键点在于添加条件上,像结果集中1,2,3有了,是不能再添加2,3,1和1,3,278.子集
原创
37阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(61-70)

62.不同路径不同路径题目链接一道很简单的动态规划题,找出动态方程和边界是关键!如果不知道动态规划,推荐看看这个视频!B站巨佬讲解动态规划入门视频public int uniquePaths(int m, int n) { int [][]dp = new int[m][n]; for(int i=0;i<m;i++){ f...
原创
47阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(51-60)

51.N皇后N皇后题目链接N皇后就是同一行,同一列,同一对角线只能存在一个皇后,而输入是n*n格子,答案让你输出对应的方案52.N皇后IIN皇后题目链接N皇后就是同一行,同一列,同一对角线只能存在一个皇后,而输入是n*n格子,答案让你输出有几种方案private int results; public int totalNQueens(int n) { ...
原创
51阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(41-50)

46.全排列全排列题目链接典型的dfs模板题List<List<Integer>> results; boolean [] flags ; public List<List<Integer>> permute(int[] nums) { results = new ArrayList<>(); ...
原创
40阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(31-40)

38.报数报数题目链接就一个简单的双重for循环,比较简单的一道题private StringBuilder [] stringBuilder; public String countAndSay(int n) { init(n); return stringBuilder[n-1].toString(); } private ...
原创
46阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(21-30)

26.删除排序数组中的重复项删除排序数组中的重复项题目链接首先这道题要求你不能用多余空间,只让你用这个数组nums来实现,那么第一反应就是遇到重复的就去移动,但是仔细想想这种思路挺复杂的,效率也不高。我们可以反向思考一下,从数组头开始遍历,用一个指针记录当前第一个数,遇到不等于当前指针数的就数组头开始覆盖,然后更新这个指针数,这样只需要遍历一次答案就出来了public int remo...
原创
50阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(11-20)

17.电话号码的字母组合电话号码的字母组合题目链接有点像全排列,可以用dfs,用Map<String,String>去存储对应关系 private Map<String,String> map; private List<String> results; public List<String> letterCombin...
原创
53阅读
0评论
0点赞
发布博客于 2 年前

Leetcode刷题之路(1-10)

1.两数之和题目链接方法一:这道题我们最容易想到的思路就是用暴力,双重for循环解决,但是这种效率比较低下public int[] twoSum(int[] nums, int target) { int [] results = new int[2]; boolean flag = false; for(i...
原创
59阅读
0评论
0点赞
发布博客于 2 年前

Java面试题总结(六)-算法和数据结构篇

待更新
原创
108阅读
0评论
0点赞
发布博客于 2 年前

Java面试题总结(五)-Spring篇、Spring MVC篇、mybatis篇

待更新
原创
73阅读
0评论
0点赞
发布博客于 2 年前

Java面试题总结(四)-mysql篇、redis篇

待更新
原创
142阅读
0评论
1点赞
发布博客于 2 年前

Java面试题总结(三)-集合篇、反射篇、GC篇、JDK新特性篇

待更新
原创
101阅读
0评论
0点赞
发布博客于 2 年前

Java面试题总结(二)-语法篇、异常篇、多线程篇

一.语法篇1.简述下面向对象几大特征面向对象三大特性-封装、继承、多态封装:在面向对象的编程语言中,对象是封装最基本单位,封装就是把描述一个对象的属性和行为封装在一个类中,属性用变量定义,行为用方法定义继承:提供代码重用和扩展,实现一个类可以在一个已经存在的类的基础之上进行,可以重用这个已存在的类的内容,并且还可以加入新的内容多态:程序中定义的引用变量,所指向的具体类型和具体调用方法,...
原创
100阅读
0评论
0点赞
发布博客于 2 年前

Java面试题总结(一)-设计模式、网络基础

一.设计模式1.单例模式A.懒汉式单例模式最简单的实现发现,但是不支持多线程,线程不安全如果想线程安全,在方法上加上synchronized就可以,不过这样效率低下,99%情况都不会用到public class Singleton { private static Singleton instance; public static Singleton getInsta...
原创
65阅读
0评论
0点赞
发布博客于 2 年前

Vue 项目结构(五)

一.环境配置安装node.js和git命令行执行node -v出现版本号就说明node安装成功命令行执行npm -v查看npm是否安装成功,npm是安装工具命令行git --version查看git是否安装成功去github或者码云线上创建一个项目,弄好了公钥上传下载就不需要密码了git bash(小型的linux操作系统)执行git clone 项目的ssh地址,会把线上代码克隆到...
原创
59阅读
0评论
0点赞
发布博客于 2 年前

Vue 中的动画特效(四)

一.vue中的css动画原理1.transition标签我们要一个例子来说明吧先写一段由变量show控制div显示的代码 <div id="app"> <div v-if="show">hello world</div> <button @click="handl...
原创
101阅读
0评论
0点赞
发布博客于 2 年前

Vue 深入理解组件(三)

一.组件使用的细节点1.浏览器解析问题 <div id="root"> <table> <tbody> <row></row> <row></row> ...
原创
87阅读
0评论
0点赞
发布博客于 2 年前

Vue 基础(二)

一.Vue实例vue项目就是很多个小组件组成的,也可以说是很多vue实例组成的每个组件就是一个vue实例,实例有很多属性和方法<body> <div id="app"> {{content}} </div> <script> var vm = new V...
原创
59阅读
0评论
0点赞
发布博客于 2 年前

Vue起步(一)

一.vue介绍当下最火的三大前端框架当属vue、react以及angular了为什么要学vue,因为vue有很多优势vue比react、angular更容易上手,vue写起来更加流畅、方便,vue的优化做的要比react好一些,vue的文档更加好vue是一套用于构建用户界面的渐进式框架二.vue的hello版本1.hello vue<body> <d...
原创
76阅读
0评论
0点赞
发布博客于 2 年前

SpringData入门(四)-Spring data JPA高级

今天要讲的这几个接口都是Repository接口的子接口一.CrudRepository接口使用详解save(entity):保存一个实体save(entities):保存多个实体findOne(id):找到一个对象exists(id):根据ID判断对象是否存在findAll():找到所有实体对象delete(id):根据ID删除实体对象delet...
原创
253阅读
0评论
1点赞
发布博客于 2 年前

SpringData入门(三)-Spring Data JPA进阶

一.关于Respository接口Repository接口是Spring Data的核心接口,不提供任何方法Repository接口是一个空接口(标记接口)-没有包含任何方法声明的接口如果我们定义的接口extends Repository,自动会被Spring管理比如我们上一章讲得EmployeeRepository接口,就是 extends Repository,我们先来打印一下...
原创
264阅读
0评论
0点赞
发布博客于 2 年前

SpringData入门(二)-springdata快速入门

一.开发环境搭建先加入依赖<!-- spring data jpa --> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-jpa</artifac...
原创
475阅读
0评论
0点赞
发布博客于 2 年前

SpringData入门(一)-使用传统方式访问数据库

一.导学什么是SpringData?主旨:提供一个熟悉的、一致的,基于Spring框架的数据访问框架。简化数据库的访问官网 https://spring.io/projects/spring-dataSpring Data包含多个子项目Spring Data JPA:减少我们数据访问层的开发量Spring Data Mongo DBSpring Data RedisSp...
原创
93阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(二十)-实现图形验证码功能

一.导学开发生成图形验证码接口根据随机数生成图片将随机数存到session中将生成的图片写入响应中由于不论app还是浏览器 都要用到 所以写到core项目里面去二.实现图形验证码图片验证码类一般包含三个属性:图片 随机数 过期时间一般过期时间不是直接设置的 而是设置的多少时间过期 当前时间+多少时间过期public class ImageCode { pri...
原创
304阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十八)-个性化用户认证流程(二)

一.导学自定义登录成功处理器自定义登录失败处理器默认情况下,spring security 跳到你引发登录的请求上 访问/user 要登录 登录成功就跳到/user在SPA下,登录可能不是表单提交的同步方式来访问的,而是异步AJAX请求来访问登录,这个时候前端希望拿到用户相关的一些信息(json格式),这时登录成功做一个跳转这是不合适的二.自定义登录成功处理器在Spring se...
原创
153阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十七)-个性化用户认证流程(一)

一.导学自定义登录页面自定义登录成功处理器自定义登录失败处理器二.自定义登录页面loginPage方法:指定登录页面的url@Override protected void configure(HttpSecurity http) throws Exception { http.formLogin()//form表单 高版本中默认是表单 低版本中默认...
原创
115阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十六)-自定义用户认证逻辑

一.导学自定义用户认证逻辑处理用户信息获取逻辑处理用户校验逻辑处理密码加密解密二.处理用户信息获取逻辑用户信息获取逻辑在Spring security中是封装在接口 UserDetailsService里面的这个接口中只有一个方法根据用户前面输入的用户名到你的存储(不管是数据库还是什么去读取一个用户信息) 用户信息封装在UserDetails接口对象中的实现类中,登陆成功会把...
原创
237阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十二) 使用Spring MVC开发RESTful API-异步处理rest服务

一.导学使用Callable异步处理Rest服务使用DeferredResult异步处理REST服务异步处理配置异步处理就是主线程使用委托副线程去处理业务,然后主线程去接纳其他的请求。提高性能二.使用Callable异步处理Rest服务我们先来看看模拟同步处理@RestControllerpublic class AsyncController { priva...
原创
197阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十五)-Spring Security基本原理

一.Spring Security简介使用Spring Security开发基于表单的认证前面我们介绍的如何开发RESTful服务 但是这些服务是处于无保护状态 任何人知道地址都可以直接访问 企业级开发中肯定不准许存在的需要对用户进行认证和授权保证合法用户访问Spring Security核心功能认证 (你是谁)授权 (你能干什么)攻击防护 (防止伪造身份)内容简介...
原创
221阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十四)-使用WireMock快速伪造RESTful服务

一.导学在后端没有开发好的时候,使用wireMock快速伪造服务为什么要伪造服务?主要是用于多端并行开发,前段可能有pc、app,微信多端点,遇到这种情况,先伪造服务的确是能节省很多成本;当然如果很耗费时间的话,肯定就得不偿失了;到时候等后端写好之后,前段切换连接就行了WireMock其实就是一个独立的服务器二.WireMock介绍去Wiremock官网下载运...
原创
316阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十三) 使用Swagger自动生成文档

一.导学与前端开发并行工作使用swagger自动生成html文档使用WireMock快速伪造RESTful服务二.Swagger介绍Swagger就是根据你写的代码自动生成文档 不用你自己去维护文档去这里https://mvnrepository.com/ 获取依赖Springfox Swagger2:扫描程序生成文档数据Springfox Swagger UI:生成最终可...
原创
130阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十一) 使用Spring MVC开发RESTful API-文件的上传和下载

一.导学Spring boot中如何处理文件上传和下载的在前后端分离的环境里面,尤其是现在前端技术 页面都是SPA(单面应用) 不会有刷新 表单提交 都是异步完成的上传文件 给一个id 给一个路径 存在表单中 提交表单提交一个路径先写个测试用例吧注意:fileUpload方法过期了@Test public void whenUploadSuccess() throws E...
原创
350阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(十) 使用Spring MVC开发RESTful API-使用切片拦截REST服务

一.拦截器的局限性拦截器:可以获取请求 响应 处理请求的控制器的方法的对象,但是拿不到该方法真正参数的值这里的handler参数只是该方法的申明比如这些参数user参数的值用handler是获取不到的于是乎我们来看看源码,该类是处理分发请求的主要看doService方法调用了doDispatch方法doDispatch方法中这是调用你写的拦截器的preH...
原创
202阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(九) 使用Spring MVC开发RESTful API-使用Filter和Interceptor拦截REST服务

一.导学如果想用RESTful API记录处理时间,就需要用下面三种拦截方式了RESTful API的拦截过滤器(Filter)拦截器(interceptor)切片(Aspect)二.过滤器(Filter)编写过滤器@Componentpublic class TimeFilter implements Filter { @Override//初始化...
原创
192阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(八) 使用Spring MVC开发RESTful API-错误处理

一.导学Spring boot中默认的错误处理机制自定义异常处理二.spring boot中默认的错误处理机制访问一个不存在的urlhttp://localhost:8070/xxx浏览器的默认错误如下图所示浏览器的处理(我们先访问正常页面)http://localhost:8070/user/1获取用户信息的请求,返回的是json格式的用户信息我们...
原创
286阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(七) 使用Spring MVC开发RESTful API-用户信息修改和删除

一.导学用户信息修改和删除服务常用的验证注解自定义消息自定义校验注解常用的验证注解扩展http://hibernate.org/validator/documentation/https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/二.编写用户信息修改...
原创
179阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(六) 使用Spring MVC开发RESTful API-处理创建请求

一.导学@requestBody 映射请求体到java方法参数,可以处理json格式的请求内容日期类型参数的处理@Valid和BindingResult验证请求参数的合法性并处理校验结果二.写测试用例-创建成功 @Test public void whenCreateSuccess() throws Exception{ String content = "{...
原创
117阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(五) 使用Spring MVC开发RESTful API-编写用户详情服务

一.导学编写用户详情服务@PathVariable映射url片段到java方法的参数在url声明中使用正则表达式@JsonView控制json输出内容写用户详情服务前先写一个测试用例二.编写测试用例@Test public void whenGetInfoSuccess()throws Exception{ mockMvc.perform(Mo...
原创
246阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(四) 使用Spring MVC开发RESTful API-查询请求

一.导学编写第一个Restful Api编写针对RestfulAPI的测试用例使用注解声明RestfulAPI在RestfulAPI中传递参数常用注解RestController 标明此Controller提供RestAPIRequestMapping及变体。映射http请求url到java方法RequestParam 映射请求参数到java方法的参数PageableD...
原创
205阅读
1评论
0点赞
发布博客于 2 年前

Spring Security入门(三) 使用Spring MVC开发RESTful API

一.学习内容使用Spring MVC编写RESTful API使用Spring MVC处理其他web应用常见的需求和场景RESTful API开发常用辅助框架1.使用Spring MVC编写RESTful API的第一印象下图是传统模式和RESTful模式的不同 左边是传统 右边是RESTful不同点用URL描述资源传统用url来描述行为 看url就知道干啥了从url看...
原创
165阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(二) 项目结构

一.代码结构整体项目结构与环境搭建,我使用maven开发。且我使用的各种jar版本是spring boot2的playmaker-security 主模块playmaker-security-core:核心业务逻辑playmaker-security-browser:浏览器安全特定代码playmaker-security-app:app相关特定代码playmaker-security...
原创
154阅读
0评论
0点赞
发布博客于 2 年前

Spring Security入门(一) 导学与开发环境安装

一.导学课程目标深入理解Spring Security及相关框架的原理、功能和代码可以机遇Spring Security及相关框架独立开发认证授权相关功能掌握抽象和封装的常见技巧,可以编写可重用的模块供他人使用第二章 开始开发环境安装架构介绍Hello Spring Security第三章 使用Spring MVC开发 RESTful API开发基本的增...
原创
125阅读
0评论
0点赞
发布博客于 2 年前

刷牛客之路-Java基础题(二)

1.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为A.隐藏B.重写C.重载D.Java不支持此特性方法重写:在子类中,出现和父类中一模一样的方法声明的现象。方法重载:同一个类中,出现的方法名相同,参数列表不同的现象。方法重载能改变返回值类型,因为它和返回值类型无关。Ove...
原创
953阅读
0评论
1点赞
发布博客于 2 年前

super关键字回顾和内部类回顾以及多态

这几天刷牛客突然发现对于这些基础东西有点混淆 写写博客来加深印象一.super关键字回顾关于super关键字作用我就不在这里赘余了1.父类对子类构造方法的影响(1).当父类拥有无参构造方法public class Father { String name; String age; public Father() { System.out...
原创
86阅读
0评论
0点赞
发布博客于 2 年前

刷牛客之路-Java基础题(一)

1.应用程序的main方法中有以下语句,则输出的结果( )String s1=new String( ” xyz ” );String s2=new String( ” xyz ” );Boolean b1=s1.equals(s2);Boolean b2=(s1==s2);System .out.print(b1+ ” ” +b2); 结果:true false这题考察的就是...
原创
1198阅读
0评论
1点赞
发布博客于 2 年前

Spring Boot 2.x整合redis

一.在windows安装redis安装包:https://github.com/MSOpenTech/redis/releases目录redis-server.exe:服务端程序,提供redis服务redis-cli.exe: 客户端程序,通过它连接redis服务并进行操作redis-check-dump.exe:本地数据库检查redis-check-aof.exe:更...
原创
638阅读
0评论
0点赞
发布博客于 3 年前

RedisDesktopManager.rar

RedisDesktopManager.rar RedisDesktopManager.rar RedisDesktopManager.rar
rar
发布资源于 3 年前

Spring boot整合Junit

一.整合Junit先创建一个数据库,并加入点数据来进行操作DROP TABLE IF EXISTS `s_user`;CREATE TABLE `s_user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `user_name` varchar(100) DEFAULT NULL COMMENT '用户名', `password` v...
原创
2581阅读
0评论
0点赞
发布博客于 3 年前

Spring Boot整合MyBatis

一.整合MyBatis先创建一个数据库,并加入点数据来进行操作DROP TABLE IF EXISTS `user`;CREATE TABLE `user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `user_name` varchar(100) DEFAULT NULL COMMENT '用户名', `password` var...
原创
82阅读
0评论
0点赞
发布博客于 3 年前

Spring Boot整合Spring-data-JPA

一.整合Spring-data-JPAJPA(Java Persistence API的简称,中文名Java持久层API)基于注解来去配置映射,实体类,数据库表的规范(增删改查的规范)1.需求使用Spring Boot + Spring MVC + Spring Data JPA + EasyUI 框架组合实现部门列表查询先创建一个数据库,并加入点数据来进行操作DROP TAB...
原创
201阅读
0评论
0点赞
发布博客于 3 年前

static.rar

博客中对应的项目开发的前段资源
rar
发布资源于 3 年前

jquery-easyui-1.6.7.zip

包含EasyUI各个组件的演示例子;EasyUI各个组件在移动端开发的演示例子 EasyUI对于各个国家的语言包;EasyUI使用的插件js代码;EasyUI插件的js源码 EasyUI主题文件等 官网下的 放心
zip
发布资源于 3 年前

Spring Boot入门案例

一.Spring Boot简介Spring 诞生时是 Java 企业版(Java Enterprise Edition,JEE,也称 J2EE)的轻量级代替品.无需开发重量级的 Enterprise JavaBean(EJB),Spring 为企业级 Java 开发提供了一种相对简单的方法,通过依赖注入和面向切面编程,用简单的Java 对象(Plain Old Java Object,POJ...
原创
124阅读
0评论
0点赞
发布博客于 3 年前

Maven私服Nexus安装和使用

一.Nexus安装1.Nexus介绍是种特殊的Maven仓库一般用于公司2.Nexus安装去 https://www.sonatype.com/oss-thank-you-win64.zip 下载并解压如下执行命令安装私服(使用管理员权限在dos下执行命令安装私服)nexus.exe /install //安装nexus.exe /uninstall//卸载net st...
原创
3769阅读
1评论
0点赞
发布博客于 3 年前

通过maven对项目进行拆分、聚合

思路:对现在已有maven ssh项目进行拆分,拆分思路:将dao层的代码已经配置文件全体提取出来到一个表现上独立的工程中 同样service,action拆分工程我们用maven整合ssh.ssh-parent:父工程ssh-dao(子模块)ssh-service ssh-web拆分完成对拆分后的项目进行聚合,提出概念父工程一.创建父工程创建好父工程目录结构:只有po...
原创
1440阅读
0评论
0点赞
发布博客于 3 年前

maven整合ssh

一.SSH框架整合过程回顾1.导入jar包2.搭建struts环境创建action,创建struts.xml配置文件,配置action配置struts2的过滤器3.搭建hibernate环境搭建实体类配置实体类和数据库表映射关系创建hibernate核心配置文件引入映射配置文件4.搭建spring环境创建spring核心配置文件让spring配置文件在服务器...
原创
710阅读
0评论
0点赞
发布博客于 3 年前

struts2和spring整合包

包含struts2独立开发包 spring2独立开发包等等 包含struts2独立开发包 spring2独立开发包等等
rar
发布资源于 3 年前

maven传递依赖冲突解决

一.传递依赖冲突解决1.传递依赖:A(项目)依赖B,B依赖C(1.1版本),B是A的直接依赖,C就是A的传递依赖A(项目)再导入依赖D,D依赖C(1.2版本)此时就会出现两个Cmaven自己调解原则2.Maven自己调解原则(1).第一声明者优先原则谁先定义的就用谁的传递依赖当pom.xml中配置顺序是这个时,如下图所示&amp;lt;dependencies&amp;gt;...
原创
130阅读
0评论
0点赞
发布博客于 3 年前

maven整合struts2

一.maven整合struts环境tomcat8JDK8(最好jdk版本和tomcat版本一致,有时候版本不一致会出现很多兼容性的错误)在setting.xml中写入如下代码,默认maven是使用jdk版本为1.8 &lt;profile&gt; &lt;id&gt;jdk18&lt;/id&gt; &lt;activation&gt;...
原创
208阅读
0评论
0点赞
发布博客于 3 年前

eclipse中配置maven以及maven整合servlet

一.eclipse配置maven1.eclipse配置maven步骤配置m2e环境 Mars2版本自带maven插件需要配置maven程序配置userSetting:让eclipse知道maven仓库位置(本地仓库)二.maven整合servlet1.maven整合servlet步骤创建项目上面是java项目,下面是web项目2.查找依赖...
原创
812阅读
0评论
0点赞
发布博客于 3 年前

加密入门

一.凯撒密码1.概述凯撒密码:在古代,将军进行通信,信件容易被敌军截获,所以就发明了这种加密方式明文:原始信息密钥:加密与解密算法的参数,直接影响对明文进行变换的记过密文:经过加密算法混淆之后的信息 abc -&amp;gt;加密规则:在字母表上向右移动3位-&amp;gt;def love -&amp;gt; oryh加密算法:以密钥为参数,对明文进...
原创
499阅读
0评论
1点赞
发布博客于 3 年前

网络爬虫入门(三)-Cookie登录

一.Cookie的概念学过javaweb应该对cookie不陌生Cookie是浏览器存储存储用户信息的一小段文本,它保存了用户的ID等信息,这些信息可以被服务器端识别,并作为标识用户的手段,以此来判定用户是不是第一次访问Cookie是当你浏览某网站时,网站存储在你机器上的一个小文本文件,它记录了你的用户ID,密码、浏览过的网页、停留的时间等信息,当你再次来到该网站时,网站通过读取Cooki...
原创
157阅读
0评论
0点赞
发布博客于 3 年前

网络爬虫入门(二)-Jsoup解析

一.Jsoup介绍一般来说我们对爬取的网页解析有两种方法一种方法就是正则另一种方法就是Jsoup解析jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据所需要的jar包.二.Jsoup输入从URL加载文档使用Jsoup.connect(...
原创
830阅读
0评论
0点赞
发布博客于 3 年前

jsoup-1.11.3.jar

jsoup-1.11.3.jar
rar
发布资源于 3 年前

Tess4J 简单使用入门

Tesseract-OCR支持中文识别,并且开源和提供全套的训练工具,是快速低成本开发的首选。而Tess4J则是Tesseract在Java PC上的应用。在英文和数字识别中性能还是不错的,但是在中文识别中,无论速度还是识别率还是较弱,建议有条件的话,针对场景进行训练,会获得较好结果,本文仅对目前Tess4J的用法进行介绍。---------------------本文来自 jian_cheng_90 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/risky
原创
3550阅读
0评论
0点赞
发布博客于 3 年前

Tess4j-3.4.8-src.rar

Tess4j-3.4.8-src.rar
rar
发布资源于 3 年前