自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode 9. 回文数

https://leetcode-cn.com/problems/palindrome-number/class Solution { public boolean isPalindrome(int x) { if (x < 0) { return false; } if (x == 0) { return true; } int n = (int) Math.log10(x

2020-07-06 23:56:31 198

原创 leetcode 8. 字符串转换整数 (atoi)

https://leetcode-cn.com/problems/string-to-integer-atoi/class Solution { public int myAtoi(String str) { str = str.trim(); char[] cArr = str.toCharArray(); if(cArr.length<1){ return 0; } boolean p

2020-07-06 23:38:19 211

原创 leetcode 7. 整数反转

https://leetcode-cn.com/problems/reverse-integer/class Solution { public int reverse(int xx) { if (xx == 0) { return xx; } boolean minus = false; long x = xx; if (xx < 0) { mi

2020-07-06 23:07:36 354

原创 leetcode6. Z 字形变换

https://leetcode-cn.com/problems/zigzag-conversion/心得:耗时2小时多主要是找到每一个计算单元的起点,每个计算单元可以看成是一竖行+后面的斜坡。竖行坐标 基点+行数斜坡坐标 下一行基点-行数由于第一行和最后一行比较特殊第一行:下一行基点-行数 得到的是下一个单元要计算的点,因为行数是0最后一行:下一行基点-行数 得到的是竖行的值,不是斜坡的值。所以要第二个加字母的操作要排掉第一行和最后一行class Solution {

2020-07-05 18:37:43 172

原创 leetcode 5最长回文子串

https://leetcode-cn.com/problems/longest-palindromic-substring/class Solution { public String longestPalindrome(String s) { if (s.length() < 1) { return s; } int[][] map = new int[s.length()][s.length()];

2020-07-04 17:18:28 99

原创 leetcode 3

