戈吉

thinkings


  • 首页

  • 归档

  • 分类

  • 标签

  • 友链

  • 关于

  • 搜索

Ubuntu 界面美化

发表于 2017-08-06 | 分类于 Ubuntu | 评论数:
本文字数: 21k | 阅读时长 ≈ 19 分钟

如果美不是与生俱来的,于是就有了美容医院

最近重新把老旧的台式机拿来耍,重新安装了 Ubuntu 16.04,但感觉自带的桌面效果不是很好,于是就查找网上的优化博客按套路来整合,这里记录下自己的实现过程。

先看下效果

desktop

阅读全文 »

Spring项目整合

发表于 2017-07-24 | 分类于 Spring | 评论数:
本文字数: 17k | 阅读时长 ≈ 16 分钟

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 内容的复制和配置文件的编写。

整体项目结构

项目结构

阅读全文 »

正则表达式

发表于 2017-05-08 | 分类于 Regex | 评论数:
本文字数: 21k | 阅读时长 ≈ 19 分钟

你有你的规则,我有我的正则

开发中经常用到正则表达式,但总是靠搜索,有的结果过时或者不正确,导致浪费很多时间。与其将时间浪费在搜索上倒不如自己好好地掌握它。

正则规则


分四大类来说明: 常用符号说明、符号数目匹配、逻辑语句符号匹配、目标匹配符号。

一、常用符号说明

  1. ^: 匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与”\n”或”\r”之后的位置匹配。
  2. $: 匹配输入字符串结尾的位置。如果设置了 RegExp 对象的 Multiline 属性,$ 还会与”\n”或”\r”之前的位置匹配。
  3. \: 将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,”n”匹配字符”n”。”\n”匹配换行符
阅读全文 »

LAMP 以及 Tomcat 服务器环境搭建

发表于 2017-02-24 | 分类于 Linux | 评论数:
本文字数: 33k | 阅读时长 ≈ 30 分钟

开源一族,与众不同

最近频繁使用服务器环境,以前也搭建过,但那些命令以及配置都不能铭记于心,因此今天借此记录下,以便于以后参考。记录主要有:LAMP ( Linux, Apache, Mysql, Php ) 以及 Git, Java, Tomcat, Ftp 等安装命令及配置过程。



前言


作为程序员,对于服务器的部署还是有必要会的,因为这决定了自己独立的高度。目前而言,服务器操作系统性能最好的还是 Linux,不要说自己不会,没有不会的程序员,只有懒惰的程序员。

对于 Linux 系统的学习最容易上手的还是 Ubuntu 桌面版了,因为它有 Windows 版的界面,可以给新手一个过渡阶段,之后再上手到只有命令端的 Linux Server 版就容易多了。

这里给 看云 上的两个学习文档:Linux学习; The Linux Command Line 中文版

阅读全文 »

Android 图形化排序算法

发表于 2016-11-24 | 分类于 Android | 评论数:
本文字数: 21k | 阅读时长 ≈ 19 分钟

排序算法不好理解?那就来个 GUI 的!

上篇C语言实现各排序算法的完成,使得自己对排序有了一定的了解,最近看到一个 iOS 图形化排序过程,因此今天就完成 Android 端的图形化排序过程。

排序算法实现很简单,其重点是要实现安卓 View 跟随排序的动态变化。

由于计算机执行排序算法的高效性,对一定数量的数组排序都是 毫秒级 的,因此我们要考虑 放大排序时间,给可视化界面完整的动态过程。

一、总体功能界面


界面

maingif

阅读全文 »

C 语言实现各排序算法

发表于 2016-11-24 | 分类于 算法 | 评论数:
本文字数: 25k | 阅读时长 ≈ 23 分钟

面试官:“ 先手写一个快速排序吧!”

最近整理了一些排序算法,并记录下实现过程!作为备忘笔记。主要有:快速排序、堆排序、归并排序、插入排序、冒泡排序、选择排序等。

前言

  • 算法是程序的灵魂。无论程序多么的复杂,只要我们能够抓住程序的主要“矛盾”,就能够适时地解决这些问题,而算法就是其主要矛盾。
  • 排序算法是算法的基础。我们需要学习算法,就必然需要打好自己学习的基石,排序算法作为最基本易懂的算法,我们不精通它又怎么能驾驭得了其他高级算法呢?
  • C 语言:本文选择 C 作为实现语言,主要是本人在看 Linux 下的 C 编程一书,于是就顺便直接在 Linux 系统下开写了!我想 C 语言是每个人都能看得懂的语言,并且其特殊性很少,几乎完全能转化为其他各式语言 ( Java, Php, Python 等 ),因此这也是 C 的好处。

