自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

WILL

less is more

  • 博客(33)
  • 问答 (1)
  • 收藏
  • 关注

原创 centos7安装python3之后和yum冲突

需要修改两个地方把yum依赖的python版本标记为python2.7。centos默认安装python2.7。安装python3.0之后系统变量变化。yum依赖python2.7。

2024-01-18 10:12:44 383 1

原创 JAVA关于树的方法树转数组数组转树非递归工具类

注:GbqItem为个人实体结构。

2022-12-15 10:57:36 410 2

原创 xorm一次get请求

xorm的一次get请求做了什么?func TestUser_Info(t *testing.T) { user := &model.User{} //var form *model.User println("BEFORE", unsafe.Pointer(user), unsafe.Pointer(&user.NickName)) sql.Session().ID(1...

2019-11-30 18:05:26 871 1

原创 golang并发控制

golang 并发控制1. 信号量控制package mainimport ( "sync" "time")func main() { wg := sync.WaitGroup{} wg.Add(2) go func() { time.Sleep(1 * time.Second) println("stopping first goroutine1 ...") ...

2019-11-28 16:55:21 241

原创 golang 设计模式

单例模式单例模式是比较常使用的一种模式,比如构建一个config工具包,我们只需要一个读写config的对象。在golang 中sysnc.Once刚好用来实现单例模式。type config map[string]stringvar ( once sync.Once instance config)func Config() { // 只有在第一次调用的时候会执行Do方法...

2019-08-13 15:57:31 466

原创 在vue中使用继承&依赖注入

思考:怎么让vue代码越来越少?接下的话是一个后端工程师站在后端的角度看前端所产生的思考,本身的前端眼界有限,还请前端大佬赐教。作为输出靠cv,解决问题靠百度的程序员的我,在粘贴复制了无数次的vue页面代码后,慢慢的懒意占据了上风,我逐渐思考怎么样来减少代码量。1. 继承&依赖注入剔除页面,单讲js代码,从我们日常工作面对的最多的分页需求来说,基本上传统web应用中总会有那么十几组...

2019-08-03 22:42:46 901

原创 golang死锁

死锁概念所谓死锁,是指两个或者两个以上线程在执行过程中,因争夺资源而产生互相等待的现象,若无外力作用,他们都将无法推进下去,此时,称系统处于死锁。死锁产生条件互斥条件:进程对所分配的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时,还有其它的进程请求该资源,则请求者只能等待。请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,但是该资源正在被其他进程占有...

2019-07-28 06:34:20 229

原创 gokit 入门微服务1

不拒绝英文的朋友请移步https://gokit.io/examples/stringsvc.html第一步让我们创建一个最小化的gokit 服务,现在我们将用main.go一个文件实现,gokit的首要准则。业务逻辑service从业务逻辑开始,为业务逻辑服务,在gokit中我们把服务抽象为一个接口。// StringService provides operations on str...

2019-07-12 07:12:53 1644

原创 golang slice 底层实现

结构定义slice是由一个指针和两个属性组成,指针指向内存的起始位置,len是数据的填充数量,cap是当前情况下能够容纳的所有数据的容量。type slice struct { array unsafe.Pointer len int cap int}slice内存分配是调用了malloc中的mallocgc函数,内存分配分两种情况,大于32kb的时候直接在堆中分配内存...

2019-07-05 06:44:37 293

原创 shell 可配置的自动发布脚本

#! /bin/bash########修改配置文件的位置#########configName=/home/g/opt/sh/config ################################show(){ echo "-----------------------------------------------------" projectCount=$(...

2019-06-24 13:18:57 548

原创 wkhtmltopdf 使用wkhtmltopdf生成pdf并下载

项目中要求导出pdf报告,之前使用的canvas转pdf但是当报告太大的时候会出问题,所以换成了后台去处理。wkhtmltopdf从名字来看就一目了然,使用webkit把html渲染成pdf。由于水平很菜所以自己在开发过程中不断掉坑,现在总结一下希望能帮助到遇到同样问题的小伙伴。1.安装篇wkhtmltopdf 可谓是功能强大,漏洞百出,可能不是他的原因,毕竟依赖webkit外部程序。所以在我...

2019-05-16 05:57:08 4892 2

原创 【goalng】消息订阅收发 消息中间件 NSQ 部署 使用

nsq是用golang写的一款非常成熟的支持分布式的高可用的消息传递中间件。它非常的好集成具体多好集成,在使用docker 的情况下三条命令搞定一个完整的实例,docker之前从来没有用过,接触的也不多,但是真用起来才觉得以前关于配置环境这种头疼的事情都可以省略了。首先在NSQ中有三个组件是你必须知道的 nsqd nsqlookupd nsqadminnsqd nsqd是nsq...

2019-03-17 22:52:36 491

原创 【自动部署】jenkins+gogs实现git push后代码自动发布(vue应用)

jenkins是一个是基于Java开发的一种持续集成工具,用于监控持续重复的工作。gogs用来搭建自己的私有git仓库。jenkins和gogs的安装配置不是这篇文章的重点,笔者现在的状况是jenkins和gogs跑在两台不同的服务器上,现在要在jenkins上创建一个项目并且实现自动检测gogs仓库的push事件,当有开发者push代码的时候项目自动部署。首先在jenkins的系统管理中下...

2019-03-10 20:54:44 1369

原创 【golang】在golang中实现session会话保持,用来做单一用户登陆验证

很多变量前面加了个h,有洁癖的小伙伴见谅,现在的版本能够实现用户单一登陆,属于内存版的简单session管理,希望有大神讲一下怎么实现一个浏览器多用户登陆情况下单一登陆限制。package hsessionimport ( "crypto/rand" "encoding/base64" "io" "net/http" "net/url" "strconv" "

2019-03-03 21:03:53 8662 4

原创 【golang】Go编码规范指南

工作需要从Java转到Go上来了,再Java对象的世界里呆久了,Go的世界初来乍到雨点懵,希望能从标准库中整理出一点规范。1.项目名go项目名尽量小写加任何符号2.package名使用有意义的小写英文字母,尽量不要和标准库重复3.变量变量声明使用驼峰命名,不要使用“_”,多个命名放在一起4.注释行注释是常态,块注释一般用来包注释或者禁用大量代码5.structstruct的变量...

2019-02-24 22:33:00 865

原创 【源码阅读】Vector

数据结构Vector是线程安全的,一般在多线程并发编程中使用,如果不需要线程安全,推荐使用ArrayList代替,提高效率。继承&实现可序列化、随机访问、可克隆、迭代器属性 //存储元素的数组 protected Object[] elementData; //实际的元素个数 protected int elementCount; //扩容...

2019-01-02 18:53:01 88

原创 【源码阅读】HashMap

数据结构JDK1.8对HashMap进行了比较大的优化,底层由以前的数组+链表变成了数组+链表+红黑树的实现形式,当链接结点较少时用链表,当链接结点超过一定值的时候用红黑树。继承实现属性构造方法核心方法总结...

2019-01-02 18:26:46 104

原创 【源码阅读】LinkedList

数据结构继承&实现属性 //大小 transient int size; //第一个节点 transient LinkedList.Node<E> first; //最后一个节点 transient LinkedList.Node<E> last;构造方法 //默认长度为0 public ...

2018-12-24 23:40:26 93

原创 【源码阅读】ArrayList

数据结构顺序结构类的继承&实现类的属性//列表最大长度private static final int MAX_ARRAY_SIZE = 2147483639;//存放数据的数组,不会序列化transient Object[] elementData;//默认长度 10private static final int DEFAULT_CAPACITY = 10;...

2018-12-23 19:54:37 129

原创 [Android]认识安卓界面

1.ListView2.Toolbar3.overflow icon4.title

2018-12-11 19:08:33 128

原创 权限管理系统 RBAC模型的数据库设计

RBAC模型基本可以解决关于权限的所有问题,我们在设计数据库的时候主要用到的表有7个。-- ------------------------------ Table structure for sys_acl-- ----------------------------DROP TABLE IF EXISTS `sys_acl`;CREATE TABLE `sys_acl` ( `i...

2018-11-27 00:20:51 1409

原创 【Java高级】ThreadLocal的使用

ThreadLocal用于保存某个线程共享变量:对于同一个static ThreadLocal,不同线程只能从中get,set,remove自己的变量,而不会影响其他线程的变量。1、ThreadLocal.get: 获取ThreadLocal中当前线程共享变量的值。2、ThreadLocal.set: 设置ThreadLocal中当前线程共享变量的值。3、ThreadLocal.remove...

2018-11-21 23:12:44 1150

转载 【转载】Java后台接收URL请求中文字符乱码

在使用tomcat服务器时,如果需要在url中支持中文的参数,需要对tomcat进行配置。配置方法如下:1、打开配置文件打开tomcat安装目录中conf目录下的server.xml配置文件;2、修改配置找到如下配置的地方:<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"...

2018-11-19 23:48:27 420

原创 笔记

pip命令行安装$ wget https://bootstrap.pypa.io/get-pip.py$ python get-pip.py$ pip -V

2018-06-09 19:39:58 119

原创 RBAC传统权限管理模型

权限管理模型 一、 基于角色的权限访问控制(Role-Based Access Control)最小权限原则责任分离原则数据抽象原则。二、 种类 RBAC96模型1、基本模型RBAC0模型定义:RBAC0模型由以下描述确定: U、R、P、S分别表示用户集合、角色集合、许可权集合和会话集合。 PA P×R表示许可权与角色之间多对多的指派关系。 UA U×R表示用户与角色之间多对多

2017-07-03 11:44:43 1860

原创 Java Web实现统计网站用户访问量并持久化的问题

Session 是一次会话的局部存储,所以我们要使用Application的全局存储。可以通过实现ServletContextListener 接口,重写contextDestroyed(ServletContextEvent arg0)contextInitialized(ServletContextEvent arg0)在初始化的时候进行持久化读取,销毁的时候持久化存储,至于放在文件还是数据库

2017-07-02 18:03:47 9590

原创 js面向对象编程

js面向对象的编程javascript的第一个语言特性:引用 在js中引用总是只指向最终被引用的对象,而不会是引用本身,它会沿着引用链向下追溯直到指向核心的对象。例如 例如在下面的这个例子中itme2 item3 都引用item1所以只要他们呢的引用源item1改变紧接着这两个都会改变最后alert出来的item3的值一定会是item1的值。 例1: var item1 = [“1”,”

2016-07-22 12:53:49 238

原创 sublime3下插件安装

最简单的是先安装完成package control然后在线安装其他插件,我所用的就是这中方法。 首先,安装package control https://packagecontrol.io/installation or http://pan.baidu.com/s/1qYPBp6G 密码:zusf 然后,打开preferences-browse package,返回上一级有个installe

2016-07-18 13:18:01 216

原创 CSS3基础

css3边框border-radius:5px; 圆角border-radius: 5px 5px 5px 5px;box-shadow: 10px 10px 10px #cccccc;阴影背景 border-image : 图片边框 background-origin:content-box | padding-box | border-box;控制背景图片在盒中的位

2016-07-05 20:21:50 219

原创 Bootstrap基础

文本类型: .text-muted:提示,使用浅灰色(#999) .text-primary:主要,使用蓝色(#428bca) .text-success:成功,使用浅绿色(#3c763d) .text-info:通知信息,使用浅蓝色(#31708f) .text-warning:警告,使用黄色(#8a6d3b) .text-danger:

2016-07-02 22:50:02 333

原创 Bootstrap学习心得

<meta name="viewport" content="width=device-width, initial-scale=1">这句话是说明让当前的视图等于当前物理折别的大小 Bootstrap是移动设备优先的。 Bootstrap所有的js插件都依赖jquery css文件放在head中js文件放在body的最下面 **1**按钮组:外面是一个div:class=btn-group

2016-07-02 16:26:19 3058

原创 ui-router中路由的二级嵌套

关于ui-router中嵌套路由中的问题1.首先我们的页面层次为 其中Main.html是我们的主页,我们要在main.html中对路由进行统一的管理。 main.html页面中有一个ui-view在这里将填充PageTab.html,同时被填充的PageTab.html中也有一个ui-view 这样就实现了嵌套路由。 最终效果: 当我们点击Page-1时出现的是Page1中的内容,同

2016-06-29 23:13:59 6538

原创 angular-ui-router中对带参ui-view的配置

对带参ui-view的配置代码:angular.module("myApp", [ "ui.router" ]) // myApp为自定义模块,依赖第三方路由模块ui.router .config(function($stateProvider){ //home为这个状态的名称可以随便定义 $stateProvider.state("home",{

2016-06-29 22:12:59 636

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除