https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/class Solution { public int lengthOfLongestSubstring(String s) { Map<Character,Integer> crrent = new HashMap(s.length()); int max = 0; int cLe

2020-07-03 10:39:03 116

原创 Log4j2源码阅读

结构LogManagerprivate:LoggerContextFactory factory是Log4jContextFactoryLoggerContextprivate:XmlConfiguration configuration:存储xml配置文件LoggerRegistry loggerRegistry:存储loggergetLogger的处理流程LogManager...

2020-04-06 23:06:04 223

原创 spring ioc 源码阅读

xml的读入abstractXmlApplicationContext.java的loadBeanDefinitions1bean的解析-&gt;beandifinition真正负责读取xml文件的类是XmlBeanDefinitionReaderdoLoadBeanDefinitions读入一个dom对象 然后进行解析解析xml文件完成后会得到一个GenericBeanDefini...

2018-12-10 10:21:24 137

原创 mybatis源码阅读记录

文章目录书名书名深入浅出MyBatis 技术原理与实战杨开振著这里讲了基本api和部分mybaits的源码导读非常推荐#大体结构SqlSessionFactory (defaultSqlSessionFactory)构建SqlSessionconfiguration xml文件的内存表达MappedStatement:保存mapper里面的一个节点(select,insert,d...

2018-11-10 16:18:37 162

转载 让一个端口同时做两件事

让一个端口同时做两件事:http/https和ssh相信很多人都在YY:能不能让80端口分析连接协议,如果是http协议就让服务器交给http服务程序(如Apache、Nginx等)处理,如果是ssh协议就交给ssh服务程序(如OpenSSH Server)处理呢?答案显然是有的。首先,配置http服务程序监听8080端口或者让https服务监听8443端口,配置ssh服务程序监听22端口。具体不...

2018-07-13 17:47:30 660

原创 机器频繁FULLGC解决

1 起因小组中遇到了虚拟机fullgc曾多的问题.监控显示如下:监控显示.每分钟进行5次fullgc. 每次大约半秒..不过在我看来这么多fullgc并不是大问题..但是,组里面的大大说正常情况下是没有fullgc的.好吧..可能因为这个系统是重要的服务,500ms很珍贵吧..2 机器配置服务部署在两种机器上面,出问题的是内存4GB机器...6GB机器没有出问题.虚拟机配置..调关键的说就是4GB...

2018-04-19 23:40:38 2392

原创 interface代理在mybatis中的应用

0前言mybatis有一个很好的特性.在写mapper的时候,我们只需要在代码中写出mapper的interface,具体的实现由mybatis根据xml帮助我们实现.今天我们可以详细了解这其中的奥秘.总的来说,使用的基本原理就是java的动态代理.当Mapper 对象其实是一个java代理.代理的处理类型为MapperProxy<T> 其中T就是我们的接口类型.怎么样有模板函数出现了当一个查询出

2018-03-04 23:24:53 347

原创 后端接口权限验证

接口验证有两种,一种是基于人的验证,比如需要调用者提供人员信息.第二种则是基于接口本身.接口本身的验证是因为很多调用者并不是一个人,可能仅仅是一个定时启动的脚本,无法采用用户名密码的形式来进行验证.接口本身的验证基本方法就是在调用的时候在请求后方添加一个密钥,作为验证身份的令牌.# 基于简单密码双方约定密码,密码正确验证通过# 参数签名方式步骤通常如下:

2018-01-08 16:33:48 14909

转载 RESTAPI设计规则

再oschina上面看到一篇翻译文章,介绍了Api的一些设计规则,REST设计规则受益匪浅,进行转载 原文链接 Why: Because we try to enforce development of sanely constructed RESTful interfaces, which team members and clients can consume simply and c

2017-07-15 11:09:35 716

转载 响应式图片

定义: 根据不同的屏幕大小换网页上展示的图片原理:1第一个原理就是说根据cookie。首次载入,先给一个默认的图片,然后确定屏幕的大小加载合适图片然后把默认图片替换掉。 再次载入直接根据cookie判断就好了2根据html属性改变图片大小<img srcset="elva-fairy-320w.jpg 320w, elva-fairy-480w.jpg 480w

2017-03-05 14:56:04 360

原创 html任务2 css

1css的对于层叠来说,共有三种主要的样式来源:浏览器对HTML定义的默认样式。 用户定义的样式。 开发者定义的样式,可以有三种形式: 定义在外部文件(外链样式):本教程中案例主要是通过这种形式定义样式。 在页面的头部定义(内联样式):通过这种形式定义的样式只在本页面内生效。 定义在特定的元素身上(行内样式):这种形式多用于测试,可维护性较差。2css的选择id选择#类选择 .属性选

2017-02-26 17:41:28 312

原创 html基础任务1

a元素在新窗口打开需要知道target属性为_blanktableborder =1 给表格加一个边框 跨列的添加colspan=2 跨行的添加rowspan=2

2017-02-25 21:08:15 274

原创 linux 内存

文件内存https://www.ibm.com/developerworks/cn/linux/l-cache/定义文件 Cache 管理指的就是对这些由操作系统分配,并用来存储文件数据的内存的管理cache的衡量性Cache 管理的优劣通过两个指标衡量:一是 Cache 命中率,Cache 命中时数据可以直接从内存中获取,不再需要访问低速外设,因而可以显著提高性能;二是有效 Cache 的比率,有

2017-02-25 20:36:19 252

原创 python __getattribute__ 和 __getattr__的区别

python 再访问属性的方法上定义了__getattr__() 和 __getattribute__() 2种方法,其区别非常细微,但非常重要。如果某个类定义了 __getattribute__() 方法,,在 每次引用属性或方法名称时 Python 都调用它(特殊方法名称除外,因为那样将会导致讨厌的无限循环)。如果某个类定义了 __getattr__() 方法,找不到的时候再去访问,P

2017-02-14 23:06:14 493

原创 <eloquentjavascript>Program Structure

Expressions and statements A fragment of code that produces a value is called an expression. expression build the statement

2017-02-07 08:20:21 311

原创 <eloquentjavascript>Values, Types, and Operators

NumbersJavaScript uses a fixed number of bits, namely 64 of them, to store a single number value.comparewhen null or undefined occurs on either side of the operator, it produces true only if both side

2017-02-07 08:09:10 194

原创 compose.js(未完成)

compose.js主要用于实现集成的一个javascript库基础用法新建一个对象 Widget = Compose({ render: function(node){ node.innerHTML = "hi"; } }); var widget = new Widget(); widget.render(

2017-02-07 07:56:36 619

转载 cpu后缀讲解

Intel桌面式CPUX后缀 X代表Extreme,中文意思是至尊级,代表同一时代性能最强的CPU。如Core i7-5960X、Core i7-4960X。X代表在同一代中只有一款CPU黄袍加身,地位至高无上。加上没有竞争对手可以望其项背,从露面都退出市场,期待的弑君者没有出现。Sandy Bridge时代到现在,竞争的天平一直向Intel倾斜。K后缀自从Sandy Bridge时代Intel限制

2017-01-18 15:37:45 1298

原创 peewee

models and fields不指定主键自动产生一个主键meta信息会自动继承到所有子类Once the class is defined, you should not access ModelClass.Meta, but instead use The ModelOptions class (meta class) implements several methods which may

2017-01-12 11:20:29 2326

原创 《python 入门经典》读书笔记

第一章 开始模块文件1python 在import 或者from import的时候回执行一次文件。但是只执行一次。不同的文件如果同时引用同一个文件,也只会执行一次。并且获得该文件的顶层的名字 可以使用reload函数在执行一次文件dirdir不带任何参数的话返回的是当前交互环境空间内所有定义的名字自己理解 就是所有可用的名字,因为我from import 里面的名字也在环境变量python 模

2017-01-08 21:33:11 418

转载 promise 的使用

http://www.cnblogs.com/lvdabao/p/es6-promise-1.html去年6月份, ES2015正式发布(也就是ES6,ES6是它的乳名),其中Promise被列为正式规范。作为ES6中最重要的特性之一,我们有必要掌握并理解透彻。本文将由浅到深,讲解Promise的基本概念与使用方法。 ES6 Promise 先拉出来遛遛

2016-12-20 19:18:42 341

原创 jquery 学习笔记4 ajax

loadoad() 方法从服务器加载数据,并把返回的数据放入被选元素中。 语法: $(selector).load(URL,data,callback);可选的 callback 参数规定当 load() 方法完成后所要允许的回调函数。回调函数可以设置不同的参数: responseTxt - 包含调用成功时的结果内容 statusTXT - 包含调用的状态 xhr - 包含 XMLHttp

2016-12-16 13:57:03 285

原创 jquery 学习笔记3 遍历

祖先parent()返回被选元素的直接父元素。 parents()方法返回被选元素的所有祖先元素,它一路向上直到文档的根元素 ()parentsUntil() 方法返回介于两个给定元素之间的所有祖先元素。$(document).ready(function(){ $("span").parentsUntil("div");})后代children() 方法返回被选元素的所有直接子元素返回类名

2016-12-16 13:37:18 223

原创 jquery 学习笔记2 HTML

jQuery HTMLtext()、html() 以及 val()三个简单实用的用于 DOM 操作的 jQuery 方法: text() - 设置或返回所选元素的文本内容 html() - 设置或返回所选元素的内容(包括 HTML 标记) val() - 设置或返回表单字段的值attr()获取元素属性的值 设置元素属性的值 还可以用一个函数来进行更改 (“button”).click(f

2016-12-16 13:07:50 269

原创 python 变量作用域

一般规则1定义的函数内部的变量名如果是第一次出现, 且在=符号前,那么就可以认为是被定义为局部变量 2.函数内部的变量名如果是第一次出现,且出现在=符号后面,且在之前已被定义为全局变量 3.函数中使用某个变量时,如果该变量名既有全局变量也有局部变量,则默认使用局部变量 4.在函数中将某个变量定义为全局变量时需要使用关键字global坑1 这样会报错。因为在函数内部已经重新定义var。不过在之

2016-12-15 18:27:26 235

原创 jquery 学习笔记0 这个笔记是在工作中看到的。比较杂

datadata方法是往元素里面增加一个属性。one定义和用法 one() 方法为被选元素附加一个或多个事件处理程序,并规定当事件发生时运行的函数。 当使用 one() 方法时,每个元素只能运行一次事件处理器函数。语法 $(selector).one(event,data,function) 参数 描述 event 必需。规定添加到元素的一个或多个事件。 由空格分隔多个事件。必

2016-12-15 17:58:53 279

原创 jquery 学习笔记1

操作元素选择器$(this).hide()演示 jQuery hide() 函数,隐藏当前的 HTML 元素。$("#test").hide()演示 jQuery hide() 函数,隐藏 id="test" 的元素。$("p").hide()演示 jQuery hide() 函数,隐藏所有 <p> 元素。$(".test").hide()演示 jQuery hide() 函数,隐

2016-12-14 01:16:03 287

原创 python 格式化字符串

string.Formatter 这个类用于格式化字符串。 这个类的format是一个格式化的重要方法 这个类也提供了很多其他的函数用于帮助格式化字符串。如果不需要定制的话。应该是可以忽略掉得。比如parse get_field get_value check_unused_args 等等格式化的一些例子 按照位置>>> '{}, {}, {}'.format('a', 'b',

2016-12-12 16:20:18 285

原创 flask快速入门

第一个flask程序from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world(): return 'Hello World!'if __name__ == '__main__': app.debug = True #调试模式 app.run()url变量在url中的路径可以当做变量

2016-12-11 12:09:35 539

原创 git

版本变更查看版本提交 git log --pretty=oneline版本变更git reset --hard HEAD^版本向前git reflog修改修改回退 1回退工作区文件git checkout -- filenamecheckout一个文件。 checkout到缓存区的状态。如果没有缓存区那么回退到版本库状态2回退缓存区文件git reset HEAD file可以把暂存区的修改撤销

2016-12-10 00:10:59 248

原创 python 学习笔记7进程和线程

多进程os 系统模块提供了进程的很多东西 os.getpid() 获取进程id pid = os.fork() fork创建一个新的进程 父进程返回子进程id 子进程返回0multiprocessingmultiprocessing是一个跨系统的模块,因为windows没有提供forkfrom multiprocessing import Process import os# 子进程要执行

2016-12-08 20:23:41 340

原创 python学习笔记6IO

文件读写f = open('/Users/michael/test.txt', 'r')f.read()f.close()读写文件可能产生错误IOErrortry: f = open('/path/to/file', 'r') print(f.read())finally: if f: f.close()但是每次都这么写实在太繁琐,所以,Python引入

2016-12-08 15:30:19 372

原创 python学习笔记5 面向对象编程

面向对象编程class Student(object): passclass后面紧接着是类名,即Student,类名通常是大写开头的单词,紧接着是(object),表示该类是从哪个类继承下来的,继承的概念我们后面再讲,通常,如果没有合适的继承类,就使用object类,这是所有类最终都会继承的类。定义好了Student类,就可以根据Student类创建出Student的实例,创建实例是通过类名

2016-12-06 10:20:38 375

原创 python学习笔记4

模块 一个abc.py的文件就是一个名字叫abc的模块,一个xyz.py的文件就是一个名字叫xyz的模块。 假设我们的abc和xyz这两个模块名字与其他模块冲突了,于是我们可以通过包来组织模块,避免冲突。方法是选择一个顶层包名,比如mycompany,按照如下目录存放: 每一个包目录下面都会有一个init.py的文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,init.

2016-12-04 18:12:44 380

原创 如何学习新知识

最近学习知识的方法感觉遇到了很大的问题。今天看了一下罗辑思维然后记录一下如何学习。再加上自己的一些理解吧。1如果想到有什么事情需要去做。那就要马上去做,不能脱。2知识有输入有输出3如何是一个好的学习环境,那就是不断对你的学习给与反馈。这样你才能真正的掌握知识。4对于学习来说就是你要和知识不断的去互动。如果只是被动的接受知识,那么不是学习,学到的东西也不扎实5知识要有记录,要和自

2016-12-03 15:44:43 671

空空如也

空空如也

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

TA关注的人

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