排序算法说明

一、快速排序 / FastSort

快速排序是 C.R.A.Hoare 于 1962 年提出的一种划分交换排序方法,其核心是分治法。

实现过程:

从数列中选取一个作为 基准数 ( 不妨就选第一个,通常也都是选择第一个 );然后进行分区,将比它小的数放在它左边,比其大的则放在右边;然后对 左右区间进行相同操作 ( 也就是递归 ),直到各个区间只剩一个数。

阅读全文 »

Java synchronized 的用法

发表于 2016-09-01 | 分类于 Java | 评论数:
本文字数: 28k | 阅读时长 ≈ 25 分钟

同步学习,才能不落伍

最近好好整理下 Java 方面的知识点,在练习到线程方面时,对同步方面的知识还是模糊不清的,于是开学今天好好地看了相关博客,下面仅仅记录下以备以后参考查询!

一、同步、异步、synchronized

首先我们先了解下什么是 同步、异步 与 synchronzied:

同步:在计算机领域,指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去!

异步:是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。

synchronized: 是 Java 中的关键词,其意思也是同步,其主要用在多线程中需要同步的情况下!

阅读全文 »

依赖倒置原则,接口隔离原则

发表于 2016-08-31 | 分类于 Design | 评论数:
本文字数: 34k | 阅读时长 ≈ 31 分钟

三、依赖倒置原则

定义

依赖倒置原则(Dependence Inversion Principle ,DIP):高层模块不应该依赖低层模块,应该依赖其抽象,抽象不应该依赖其细节,细节应该依赖其抽象。

理解:低层模块:具体细化的 Java 类。高层模块:是由多个低层模块组成的。抽象:指的是接口或者抽象类。依赖:存在类 A 的一个方法 S, S 传入的参数是另一个类 B 的实例,那么类 A 依赖于类 B, 也就是类 A 中引用了类 B, 则 A 依赖 B, 因为 A 类中缺少了 B 类就无法正常运行了!

实例

先举一个反例子:一个司机开宝马车。正常思维是定义一个司机类 Driver, 并实现一个开车 void drive(BMWCar bmwcar) 的方法,该方法传入的是宝马车的一个实例!

阅读全文 »

单一职责原则,里氏替换原则

发表于 2016-08-30 | 分类于 Design | 评论数:
本文字数: 21k | 阅读时长 ≈ 19 分钟

导语:

本篇文章是最近看了设计模式方面的知识,记录下自己的阅读内容以及笔记,以备以后翻录!

前言

  • 设计模式分为设计与模式两块,通常来说分为 6 大设计原则和 23 种模式,但随着后续研究者的发掘与探究,将来也会有一些新的设计模式出现!
  • 在遇到开发难题时,可以借鉴这些设计模式!
  • 在学习这些设计模式时,能结合自己以前做过的项目更好,可以自己一边思考以前自己写的代码不足之处,一边理解这些设计模式的规则要求!

一、单一职责原则

定义

单一职责原则( Single Responsibility Principle ):指有且仅有一个原因引起类的变更。

理解:尽可能的将对象划分成单一性的类别,使类的复杂性降低,实现什么职责都有清晰明确的定义。

阅读全文 »

MySQL 简单配置与基本操作

发表于 2016-05-22 | 分类于 MySQL | 评论数:
本文字数: 24k | 阅读时长 ≈ 22 分钟

MySQL 入坑指南

本篇文章主要记录自己在使用配置 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 版本 是有的。

阅读全文 »
12345
戈吉

戈吉

go my own way

43 日志
29 分类
65 标签
RSS
GitHub Weibo E-Mail Google Twitter FB Page Instagram
Links
  • HackerSee
  • Hillychen
  • Kirosummer
  • Calxu
  • Tianhaoo
  • Jiyiren
© 2024 戈吉 | 站点总字数: 168k | 站点阅读时长 ≈ 2:33
由 Hexo 强力驱动
|
主题 — NexT.Mist
苏ICP备17010322号-1
0%