首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    美团二面:加密后的数据如何进行模糊查询??被问懵了。。

    点击关注公众号,Java干货及时送达 我们知道加密后的数据对模糊查询不是很友好,本篇就针对加密数据模糊查询这个问题来展开讲一讲实现的思路,希望对大家有所启发。 为了数据安全我们在开发过程中经常会对重要的数据进行加密存储,常见的有:密码、手机号、电话号码、详细地址、银行卡号、信用卡验证码等信息,这些信息对加解密的要求也不一样,比如说密码我们需要加密存储,一般使用的都是不可逆的慢hash算法,慢hash算法可以避免暴力破解(典型的用时间换安全性)。 在检索时我们既不需要解密也不需要模糊查找,直接使用密文完全匹

    01

    再来谈离散性,Java 比 SQL 又有什么优势?

    我们讨论了 SQL 对 Java 的优势,也就是集合化特性,我们现在再来看看 Java 比 SQL 有什么优势。 Java 的代码长是长了,看起来也乱,但仔细研读会发现,它描述的运算逻辑并不困难,基本上就是按部就班地实现业务目标。也就是说,Java 是书写繁琐,而不是思考困难。 但 SQL 却不一样,看懂每一个子查询的技术意义并不难,但你却很难明白它到底想干吗,是怎样为最终的业务目标服务的。也就是说,SQL 写起来要简洁一些,但思维难度却更大了。 这是为什么? 我们之前讲过一期 三行五行的 SQL 只存在于教科书和培训班 ,指出 SQL 有集合化不彻底、缺乏有序支持等问题,这些问题,以及 SQL 还有的其它问题,都有一个共同的根源,这导致虽然 SQL 的繁琐度低于 Java,但难度却更大。

    01

    【仪表】数字显示仪作为电动单元组合仪表的应用

    1 概述   作为早期XCZ、XCT、XFZ、XFT动圈式仪表和稍后的XBZ、XBT力矩电机式仪表的更细新换代产品,数字显示仪以其读数直观、显示清晰、分辨率高、无视差、抗震性好、输入阻抗大和安装角度不受限制等优点得到广泛的应用。但在八十年代初期数字显示仪刚问世时,人们对其稳定性、可靠性还存在疑问,事实也的确如此,早期的数字显示仪不稳定、精度低、故障率高,声誉不佳,人们回过头来再次使用动圈式仪表和力矩电机式仪表。进入九十年代以后,由于微电子技术的发展。新型多功能数字显示仪层出不穷,其稳定的质量、较高的精度、多种多样的辅助功能及低廉的价格已赢得用户的青睐,它不仅完全取代了动圈式仪表和力矩电机式仪表,成为一种应用最广泛的显示仪表,而且以其丰富的辅助功能替代了一部分电动单元组合仪表。由于这种应用现象的出现,在七十年代、八十年代里完全由电动单元组合仪表构成的系统已经很难看到,更多的则是由电动单元组合仪表和数字显示仪组成的混合系统。这是我们经历的又一个螺旋上升的事物发展过程:多功能基地式仪表--单元组合仪表--多功能数字显示仪。   由于这种应用现象的出现,在七十年代、八十年代里完全由电动单元组合仪表构成的系统已经很难看到,更多的则是由电动单元组合仪表和数字显示仪组成的混合系统。   电动单元组合仪表将仪表的功能分得很细,如运算功能就分成加减器、乘除器、开方器、积算器,辅助功能分得更多,如配电器、安全栅、操作器、信号限制器、信号阻尼器、信号倒相器、信号选择器、信号隔离器、阻抗转换器、电源箱等等。这种思路在当时是正确的,因为诞生电动单元组合仪表的六十年代还采用分立元件,实现一项功能要用到一堆元件,功能分细,一台仪表的结构就不太复杂,维护也方便。而到了九十年代,实现一项功能更多的是用软件,通常编写一段程序就可以完成一项功能,因此数字显示仪拥有多项辅助功能就不足为奇了。   以下结合我们在工程设计中的实践,介绍数字显示仪作为电动单元组合仪表的具体应用。

    01

    水果Fruit(母函数) - HDU 2152

    转眼到了收获的季节,由于有TT的专业指导,Lele获得了大丰收。特别是水果,Lele一共种了N种水果,有苹果,梨子,香蕉,西瓜……不但味道好吃,样子更是好看。 于是,很多人们慕名而来,找Lele买水果。 甚至连大名鼎鼎的HDU ACM总教头 lcy 也来了。lcy抛出一打百元大钞,"我要买由M个水果组成的水果拼盘,不过我有个小小的要求,对于每种水果,个数上我有限制,既不能少于某个特定值,也不能大于某个特定值。而且我不要两份一样的拼盘。你随意搭配,你能组出多少种不同的方案,我就买多少份!" 现在就请你帮帮Lele,帮他算一算到底能够卖出多少份水果拼盘给lcy了。 注意,水果是以个为基本单位,不能够再分。对于两种方案,如果各种水果的数目都相同,则认为这两种方案是相同的。 最终Lele拿了这笔钱,又可以继续他的学业了~

    02

    Android开发笔记(十八)书籍翻页动画PageAnimation

    前面几节的动画都算简单,本文就介绍一个复杂点的动画——书籍翻页动画。Android有自带的翻页动画ViewPager,不过ViewPager只实现了平移效果。即便使用补间组合动画或者属性动画,也只是把平移、深浅、缩放、旋转这四种动画组合起来,却无法实现书籍翻页那种页面弯折以及页缘阴影等效果。 书籍翻页动画除了要精通Android编码,还得精通数学算法。这难题博主愚笨弄不来,还是多亏了网络大牛实现了翻页代码,那我们还是继续发扬拿来主义好了。算法核心是PageWidget.java,对于码农来说,里面贝塞尔曲线等等术语不必深入研究,只需了解Android相关类的用法。除了之前已经提到的图形类,该源码重点使用了如下类,我们可以了解一下:Path、Matrix、ColorMatrix、GradientDrawable。 GradientDrawable其实就是shape图形的代码表示,有关shape的xml定义参见《Android开发笔记(八)神奇的shape》。下面是GradientDrawable的常用方法说明: setGradientType : 设置渐变类型。LINEAR_GRADIENT表示线性渐变,RADIAL_GRADIENT表示放射渐变,SWEEP_GRADIENT表示滚动渐变。 setGradientCenter : 设置渐变的圆心坐标。LINEAR_GRADIENT时不可用。 setGradientRadius : 设置渐变的半径。RADIAL_GRADIENT时才需设置。 setOrientation : 设置渐变的方向。TOP_BOTTOM表示从上到下,TR_BL表示从右上到左下,RIGHT_LEFT表示从右到左,BR_TL表示从右下到左上,BOTTOM_TOP表示从下到上,BL_TR表示从左下到右上,LEFT_RIGHT表示从左到右,TL_BR表示从左上到右下。 setColor : 设置颜色。 setAlpha : 设置灰度。 setCornerRadius : 设置圆角的半径。 setStroke : 设置描边。 setSize : 设置大小。 setShape : 设置图形的形状。RECTANGLE表示矩形(默认),OVAL表示椭圆,LINE表示线条,RING表示圆环。 调用的代码如下

    04
    领券