【sso单点登录系统】

1、系统架构 面向接口开发 2、注册接口 2.1.1 检查shu数据是否可用 需求: 请求方法 GET URL http://sso.taotao.com/user/check/{param}/{type} 参数说明 格式如:zhangsan/ 1,其中zhangsan是校验的数据,type为类型,可选参数1、2、3分别代表username、phone、email 可选参数callback:如果有此参数表示此方法为jsonp请求,需要支持jsonp。 示例 http://sso.taotao.
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

【CookieUtils】

package com.taotao.common.utils; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.net.URLEncoder; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSer
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

【JsonP】

1、首页展示用户名 当用户登录成功后,在cookie中有token信息。 从cookie中取token根据token查询用户信息。 把用户名展示到首页。 方案一:在Controller中取cookie中的token数据,调用sso服务查询用户信息。 方案二:当页面加载完成后使用js取token的数据,使用ajax请求查询用户信息。 问题:服务接口在sso系统中。Sso.taotao.com(localhost:8088),在首页显示用户名称,首页的域名是www.taotao.com(local
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

【Java正来-Java虚拟机专题】走进Java

引言: 好长时间没有更新博客了,小伙伴们一定要好好加油啊,虽然有种种问题耽误自己的进度,但一定不要被影响,只要现在坚持住,把握好自己能掌握的时间,等回头看的时候,一定会感谢自己。 加油,至不平凡的自己。 下面是整理Java前期发展史。 标题
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

【Java正来-Java虚拟机专题】Java内存区域与内存溢出异常

主要整理内容为:虚拟机中内存是如何划分的,以及哪部分区域、什么样的代码和操作可能导致内存异常,并了解各个区域出现内存异常的常见原因 Java内存模型 如需下载,请搜索标题:Java正来-Java内存区域与内存溢出异常。吐血整理,思维导图
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

【Java正来-Java虚拟机专题】-Java垃圾收集器与内存分配策略

主要整理内容为:分析了垃圾收集的算法和JDK1.7中提供的7款垃圾收集器的特点以及运作原理。以及内存分配策略 Java垃圾收集器 高清PDF:下载请搜索标题:【Java正来-Java虚拟机专题】-Java垃圾收集器与内存分配策略
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

【数据结构】--【排序】--直接插入排序

* 直接插入排序:在排序过程中,向有序子表逐个的插入元素操作进行了n-1趟,每趟操作都分为比较关键字和移动元素,而比较次数和移动次数取决于带排序表的初始状态。在最好情况下,时间复杂度O(n),最坏情况下O(n*n) * 稳定性:每次插入元素都是从后向前先比较在移动,稳定算法 * 适用性:直接插入排序算法适用于顺序存储和链式存储的线性表,当为链式存储时,可以从后往前查找指定元素的位置;(大部分排序算法都仅适用于顺序存储的线性表) public class SimpleInsertSort {
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

【数据结构】-递归求出最大值

使用递归求最大值 * 递归排序:能用递归解决的问题都可以使用非递归来完成。 * 时间复杂度:T(N) = a*T(N/b) + O(N^d) * 1) log(b,a) > d --> 复杂度为O(N^log(b,a)) * 2) log(b,a) = d --> 复杂度为O(N^d * logN) * 3) log(b,a) < d --> 复杂度为O(N^d) * 在本题中,将N样本量分成两部分,执行两次因此a=2;b=2;除此之外还有一个比较操作,常数等级O(N^0)=O(1) 所以最终
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

程序员养成记(第一天)

(1)第一篇:自我介绍 我是西安科技大学测绘科学与技术学院的一名学生,虽说学校开了C语言课,但那只是个皮毛,对于要找工作的我来说是远远不够的,因为我的编程技术不成熟,而目前正是IT行业急需人才的时代,作为一位学生应该能在国家需要的时候站出来,因此,我要凭借自己的能力深入学习编程语言,这就是所谓的识时务者为俊杰。 (2)第二篇:目标及学习方法 学东西就要学的熟能生巧,不要半途而废。因此,对于我而言,我的目标就是从基础学起熟练掌握C语言为今后学习其他语言打好基础,能运用编程解决大部分实际问题,并在
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

死磕JVM(二)内存模型

目录 1 Java内存模型概述 1.1 主内存和工作内存 1.2 主内存和工作内存的交互操作 死磕JVM(一)内存区域 https://blog.csdn.net/u012133048/article/details/85344025 死磕JVM(二)内存模型 https://blog.csdn.net/u012133048/article/details/87886352 死磕JVM(三)内存溢出 https://blog.csdn.net/u012133048/article/detail
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

死磕JVM(三)内存溢出

目录 内存泄漏 内存溢出 1 java堆溢出 1.1 溢出场景 1.2 解决方法 2 虚拟机栈和本地方法栈溢出 2.1 溢出场景 2.2 解决方法: 3 方法区和运行常量池溢出 3.1 溢出场景 3.2 解决方法 死磕JVM(一)内存区域 https://blog.csdn.net/u012133048/article/details/85344025 死磕JVM(二)内存模型 https://blog.csdn.net/u012133048/article/details/87886352
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

