01-Spring Security框架学习--入门(二)
一、入门案例SpringSecurity自定义登录界面通过之前的一节01-SpringSecurity框架学习--入门(一)的简单演示,Springsecurity使用框架自带的登录界面,下面的案例将使用自己定义的登录页面。基本步骤添加如下页面:登录界面src/main/webapp/login.html登录自定义的登录界面 用户名: 密码:
Python中base64加密解密方法详解及版本间差异
今天来看一下base64加密函数的使用,以及Python2与Python3中的不同。一、base64Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符。三个字节有24个比特,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示。它可用来作为电子邮件的传输编码。在Base64中的可打印字符包括字母A-Z、
Android开发笔记——TextView文本设置不同颜色
1.只贴代码,不解释,留作以后用/** * @param tv Display a message that include title and content * @param title Title of message * @param content Content of message * @param titleColorID
Solaris 分辨率调整与KDE/GNome平台切换
一进系统,界面太大,移动很不方便,一来就得弄这个,百度了一下:一.分辨率调整:原网址:http://www.opensolaris.org/os/article/2006-02-27_getting_started_with_opensolaris_using_vmware/内容如下: FixingtheScreenSizeAftertheinstallcompletes,youwillrunin
MySQL ON DELETE CASCADE级联删除多张表的数据
Summary:inthistutorial,youwilllearnhowtouse MySQLONDELETECASCADE referentialactionforaforeignkeytodeletedatafromchildtableswhenyoudeletedatafromaparenttable.Intheprevioustutorial,youlearnedhowtodelete
『中级篇』docker 使用bind Mounting实战(36)
这节通过一个真实的web项目部署来实践使用docker的持久化存储,这里找了个python的flask演示创建镜像pwdll more Dockerfilesudo service docker restartpwdsudo docker build -t liming/flask-skeleton .docker image ls创建容器sudo docker run -d -p 80:5000
JAVASE之JAVA泛型篇
一概述 泛型,JDK1.5新加入的,解决数据类型的安全性问题,其主要原理是在类声明时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这样在类声明或实例化时只要指定好需要的具体的类型即可。 Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生ClassCastException异常。同时,代码更加简洁、健壮。如下图描述:二使用泛型1.声明 inte
服务幂等以及常用实现方式
现在稍具规模的网站和大型应用都不再是单机模式,而是分布式应用,基于多机的集群构建的应用,这样服务能力就可以基本实现横向扩容(scaleout),不会像单机模式下的纵向扩容(scaleup)会受到单机服务能力上限的限制。另外,随着“微服务”概念的火爆,很多应用在构建之初就已经走在了分布式的路线上了,所以就目前行业的发展来看,基于分布式的应用会越来越普遍,甚至变成常态。加上docker这些容器技术的出
mysql 存在该记录则更新,不存在则插入记录的sql
复制代码代码如下:INSERTtable(auto_id,auto_name)values(1,‘yourname')ONDUPLICATEKEYUPDATEauto_name='yourname'ONDUPLICATEKEYUPDATE的使用如果您指定了ONDUPLICATEKEYUPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARYKEY中出现重复值,则执行旧行UP
MySQL之临时表
当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后在这些表运行查询。创建临时表很容易,给正常的CREATETABLE语句加上TEMPORARY关键字:CREATETEMPORARYTABLEtmp_table(nameVARCHAR(10)NOTNULL,valueI
程序员进阶之路之面试题与笔试题集锦(一)
一、数据结构-算法的时间复杂度和空间复杂度在编程题之前,首先我们先来聊聊时间复杂度:算法复杂度分为时间复杂度和空间复杂度。其作用:时间复杂度是指执行算法所需要的计算工作量;而空间复杂度是指执行这个算法所需要的内存空间。(算法的复杂性体现在运行该算法时的计算机所需资源的多少上,计算机资源最重要的是时间和空间(即寄存器)资源,因此复杂度分为时间和空间复杂度)。 简单理解: (1)时间复杂度:执行这个算
PHP中实现页面跳转
总结3种在PHP中常用的页面跳转方法,具体如下。方法1: PHP中 header() 函数注意:1. location 与 : 之间不能有空格,否则不会跳转。2. header()前不能有任何的输出。3. header()之后的PHP代码还会被执行。方法2: Meta标签Meta标签是HTML中负责提供文档元信息的标签,在PHP程序中使用该标签,也可以实现页面跳转。 若定义http-equiv为r
PHP常用函数
纪录了PHP的一些常用函数usleep()函数延迟代码执行若干微秒。unpack()函数从二进制字符串对数据进行解包。uniqid()函数基于以微秒计的当前时间,生成一个唯一的ID。time_sleep_until()函数延迟代码执行直到指定的时间。time_nanosleep()函数延迟代码执行若干秒和纳秒。sleep()函数延迟代码执行若干秒。show_source()函数对文件进行语法高亮显
非常适合新手的一个Python爬虫项目: 打造一个英文词汇量测试脚本!
最近朋友在苦学英文,但是又不知道自己学的怎么样了,直到有一天,他找到了扇贝网,里面有个“评估你的单词量”功能非常的好,就推荐给我了! 今天我们就用python做一个小的爬虫,然后自己写一个脚本来实现这个功能吧!目标:打造一个英文词汇量测试脚本url:扇贝网工具:python3.6、pycharm、requests库思路:和网页一样,总共分三步: 先来看看网页中数据,用F12开发者工具抓包就可以为了
用最短的javascript实现地址栏载入脚本
相信大家都在地址栏里用javascript:的形式执行过脚本。这种方法简单实用,测试比较短的脚本时经常用到。并且可以添加到收藏夹里,随时点击调用。 不过脚本比较长的时候,需要复制密密麻麻一大段到地址栏里,显得很不美观,而且脚本修改起来也很不容易。因此一般先把脚本写在单独一个文件里,然后用javascript:的形式动态载入脚本到页面中。不少网页插件都是用这个方法载入。 平时,我们用最简
设计模式之组合模式(Composite)分享
场景:如果想模拟windows的开始菜单,分析一下会发现里面的菜单项:有些有子菜单,有些则没有;因此大体可以将菜单类分为二类,设计代码如下:/// /// 菜单的显示接口 /// public interface IMenu { void Show(); } /// /// 菜单基类 /// public class M
数据挖掘 ReliefF和K-means算法的应用
数据挖掘方法的提出,让人们有能力最终认识数据的真正价值,即蕴藏在数据中的信息和知识。数据挖掘(DataMiriing),指的是从大型数据库或数据仓库中提取人们感兴趣的知识,这些知识是隐含的、事先未知的潜在有用信息,数据挖掘是目前国际上,数据库和信息决策领域的最前沿研究方向之一。因此分享一下很久以前做的一个小研究成果。也算是一个简单的数据挖掘处理的例子。1.数据挖掘与聚类分析概述 数据挖掘一般由以下
Code Project精彩分享
ApplicationsCraftingaC#formsEditorFromscratch建立一个类似C#的环境,实现控件拖拉,属性PacketCaptureandAnalayzer网络封包截获Atooltochangethedefaultsourcecontrolclient在一台机器上用不同的两个源码,…什么意思?....Ijustwantedtousetwodifferentsourceco
我的架构学习实战记录:数据库阶段
对我而言,认识BLL层的作用,或者领域模型驱动的含义,最大的干扰来自数据库。我们很清楚的知道UI层的含义,也知道数据层是做什么的。但对于一个简单的(甚至是相当复杂的)系统而言,实在不知道除了对数据库进行增删改查以外,还能做些什么?发布一篇博客,不就是在数据库里插入一条记录么?点击一下推荐,不就是在数据库里做一个update么?为了避免数据库的干扰,这里,我们设定:不使用关系数据库做存储!请大家牢记
聊一聊VUE组件间的数据传递
众所周知,Vue是基于组件来构建web应用的。组件将模块和组合发挥到了极致。Vue是虽说吸取了AngularJs的MVVM的思想,但是它是单向数据流的,也就是说子组件无法直接改变父组件状态。下面总结出常用的组件消息传递的方式。父组件向子组件传递数据该方式的数据传递是遵循Vue单向数据流的规则的,因此使用起来十分的自然。若父组件的数据改变子组件的UI展现也随之变化。Parent.vueParentc