target

spring的proxy-target-class详解

谁说我不能喝 提交于 2020-03-05 02:11:51
proxy-target-class属性值决定是基于接口的还是基于类的代理被创建。 首先说明下proxy-target-class="true"和proxy-target-class="false"的区别, 1) 为true则是基于类的代理将起作用(需要cglib库) 2)为false或者省略这个属性,则标准的JDK 基于接口的代理将起作用。 位置:proxy-target-class在spring事务、aop、缓存这几块都有设置,其作用都是一样的。 <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/> <aop:config proxy-target-class="true"> <cache:annotation-driven proxy-target-class="true"/> 来源: CSDN 作者: 寻梦太极 链接: https://blog.csdn.net/xzj80927/article/details/102680721

封装的动画函数

拜拜、爱过 提交于 2020-03-05 01:28:44
function animate(element, target) { // 通过判断,保证页面上只有一个定时器在执行动画 if (element.timerId) { clearInterval(element.timerId); timerId = null; } element.timerId = setInterval(function () { // 步进 每次移动的距离 var step = 10; // 盒子当前的位置 var current = element.offsetLeft; // 当从400 到 800 执行动画 // 当从800 到 400 不执行动画 // 判断如果当前位置 > 目标位置 此时的step 要小于0 if (current > target) { step = - Math.abs(step); } // Math.abs(current - target) < Math.abs(step) if (Math.abs(current - target) < Math.abs(step)) { // 让定时器停止 clearInterval(element.timerId); // 让盒子到target的位置 element.style.left = target + 'px'; return; } // 移动盒子 current +=

leetcode-组合总和

别说谁变了你拦得住时间么 提交于 2020-03-05 00:10:38
 题目来自LeetCode,链接: combination-sum 。具体描述为:给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字可以无限制重复被选取。 说明: 所有数字(包括 target)都是正整数。 解集不能包含重复的组合。  示例1: 输入: candidates = [2,3,6,7], target = 7, 所求解集为: [ [7], [2,2,3] ]  示例2: 输入: candidates = [2,3,5], target = 8, 所求解集为: [ [2,2,2,2], [2,3,3], [3,5] ]  整个的搜索过程可以看做生成一棵搜索树的过程,根节点为和为0,假设candidates有L个候选数,然后接下来会从根节点出发生成L个节点,各节点的和就是0+候选数,因为可以重复无限次,所以每次一个节点往下总是可以再生出L个节点来。同时考虑到候选数都是大于零的,所以当一个节点得到一个大于等于0的和之后,就可以停止了,等于0的话回溯到根节点就得到一个符合条件的组合。这就是回溯算法,也可以看做一种深度优先遍历。同时,可以先对candidates进行排序,以方便及时剪枝,也就是在对一个节点生成L个子节点的时候

跳台阶

瘦欲@ 提交于 2020-03-05 00:00:21
题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 题解 本质上还是斐波那契数列的思维,如果target为1,则只有一种跳法;target为2时,有两种跳法;target为n时,因为可以跳一步或者两步,则可以从n-1位置跳到n,也可以从n-2位置跳到n,所以到n的跳法为n-1和n-2跳法的和。 public int JumpFloor ( int target ) { if ( target <= 0 ) { return 0 ; } int preNum = 1 ; int num = 2 ; int help ; if ( target == 1 ) { return preNum ; } if ( target == 2 ) { return num ; } for ( int i = 2 ; i < target ; i ++ ) { help = preNum + num ; preNum = num ; num = help ; } return num ; } 来源: CSDN 作者: 一只小P熊 链接: https://blog.csdn.net/solo_jm/article/details/104650468

pod》error:The dependency `` is not used in any concrete target

醉酒当歌 提交于 2020-03-04 22:08:20
一、概要 iOS 开发时,项目中会引用许多第三方库,CocoaPods( https://github.com/CocoaPods/CocoaPods )可以用来方便的统一管理这些第三方库(从一个坑出来,又进了另一个坑而已……)。 二、安装 由于网上的教程基本都大同小异,但细节之处还不是很完善,所以借机会在这里补充下: 注:要使用CocoaPods,那就要下载安装它,而下载安装CocoaPods需要Ruby环境 1、Ruby环境搭建 当前安装环境为Mac mini 10.8.5。Mac OS本身自带Ruby,但还是更新一下保险,因为我第一次安装在没有更新Ruby的情况下就失败了。 a 查看下当前ruby版本:打开终端输入 ruby -v(确实安装了,不过用这个版本接下来工作失败了,所以更新下ruby) ritekiMac-mini:PodTest lucky$ ruby -v ruby 1 .8 .7 ( 2 0 1 2- 0 2- 0 8 patchlevel 3 5 8) [universal-darwin 1 2 .0] ritekiMac-mini:PodTest lucky$ b 更新ruby 终端输入如下命令(把Ruby镜像指向taobao,避免被墙,你懂得) gem sources --remove https://rubygems.org/ gem sources

leetcode240 搜索二维矩阵 II

本秂侑毒 提交于 2020-03-04 21:54:09
题目: 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30]] 给定 target = 5,返回 true。 给定 target = 20,返回 false。 思路: 二分法。 先获取当前矩阵的最大值和最小值,即左上角的值和右下角的值 为(x1,y1)和(x2,y2)。当x1 = x2 且 y1 = y2时,说明矩阵为一个点。 求mid值,即 ( (x1+x2)/2 , (y1+y2)/2 ) 将mid值与target进行比较,来决定接下来取查询那些范围 · 如果target = mid 说明找到了目标值 · 如果target < mid,说明以mid为最小值的那块矩阵,不会有target, target在其他范围 · 如果target > mid,说明以mid为最大值的那块矩阵里,不会有target, target在其他范围里面 接下来对其他范围进行递归查询 代码: class Solution { public

查找二维数组中是否存在目标值

谁说胖子不能爱 提交于 2020-03-04 19:50:48
在一个二维数组中,该数组满足所有行从左至右递增,所有列满足从上到下递增。给定一目标值Target,若数组中存在该值,则返回true,否则返回false。 分析: 数字所有行从左到右递增,所有行从上到下递增,则每次将目标值与数组右上角的值进行比较,若相等则返回True,若小于该值,则到下一行,若大于该值,则到前一列。 代码如下: class Solution { public : bool findNumber ( vector < vector < int >> & matrix , int target ) { if ( matrix . empty ( ) ) return false ; int height = matrix . size ( ) - 1 ; int width = matrix [ 0 ] . size ( ) - 1 ; int h = 0 ; while ( h <= height && width >= 0 ) { if ( matrix [ h ] [ width ] == target ) return true ; else if ( matrix [ h ] [ width ] < target ) h ++ ; else width -- ; } return false ; } } 来源: CSDN 作者: 2020向前冲_ 链接:

RSA非对称加密方式

落花浮王杯 提交于 2020-03-04 19:34:41
记录一下所学到的东西,不一定适合各种情况,因为架构的原因所以使用了jfinal的两个包,可以参考一下。 import java . security . KeyFactory ; import java . security . KeyPair ; import java . security . KeyPairGenerator ; import java . security . PrivateKey ; import java . security . PublicKey ; import java . security . interfaces . RSAPrivateKey ; import java . security . interfaces . RSAPublicKey ; import java . security . spec . PKCS8EncodedKeySpec ; import java . security . spec . X509EncodedKeySpec ; import javax . crypto . Cipher ; import org . apache . commons . codec . binary . Base64 ; import com . jfinal . kit . StrKit ; import com .

markdown语法

核能气质少年 提交于 2020-03-04 12:33:33
超链接在新的选项卡中打开 [超链接文字](url){:target="_blank"} (有些编辑器不支持,比如博客园) <a target='_blank' href="https://blog.csdn.net/u010068160/article/details/79417989">超链接文字</a> 设置图片的大小 <img src="url" width="" > 来源: https://www.cnblogs.com/innndown/p/12408630.html

8.12并发编程(二)

隐身守侯 提交于 2020-03-04 10:01:12
一、进程间通信   队列:先进先出   堆栈:先进后出 from multiprocessing import Queue q = Queue(5) # 括号内可以传参数 表示的是这个队列的最大存储数 # 往队列中添加数据 q.put(1) q.put(2) # print(q.full()) # 判断队列是否满了 q.put(3) q.put(4) q.put(5) # print(q.full()) # q.put(6) # 当队列满了之后 再放入数据 不会报错 会原地等待 直到队列中有数据被取走(阻塞态) print(q.get()) print(q.get()) print(q.get()) print(q.empty()) # 判断队列中的数据是否取完 print(q.get()) print(q.get()) print(q.empty()) # print(q.get_nowait()) # 取值 没有值不等待直接报错 # print(q.get()) # 当队列中的数据被取完之后 再次获取 程序会阻塞 直到有人往队列中放入值 """ full get_nowait empty 都不适用于多进程的情况 """ 一、进程间通信IPC机制 1.如何实现:   子进程放数据,主进程获取数据   两个子进程相互放,取数据 from multiprocessing import