死磕JVM(五)对象的创建

死磕JVM(五)对象的创建 对象的创建 1 检查引用 2 分配内存空间 2.1空间分配方案 2.2 解决在创建对象时内存空间冲突的问题 3 内存分配完成后需要初始化值 4 虚拟机需要对对象内存进行设置 4.1 对象头 4.2 实例数据 4.3 对齐填充 5 执行赋值 6 访问对象 死磕JVM(一)内存区域 https://blog.csdn.net/u012133048/article/details/85344025 死磕JVM(二)内存模型 https://blog.csdn.net/u0
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

死磕JVM(八)中场休息-总结

前言 死磕JVM系列的写了七篇了,基本是按照《深入理解Java虚拟机》的章节顺序写的,但是很明显我跳过几章,比如Class文件结构、虚拟机的字节码执行引擎、编译器和运行期的优化、还有JVM调优的实战,这些内容磕起来真是非常耗时间和耐心,最近牙口又不好,暂时磕不动了,等我换副镶金的假牙,慢慢啃。在买得起金牙之前,决定先换个清淡口味的东西写写,比如spring(目测也是硬茬儿,啃下来肯定得一嘴血),最近的生活让我想起了学生时代,每天都有好多门课在轮流等着强奸我,可惜的是。。没有美丽的女老师。 死磕
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

2019年1月25日训练日志

今天看了快速排序 效率真的很高,但是总感觉不稳,虽然比冒泡强,但是保不齐某些情况下时间复杂度和冒泡一样。 让我一下子生撸这么多代码我是做不到的,还得多看多敲,培养强大的算法思维才行啊。 #include<iostream> #include <cstdio> #include <cmath>> using namespace std; #define N 6 int partition(int arr[], int low, int high){ int key; key =
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

2019年1月27、28、29日训练总结

这两天并没怎么做题,一直在补知识。有点担心能否在春节前做完51nod上的题目,因为没几天了,还是得提高效率啊。下面是我所学到的和了解的东西,有些并不能完全掌握,还需要大量的做题目开拓思维,使知识运用更加熟练。 1、递归函数 2、静态链表、动态链表 3、桶排序(初步),时间复杂度很低,和bool结合有奇效。 4、快速排序 心得:1、冒泡排序和结构体结合起来可以标记位置,就像一个同学对一个学号那样。学号排序改变位置的同时,同学的姓名也会跟着学号位置的变动而变动。 2、思考是最关键的,即使记住了代码
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

寒假训练记录

初步桶排序从小到大代码: #include #include #include using namespace std; int main() { int a[11],i,j,t; for(i=0;i<=10;i++) { a[i]=0; } for(i=1;i<=5;i++) { cin>>t; a[t]++; } for(i=0;i<=10;i++) for(j=1;j<=a[i];j++) cout<<i; getchar();getchar(); return 0; }
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

寒假训练日志

今天没训练。看了些网课,包括cs50、MIT算法导论这样的国外公开课,讲得很好,但是我也只理解点皮毛,无目的的看课就像匆匆的看客一般,意义不大。cs50讲的范围很广,但是不精,就好像一般性质的普及,对于真的写代码没啥用(当然我水平不够)。麻省理工的algorithms课很棒,坚持听就一定会有收获,当然如果只是听完全没用,只是纸上谈兵。比如分治法,MIT的课堂只是列出概念,举个生动的例子,但是具体到代码上操作就没了。这和国内大学的上课没什么两样。我想,对于计算机,上课只是确认学到的东西,而不是学
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

ACM STL初步总结

在假期里学习了一部分STL(标准模板库)的知识,会用,但是用的不熟练,看到某些题目想不起来怎么用,学习STL不是只记住语法就完了,思想也是重点。 下面列一下我近期学的几种STL容器。 栈(stack)是先进后出的数据结构,只有一个出口(死胡同),只能对顶端元素进行操作。 头文件:#include stack 定义方式:stack<data_type> s; s.caozuo 操作 empty():返回布尔型,判断栈内是否为空 size():返回栈内元素个数 top():返回顶端元素值 pop(
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

ACM STL学习

sort的排序在algorithm头文件里,默认是从小到大排序,若要实现从大到小排序,可以写个函数实现,简单来说,return x<y; 生成排列: 头文件: #include <algorithm bool next_permutation(begin, end); 改变区间内元素的顺序,产生下一个排列。 bool prev_permutation(begin, end); 产生前一个排列。 end为最后一个元素的下一个位置 upper_bound(begin, end, value); 返
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0

ACM 学习总结

优先队列 一个拥有权值观念的queue,自动依照元素的权值排列,权值最高排在前面。缺省情况下,priority_queue是利用一个max_heap完成的 优先队列的排序不是线性的排序,而是根据规定的优先级进行排序。内部排序是二叉树排序。 头文件: #include 定义:priority_queue <data_type> priority_queue_name; 如:priority_queue q;//默认是大顶堆 操作: q.push(elem) 将元素elem置入优先队列 q.top
分类: 其他 发布时间: 03-16 23:01 阅读次数: 0