读源码

来源:互联网 发布:js 从数据库导出excel 编辑:程序博客网 时间:2024/05/17 09:03

Java序列化与反序列化的理解

ArrayList源码解读:源码解读ArrayList
1.ArrayList中的一个方法方法前加上native的意义
2.Java泛型,主要理解泛型擦除以及泛型通配符和通配符上下限
3.JavaOOM及虚拟机初步了解
4.什么才是java基础
5.HTTP协议:了解HTTP
6.HTTP协议:HTTP之referer了解
7.JS自扩展类的两种方法

<script type="text/javascript">// prototype的继承性,通过函数(类)的prototype属性来继承另一个函数,B继承了A,同时,B可以使用A中的所有方法和属性        //通过函数(类)的prototype属性来继承另一个函数        function A() {            this.MethodA = function() {                document.write("MethodA");            }        }        function B() {            this.MethodB = function() {                document.write("MethodB");            }        }        B.prototype = new A(); //TestObjectB继承了TestObjectA类        var testObjectB = new B();        testObjectB.MethodA();    </script>
// 这段代码,java中使用正则并输出满足条件的匹配值 Matcher m = Pattern.compile("正则表达式").matcher("keywords");        return m.group();// 去掉末尾空格(简单、无奈的方法)        return ("a"+keywords).trim().substring(1);

jQuery中的$.cokkie()方法解析

Java类加载器学习

Java包装类型与基本类型的区别总结:
1.包装类型是对象,拥有很多方法,同时对象的调用都是通过引用的地址,基本类型不是(包装类型是引用传递,基本类型是值传递)
2.声明方式的区别:由于包装类型是对象,所以需要new关键字在堆内存中进行new分配内存空间
3.存储位置不同,包装类型是把对象放在堆中 然后通过引用来调用,基本类型是存储在内存空间的值栈中
4.封装类型的初始值为null,基本类型的的初始值视具体的类型而定,比如int类型的初始值为0,boolean类型为false;
5.集合中不允许存储基本类型的数据,比如存放数字时,要用包装类型

Mysql中查询记录总数可用该方式实现:SQL_CALC_FOUND_ROWS ,这是 mysql 的特有的关键字,与此对应使用的函数是 FOUND_ROWS(),在写分页程序时,常用的一条语句是:
SELECT COUNT(*) FROM … WHERE …
当然还有另外一种统计所有记录的语句:
SELECT SQL_CALC_FOUND_ROWS u.id,u.name… FROM … WHERE…
执行完上面的语句后,再执行SELECT FOUND_ROWS(); 即可得到所有记录数

Java中泛型方法的定义及使用,推荐看看
简单了解RPC的实现原理

Git branch操作注意:
1.分支不要乱来
2.新功能开发新建分支的拉取只拉取这一个分支,其他分支在IDEA中不用vcs-pull中选中全部拉取
3.不应该merge branch,merge branch的Revert的时候有四种优先级,注意Hard是完全回滚(完全抛弃本地有改动的代码,且不暂存至工作区)
4.一般新分支的拉取都是为了开发新功能,所以一般是从发版的branch(master)直接拉取,而不是在上个功能的分支上新建分支(比如上个功能开发使用的develop分支)
5.强制推送git push -f,,,,慎用慎用,同时IDEA拉取新分支的时候选中所有分支会自动merge,所以推送时你都不知道分支被你merge了就推送到远程仓库了(这次踩的坑),解决办法为在已经merge掉的分支下回滚该操作,同时在如果merge了之后还有操作的话,这部分操作只能手动查看历史记录然后加上去(回滚的代价)
6.感谢团队大佬的不杀之恩 。。。。。

Web开发中的Session与Cookie区别与联系:
1.Cokkie的数据放在浏览器上,Session的数据放在服务器端(Cookie的安全性存在问题)
2.Session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用Cookie
3.Session与Cookie的联系,一般Cookie中会有SessionID,Cookie带上这个ID去服务器端验证Session
4.大型网站用了分布式的话,Session的同步也是一个难题,可以Redis或者Session粘滞等等来解决,不同方案应用在不同场景上
5.浏览器上不应该放太多的Cookie的信息,Session也不应过多的存放在服务器上防止影响服务器的性能
6.注意Session与Cookie的有效时间(Cookie的有效时间自己不定义就是默认为浏览器会话期间,btw 浏览器记住密码功能就是写入永久Cookie到浏览器来实现的)

Java集合框架的选取,各自的优劣势
javap命令的使用,反汇编字节码文件可以详细了解java字节码文件的信息,常用于分析java语句性能,具体使用看网上博客
Java for、foreach循环深入理解(包括禁止在循环体中修改循环变量等)
Java变量声明在循环体内还是循环体外优劣分析

Java 8系列之Stream的基本语法详解
Java中Lambda表达式的使用,需要多花时间去学习

Mysql中的limit:

mysql> SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15  //为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:   mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.  //如果只给定一个参数,它表示返回最大的记录行数目:   mysql> SELECT * FROM table LIMIT 5; //检索前 5 个记录行  //换句话说,LIMIT n 等价于 LIMIT 0,n。  
原创粉丝点击