1. SpringBoot之定时任务

    任务需求 最近在用SpringBoot写一个关于定时项目的时候遇到一个问题,就是客户端访问服务器的结果实际上是每个一段时间发生一次变化,并且在服务器在每天的某个固定的时间点都要触发一次事件。 我们当然可以在遇到每一个请求时都重新计算结果,但是为了提高效率,我们显然可以让服务器每隔一段时间计算一次结果,并且把这个结果进行保存,对在下一个时间段内的每个请求都直接返回计算后的结果。这样就能较好的提高了服务器的性能。 那么问题就在于如何处理定时任务。其实SpringBoot早就提供了非常方便的接口,但…

    Java, SpringBoot, Cron阅读全文

  2. SpringBoot之拦截器用法

    拦截器 我们知道做Web开发最知名的一个编程思路叫AOP--面向切面的编程。第一次接触到这个名词以为是跟面向对象编程一样是套很复杂的流程。然而实际接触下来才发现,这其实是一个非常简单的思想,能够解决非常现实的问题,比如登录问题。 我们知道很多网站在访问时是需要登录的,也就是说服务器在处理每一个访问之前,必须都要做一件事情,就是登录用户的身份确认。我们很容易想到一个解决方法,就是定义一个类,专门处理这个登录问题。但是这也是比较麻烦的事情,在每一个请求处理前都要写一些一模一样的代码来调用这个类,…

    Java, SpringBoot阅读全文

  3. SpringBoot之简单部署

    命令行测试运行 有些时候我们需要将项目部署在服务器上进行简单测试,但是直接部署到Tomcat里又十分慢,这时候我们可以用maven工具的一个命令来模拟本地启动项目: ./mvnw spring-boot:run 这里用到了一个叫spring-boot-starter-parent的包,只要pom.xml里加了这个就能执行。 这样我们就可以在服务器的8080端口访问到这个临时的项目。 简单部署 通常情况下,我们会把SpringBoot生成的项目打包成war放在Tomcat服务器中运行…

    Java, SpringBoot阅读全文

  4. SpringBoot之Controller用法

    Controller Controller是SpringBoot里最基本的组件,他的作用是把用户提交来的请求通过对URL的匹配,分配给不同的接收器,再进行处理,然后向用户返回结果。他的重点就在于如何从HTTP请求中获得信息,提取参数,并分发给不同的处理服务。 基本组成 一个最经典的Controller应该大概长这样: package com.example.demo.controller; import org.springframework.stereotype.Controlle…

    Java, SpringBoot阅读全文

  5. SpringBoot环境熟悉

    前言 就个人而言,我曾经比较畏惧JAVA,我们都知道JAVA这个东西是相当成熟了,各种框架特别复杂,名词也特别的多。我还记得我第一次想学struts的时候折腾了半天硬是没有找到头绪,面对各种眼花缭乱的包、眼花缭乱的配置文件、眼花缭乱的框架版本、眼花缭乱的报错信息,还有眼花缭乱的各种名词,硬是停留在了servlet的层面上,完全失去了在短时间内学下去的动力。因此很久都没有碰过JAVA。不过一个机缘巧合,我突然发现其实这些东西都是很有套路的,每一个东西其实都是为了解决某一个小问题,只是刚入门的时候…

    Java, SpringBoot阅读全文

  6. C++11学习笔记3

    右值引用 分类 在古老的标准里,C++中的变量分为左值(lvalue)与右值(rvalue)这两种,左值就是能够用&获得地址的值,可以对他进行修改,右值就是不能用&获得地址的值,通常只是临时变量,不能进行修改。而在C++11中,变量不再仅仅分为左值与右值了,他引入了另一种值叫将亡值(expire value,xvalue)。从此,变量类型分为了三种: * lvalue  :left value 就是传统意义上的左值 * xvalue  :expire value 就是将…

    C/C++阅读全文

  7. C++11学习笔记2

    std::function std::bind 我们知道在C里面有函数指针这么回事,我们用函数指针的目的就是将仿函数作为参数,传递给另外一个函数,并供他调用。但是显然,函数指针那种写法还是相当恶心的,比如: #include<iostream> int callback(int x){ std::cout<<x<<std::endl; } int func(int(*f)(int)){ f(3); } int main(){ fun…

    C/C++阅读全文

  8. C++11学习笔记1

    前言 很久以前就知道C++11对我们课上讲的C++有很多改进的地方,当时也没有细学,最近一个偶然的机会陡然发现原来身边的同学好多都对C++11都颇有心得,推崇备至,回头想想在C++14,甚至C++17都不新鲜的现在,连C++11都不会的话显然有点说不过去了。。。于是呢我就打算利用最近闲着的时间,在补《人民的名义》的间隙顺便学学C++11应该也是极好的。 类型推导 auto关键字 目的 auto关键字不是C++11里诞生的关键字,在这之前,auto代表的意思是“具有全局存储期的局部…

    C/C++阅读全文

  9. Angular2学习笔记

    前言 阴差阳错,当初在选择写网站的时候选择了使用Angular2+RESTfull,现在想起来,这个选择可能有点轻率了。虽然这套框架我个人觉得可能的确比较适合做移动端Web的开发,但是由于网站开发的经验明显不足,加上这套技术还不是相当的成熟,在学习的过程中走了很多的弯路。而且,功利一点的讲,对于找工作的帮助可能并不是很大,很多Web相关的职务招的都是Java方向的,而我直接跳过这种传统框架直接接触新知识难免会发现基础不牢的情况。不过还好,经过这一段时间的倒腾,好歹把Angular2的东西稍微消…

    Angular, Nginx阅读全文

  10. 云计算比赛总结

    2017年4月23日,今天为期近半年的云计算比赛终于落下了帷幕。尘埃落定,分完奖金,分完奖品,好像一切没有发生过一样,生活也慢慢步入了正轨。但是我总觉得,一切事情总得留下写什么值得记忆和回味的东西。在一切渐渐过去之后,比赛本身变得其实不那么重要,反而是那些看起来与比赛无关的细节更值得铭记。从前我一直觉得,有些事情体验了就好,但是我渐渐发现,体验过的东西几乎都特别的容易忘记,没有思考与总结的体验只能算的上是走马观花,我特别羡慕像杨振宁那样的学者,虽然身体渐渐衰老,但是他总能非常清楚的记得在某年某月…

    Life阅读全文