自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (6)
  • 收藏
  • 关注

原创 spring-boot 启动时候 出现异常:The bean 'xxx' could not be injected as a 'xx.xxxx' because it is a JDK dynami

@Resourceprivate UmsUserMapper userMapper;如上代码会报错,这是因为程序中有一个UserMapper,所以当命名为userMapper会首先查找UserMapper这个类而不是UmsUserMapper这个类,改成umsUserMapper程序正常。注入时的变量命名很重要...

2019-05-29 16:01:50 20424 7

原创 错误Unable to open primary script: /index.php (Operation not permitted)

删除目录下的.user.ini文件

2019-03-21 17:19:08 9588 4

原创 使用容器jenkins+docker自动化部署项目

关于这篇文章的产生直接使用jenkins部署项目的流程很简单,直接配置完maven+git插件,然后创建工程可以直接部署,后面再加几个简单的shell脚本命令就完事了。现在我有一台1核2G内存的小霸王,想要所有服务docker化,即当内存不够用的时候能迅速结束掉某个不相关的服务,保存系统最大程度的可用性,各个服务之间保持独立性。首先解决程序自动化部署问题。docker下jenkins+由jenk...

2019-03-15 15:16:48 1347

原创 docker部署php环境运行web项目

写这篇文章的目的一个是自己做个笔记,以防以后忘记,再一个网上关于运行php容器到部署web项目的资料实在是少,都是互相复制一下,无法真正运用到实际生产环境中。为什么要用docker,docker基本的一些命令不再本文章的讨论范围。docker部署web项目需要用到几个服务:php,nginx,redis等等,本篇文章讲一下PHP,nginx以及redis的使用,更多的服务流程跟启动这三个服...

2019-01-12 22:02:23 26669 15

原创 springboot+dubbo构建分布式架构遇到的问题总结

dubbo-spring-boot-start使用阿里官方提供的,网上有很多个版本,建议使用官方的在提供者使用springaop的时候所提供的接口会被拦截,添加注解时@Service(interfaceClass=CaptchaService.class)当将提供者发布到公网环境时,本地将不可用提供者,设置/etc/hosts文件 47.93.63.10 计算机别名...

2019-01-04 22:06:20 350

原创 nginx配置文件

