如果美不是与生俱来的,于是就有了美容医院
最近重新把老旧的台式机拿来耍,重新安装了 Ubuntu 16.04,但感觉自带的桌面效果不是很好,于是就查找网上的优化博客按套路来整合,这里记录下自己的实现过程。
先看下效果
如果美不是与生俱来的,于是就有了美容医院
最近重新把老旧的台式机拿来耍,重新安装了 Ubuntu 16.04,但感觉自带的桌面效果不是很好,于是就查找网上的优化博客按套路来整合,这里记录下自己的实现过程。
先看下效果
No Repeating, Just Coding
最近用 Spring
写后台较多,每次新建一个项目要从原来项目里拷贝很多配置文件,因此就想整合一个配置好的的基本项目架构。Spring boot
融合了 tomcat
, 使用后爱不释手,因此主要基于 Spring boot + MVC 以及一些其他必要功能进行配置使用。
项目代码地址: https://github.com/jiyiren/SpbootApi
这个仓库主要是集成 Spring-boot, Spring-mvc, Mysql, Mybatis, C3p0, Swagger2 的项目架构,为便于每次新建项目不用从零开始,直接基于此项目结构可快速地进行项目二次开发,免去了 pom 内容的复制和配置文件的编写。
你有你的规则,我有我的正则
开发中经常用到正则表达式,但总是靠搜索,有的结果过时或者不正确,导致浪费很多时间。与其将时间浪费在搜索上倒不如自己好好地掌握它。
分四大类来说明: 常用符号说明、符号数目匹配、逻辑语句符号匹配、目标匹配符号。
^
: 匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与”\n”或”\r”之后的位置匹配。$
: 匹配输入字符串结尾的位置。如果设置了 RegExp 对象的 Multiline 属性,$ 还会与”\n”或”\r”之前的位置匹配。\
: 将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,”n”匹配字符”n”。”\n”匹配换行符开源一族,与众不同
最近频繁使用服务器环境,以前也搭建过,但那些命令以及配置都不能铭记于心,因此今天借此记录下,以便于以后参考。记录主要有:LAMP ( Linux, Apache, Mysql, Php ) 以及 Git, Java, Tomcat, Ftp 等安装命令及配置过程。
作为程序员,对于服务器的部署还是有必要会的,因为这决定了自己独立的高度。目前而言,服务器操作系统性能最好的还是 Linux,不要说自己不会,没有不会的程序员,只有懒惰的程序员。
对于 Linux 系统的学习最容易上手的还是 Ubuntu 桌面版了,因为它有 Windows 版的界面,可以给新手一个过渡阶段,之后再上手到只有命令端的 Linux Server 版就容易多了。
这里给 看云 上的两个学习文档:Linux学习; The Linux Command Line 中文版
面试官:“ 先手写一个快速排序吧!”
最近整理了一些排序算法,并记录下实现过程!作为备忘笔记。主要有:快速排序、堆排序、归并排序、插入排序、冒泡排序、选择排序等。
C
作为实现语言,主要是本人在看 Linux
下的 C 编程一书,于是就顺便直接在 Linux 系统下开写了!我想 C 语言是每个人都能看得懂的语言,并且其特殊性很少,几乎完全能转化为其他各式语言 ( Java
, Php
, Python
等 ),因此这也是 C 的好处。快速排序是 C.R.A.Hoare 于 1962 年提出的一种划分交换排序方法,其核心是分治法。
实现过程:
从数列中选取一个作为 基准数 ( 不妨就选第一个,通常也都是选择第一个 );然后进行分区,将比它小的数放在它左边,比其大的则放在右边;然后对 左右区间进行相同操作 ( 也就是递归 ),直到各个区间只剩一个数。
同步学习,才能不落伍
最近好好整理下 Java
方面的知识点,在练习到线程方面时,对同步方面的知识还是模糊不清的,于是开学今天好好地看了相关博客,下面仅仅记录下以备以后参考查询!
首先我们先了解下什么是 同步、异步 与 synchronzied:
同步:在计算机领域,指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去!
异步:是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。
synchronized: 是 Java
中的关键词,其意思也是同步,其主要用在多线程中需要同步的情况下!
依赖倒置原则(Dependence Inversion Principle ,DIP):高层模块不应该依赖低层模块,应该依赖其抽象,抽象不应该依赖其细节,细节应该依赖其抽象。
理解:低层模块:具体细化的 Java 类。高层模块:是由多个低层模块组成的。抽象:指的是接口或者抽象类。依赖:存在类 A 的一个方法 S, S 传入的参数是另一个类 B 的实例,那么类 A 依赖于类 B, 也就是类 A 中引用了类 B, 则 A 依赖 B, 因为 A 类中缺少了 B 类就无法正常运行了!
先举一个反例子:一个司机开宝马车。正常思维是定义一个司机类 Driver, 并实现一个开车 void drive(BMWCar bmwcar)
的方法,该方法传入的是宝马车的一个实例!
本篇文章是最近看了设计模式方面的知识,记录下自己的阅读内容以及笔记,以备以后翻录!
单一职责原则( Single Responsibility Principle ):指有且仅有一个原因引起类的变更。
理解:尽可能的将对象划分成单一性的类别,使类的复杂性降低,实现什么职责都有清晰明确的定义。
MySQL 入坑指南
本篇文章主要记录自己在使用配置 MySQL 过程中的注意点和配置流程,因为自己常常帮别人配置 MySQL 环境,但是每次都需要重新查看下资料,我就自己记录下,为快速配置 MySQL 环境而节省时间。
个人建议选择zip包安装,这样Windows和Linux下配置过程很相似
5.7 或者最新版官网地址:http://dev.mysql.com/downloads/mysql/
5.6 版本百度云地址:http://pan.baidu.com/s/1b6hLCE
这里还要讲下有的下载的 5.7 版本 里面没有 data 目录,这个常常会导致安装失败,建议下载压缩包后解压看看里面有没有 data 目录,选择有 data 目录 的压缩包安装较好,如果没有可以从以前或者别人的目录里拷贝,上面百度云里的 5.6 版本 是有的。