server{    listen 8097;    server_name landing.hjlinfo.top;    index index.php index.html index.htm default.php default.htm default.html;    root /www/wwwroot/landing.hjlinfo.top/landing_backend/publi...

2018-04-25 15:38:48 393

原创 cURL error 60: SSL certificate problem...

php在curl的时候报此错误:cURL error 60: SSL certificate problem: unable to get local issuer certificate (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)1根据报错后面提示的地址查询60错误:CURLE_SSL_CACERT (60)Peer cert...

2018-02-11 10:12:46 1883

原创 配置Nginx支持pathinfo模式

让Nginx支持pathinfoNginx服务器默认不支持pathinfo, 在需要pathinfo支持的程序中(如thinkphp),则无法支持”/index.php/Home/Index/index”这种网址.网上流传的解决办法很多,这里提供一种比较简洁的写法(只需要改动2行代码)典型配置location ~ \.php$ { root html; fast...

2018-02-08 14:19:03 271

原创 laravel引入vux

需要如下几个包"vux": "^2.7.5","vux-loader": "^1.0.56","less": "^2.7.1","less-loader": "^2.2.3",然后在 Laravel 项目根目录创建:webpack.config.js:const webpackConfig = require('./node_modules/laravel-mix

2017-12-21 10:22:59 630

原创 局域网下访问主机内的虚拟机

首先要开启虚拟机内部的服务器(apache,nginx等),这里我们假设开启了内部服务器且端口为80然后打开virtual box,选择虚拟机后设置网络。启用NAT做一个端口映射。比如主机的8000映射为80。这样我们再访问主机8000端口的时候实际上就是访问了virtual box的80端口之后在端上设置网络代理。比如设备是手机,那么在连接同一wifi下设置代理

2017-11-23 16:57:18 421

原创 CentOS下通过yum安装nodejs等

获取nodejs 资源# 4.xcurl --silent --location https://rpm.nodesource.com/setup_4.x | bash -# 5.xcurl --silent --location https://rpm.nodesource.com/setup_5.x | bash -# 0.10

2017-11-22 21:01:51 1228

原创 [DUBBO] Unexpected error occur at send statistic, cause: Forbid consumer 192.168.3.151 access servic

[DUBBO] Unexpected error occur at send statistic, cause: Forbid consumer 192.168.3.151 access service com.alibaba.dubbo.monitor.MonitorService from registry zkserver:2181 use dubbo version 2.5.3, Pl

2017-09-07 13:02:47 6714

原创 android中使用SharedPreferences保存数据丢失的问题

当应用第一次启动使用SharedPreferences保存数据之后重启应用会造成保存的数据丢失,但是确实保存过。造成这种现象发生的原因是因为多进程调用了SharedPreferences来保存数据。有些手机可以跨进程使用SharedPreferences,有些则不行。解决办法是在主进程里面使用一个SharedPreferences文件夹,在其他进程里面使用其他的SharedPreferences文

2017-09-05 09:06:29 12399 2

原创 java web阿里云部署

首先安装一个集成java web环境的linux系统(jdk,mysql,tomca等),我选择了镜像id:m-2zeeo57kqlt38onbl76y设置安全组,如果不设置安全组,那么公网ip不能正常访问服务器,端口为80。启动服务器,进行系统的常规配置,建立数据库,创建ftp账号。下载一个ftp的管理软件FileZilla,通过配置站点管理建立新的站点,传输设置限制并发连接数为1

2017-06-14 14:31:10 311

原创 关于使用nginx静态代理遇到的问题

首先需要安装$nginx:brew install nginx然后启动$nginx: sudo nginx如果修改了配置文件需要重启:$nginx sudo nginx -s reload停止:$nginx: sudo nginx -s stop一般我们需要修改nginx的配置文件,配置文件的路径为:/usr/local/ect/nginx/nginx.conf一般我们访问的文

2017-06-02 16:01:58 797

原创 java web开发之各种工具配置

1.Zookeeper的安装与启动安装:$brew installzookeeper启动:zkServer start查看运行状态:zkCli点击打开链接2.ActiveMQ的安装与启动安装: brew install activemq启动:activemq start点击打开链接3.Nginx的安装与启动安装:brew install ng

2017-06-02 14:49:28 389

原创 java web开发之本地hosts文件配置

在进行web开发的时候,通常需要以http://localhost或者127.0.0.1之类的访问本地环境的网站。但是,如果本地放的网站多了,不得不做别的操作,比如端口设置。结果不容易记住啦。我在本地之用的是ubuntu+nginx环境,nginx允许设置多个域名,只需要分别指向不同的存储位置即可。那么,接下来就要如何设置一个自己选定的域名,同时这个域名只访问本地某个网站呢?在wi

2017-06-02 14:35:44 5269

原创 Mac下通过Homebrew安装redis

安装命令 brew install redis 开机启动redis命令 $ ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents使用launchctl启动redis server $ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.pli

2017-05-09 16:20:40 3863

原创 ViewPager设置完FragmentPagerAdapter后动态的进行增加删除Fragment

很多新闻类的App会有增加删除频道功能,也就是在ViewPager中动态的增加删除Fragment。标准的代码为public class NewsFragmentPagerAdapter extends FragmentPagerAdapter { private List mTitles; private List mNewsFragmentList; private

2016-12-12 21:45:30 4569 1

原创 关于android屏幕适配的解决方案

首先,谈论一下为什么要进行屏幕适配。因为android手机的碎片化,导致了手机屏幕大小以及分辨率的区别。不同手机的屏幕大小不一样导致了屏幕分辨率不一样,甚至还有屏幕大小不一样但是屏幕分辨率是一样的,甚至还有屏幕大小一样但是屏幕分辨率不一样的情况。总总奇葩的问题摆放在我们面前,我们挨个进行分析。先对绘制视图时的两个单位分别介绍:px, dp(dip)px即分辨率,单位是像素。我们在andro

2016-11-07 14:26:53 344

原创 浅析OkHttp

本文将从源码角度浅析OkHttp,主要在于OkHttp处理的流程,所以叫浅析。具体的用法不是本文的重点。通过对OkHttp的基本用法来一步步探索OkHttp的运行流程。OkHttp实际上是利用线程池来处理子线程的任务即网络请求,处理得到的结果是运行在子线程中,所以我们需要对数据通过Handler等方法处理到主线程。OkHttp利用的线程池是类似于CacheThreadPool的,具体的创建方法

2016-11-03 15:44:43 551

原创 Android的消息机制概述即Handler的运行机制

Android的消息运行机制主要是值Handler的运行机制以及Handler所附带的MessageQueue和Looper的工作过程。这三者实际上是一个整体,只不过我们更多的接触Handler,而在我们开发的过程的主线程中,Looper的创建是默认的。如果在子线程中直接使用Handler会报错误,因为我们没有创建Looper,这与Handler的构造函数有关。首先来介绍Handler的工作过

2016-11-01 12:23:29 291

原创 MySQL数据库连接过程中遇到的小问题

安装MySQL数据库遇到的问题:第一次从官网下载最新版的MySQL免安装版,数据库死活启动不了,修改了各种配置文件,添加服务等一系列复杂的操作,仍然没用,过程就不再记录了,因为问题没有得到解决。后来又下载了一个安装版的,很顺利的安装完成。但是再用可视化工具连接数据库的时候,遇到了Lost  connection to mysql server at 'reading initial com

2016-08-18 17:24:48 425

原创 浅谈Android中的MVC与MVP模式

使用MVC或者MVP模式会增加很多的类,但是确可以让代码结构变得清晰,方便了后期维护拓展方便。把数据层跟视图层分离,处理事务的逻辑单独的放在一个类中,让Activity仅仅具有展示功能。下面我们就MVC模式跟MVP模式进行分别讲解,总之来说各有利弊。在实际的开发中,我们根据实际情况进行取舍。个人认为MVP模式更简单一些,因为MVP模式中会把部分逻辑Activity中,但是这就造成了Activi

2016-05-10 11:45:10 3389 1

原创 git的简单实战使用

通常我们在对项目进行迭代开发的时候,要用到远程仓库进行代码托管,从而达到多人同步开发的目的。对于android开发,我们现在使用AndroidStudio工具,里面集成了git插件,方便我们对代码进行管理。对于git的使用,基本的提交,检出都是可视化的。我们要说的是git的回滚操作。关于回滚,有两种情况,第一种是我们提交代码到了本地仓库,代码没有提交到远程分支;第二种是我们把代码已经提交到了远

2016-04-26 15:23:58 514

原创 Android手机在开发调试时logcat不显示输出信息的解决办法

打开cmd,输入命令:adb kill-serveradb start-server

2016-04-07 15:47:46 636

原创 IPC机制的几种通讯方式之ContentProvider

关于IPC机制中的几种通讯方式,简单的几种如利用Bundle,文件,以及ContentProvider。ContentProvider的底层实现也是一种,利用ContentProvider实现了封装,让不同进程间的通讯更加简便。下面来说一下ContentProvider的具体用法。我们在获取手机通讯录号码,短信息等手机保存的信息时,就是通过ContentProvider来实现的。例如手机通讯录

2016-04-07 13:49:00 757

原创 自定义控件之轮播图

昨天写了关于RecyclerView添加头部布局的方法,一般我们的头部布局都会添加什么呢?自然是一个轮播形式的广告位。关于RecyclerView我们使用了比较简单的刷新提示,轮播图我们也要做一个简单而且实用,并且效率并不低的自定义控件!关于自定义控件,一般实现的方式有两种。第一种是继承自View,整个界面用画笔在画布上一点点的画出来。今天的轮播图我们使用第二种方法:组合控件,把几个布局组合在

2016-03-31 15:30:50 828

原创 RecyclerView添加头布局

ListView有直接添加头布局的方法,而RecyclerView没有,但是并没有关系,RecyclerView的拓展性是很强的。我们可以通过多种方法来添加头布局,下面来说两种。第一种是直接根据位置判断,在Adapter中重写getItemViewType(int position)方法,根据位置来返回类型,在onCreateViewHolder()方法中通过viewType来判断需要加载哪种

2016-03-30 14:21:59 5790

原创 RecyclerView的上拉加载,下拉刷新

项目中最常使用的listview,其重要程度不言而喻。RecyclerView是对ListView的升级版,据说性能要比ListView高,而且功能要更强大。比如一个RecyclerView可以直接实现瀑布流,而且有着默认的动画效果。上拉加载,下拉刷新是RecyclerView的拓展的非常实用的功能,在git上也有很多例子,但大都有非常繁琐的逻辑,自带好多不需要的功能。比如我们仅仅需要刷新功能

2016-03-29 18:20:55 1445

原创 Iterator迭代器的使用

迭代器(Iterator)迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。Java中的Iterator功能比较简单,并且只能单向移动:  (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。

2016-03-21 15:57:58 668

原创 使用ORM数据库框架greenDao

有些项目中要频繁的使用数据库,我们大多数会选择android自带的SQLite,因为的确非常强大,但是在执行效率上,我们选择greenDao框架似乎更合适。ORM数据库框架有greenDao、ORMLite等。但是在效率上,greenDao更占优势,而且比自带的SQLite还要更快,具体请自行百度。所以在项目中我们当然选择效率更高的greenDao。对greenDao的理解还不深刻,这里我

2016-03-14 13:59:37 549

原创 RecyclerView的加载显示多种布局

RecyclerView是对ListView的封装,所以ListView上能用的方法对RecyclerView同样适用,并且会更简单在实际开发中,我们可能需要一个列表,显示多种布局,getItemViewType()方法完美解决了这个问题,在BaseAdapter中还有getViewTypeCount()这个方法。这里我们使用RecyclerView.Adapter。只用getItemViewTyp

2016-03-04 15:13:20 29300 1

原创 在Android studio下使用git

Android studio在一些方面的简化,也让我们更简便的使用开发,但是因为过多的简化,反而功能没有eclipse这么强大了。凡事都有利有弊,总要学会取舍。但是as的方便绝对大于它的缺点。在使用Android studio的git来进行版本控制时,Android studio可以直接可视化的新建本地库,连接到远程库,提交,获取等操作。下面来说一下在android stuido下git的基本

2016-03-01 10:22:48 2404

原创 为什么要使用Fragment!

以下是我个人的一些理解,可能有偏差,会不断修改当Android3.0之后,谷歌引入了碎片化的Fragment。为什么要使用Fragment,这是我们首先应该探讨的问题。Android3.0主要是引入了平板,利用碎片化,可以很好的管理平板的界面,因为屏幕很大,一个页面肯定要由多个布局来构成,所以利用碎片化可以实现各个布局之间的解耦,方便管理。为什么要在手机上也提倡使用Fragment

2016-02-25 17:05:36 3726

原创 Fragment的用法

Fragment的引入,让Android具有了碎片化,即可以在一个页面,由多个碎片化的Fragment构成。页面具备了更多的灵活性,但是达成这种UI设计的灵活性也是有代价的,即更加复杂的应用、更多的部件管理以及更 多的实现代码。 虽然要可能会使代码更加复杂,但是却可以在手机和平板上公用一套代码,达到了一劳永逸的效果。 现在,让我们习惯Fragment,并且在项目中开始试着使用它吧 关于Fra

2016-02-22 09:22:10 379

原创 深入理解Activity生命周期的回调

直接上图来看,图片很清晰的反映了Activity的声明周期根据Activity的复杂程度,可能不需要实现所有的声明周期方法,但需要了解每一个方法调用的时间,确保能够得到期望的结果,需要注意:1、当试用你的app的时候,不会因为有来电通话或者切换到其他app而导致程序crash2、当用户没有激活某个组件的时候不要消耗宝贵的系统资源3、当离开你的app并且一段时间后返回,不要丢失用户的

2016-01-19 16:41:36 2099

原创 android标题栏的选择与使用,AppCompatActivity!

android的标题栏是非常重要的一部分,所以添加的方式有多种。可以通过布局文件,在清单文件中设置android:theme="@android:style/Theme.NoTitleBar"属性,来禁用到android自带的标题,然后利用布局一个个页面进行添加,这种方法是非常非常笨重的第二种是利用官方的ActionbarActivity来添加,但是ActionBar 的API只支持到AP

2016-01-06 17:34:26 12753 1

原创 android中Date对象的简单应用,以及TimePicker和DatePicker控件

一、Date对象的应用Date对象的定义Date date = new Date();获取简单数据格式date.toString();对date进行格式化,得到自己想要的格式利用sdk中的android.text.format包中的DateFormat类DateFormat.format("yyyy-MM dd-EE-HH:mm", date); // 第一个参数为

2016-01-05 15:28:59 621

原创 再见2015,加油2016

花了将近两个小时的时间,总结了一下自己的2015年,算是一部血泪史,还好结局够好。趁热打铁,做一下2016年的计划吧,希望自己不忘初心,继续努力。两本书:java编程思想,android编程权威指南必须熟读,理解里面的内容,思想要做3个以上有足够技术含量的项目每天10点半必须准时睡觉,6点20准时起床保证每天9个小时的工作时间,周末要保证两个小时学习的时间暂时就这么

2016-01-01 00:35:24 383

android中的mvc与mvp模式的小demo

自己理解的mvc与mvp模式,通过分析一个简单的登录需求写的关于这两种模式的简单用法。

2016-05-10

PullRecyclerView

上拉加载,下拉刷新的RecyclerView 仅对RecyclerView进行滑动判断是否到底部,来确定加载布局,实现刷新效果,且跟大部分刷新列表效果相同,去除刷新动画,优化代码,仅剥离出刷新功能

2016-03-30

greenDao框架对数据库的基本操作

greenDao框架对数据库的基本操作,包含了基本常用的增删改查

2016-03-15

RecyclerView加载多种布局的简单使用

这是一个RecyclerView加载多种布局的一个demo,仿百度贴吧子评论加载更多的应用,只是一个加载多布局的小例子,可以根据该demo举一反三实现想要的功能

2016-03-04

SlidingMenu

SlidingMenu侧滑库,一个使用的demo。可以直接应用到项目中,不会改动原项目的任何地方,不存在不兼容的情况。非常强大,实用

2016-03-03

RecyclerView的简单使用

RecyclerView简单使用的小demo,可以学习理解RecyclerView的用法

2015-11-19

空空如也

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

TA关注的人

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