自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

宝华的小岛

菜鸟程序员宝哥的日常学习与研究,欢迎指教!

  • 博客(165)
  • 收藏
  • 关注

原创 Java使用JNI入门For CentOS7

还是使用上次建好的Java项目,不同之处在于我们要在CentOS7中安装gcc,使用gcc进行编译。先看看有没有g++,gcc命令:gcc -v如果看到一大串信息包括版本号,表示已经安装了gcc,否则执行下面的命令进行安装:yum install glibc-static libstdc++-static -yyum install gcc-c++安装以后在检查一下。...

2018-09-07 23:51:31 1093

原创 Java使用JNI入门For Windows7

前几天去一家公司面试,这家公司是做智能可穿戴设备的,涉及到针对硬件的操作。主要是操作蓝牙获取数据。以前没有用java去操作过硬件设备,网上也没有资料。想一想恐怕也就只能借助于C++团队,利用jni来进行技术对接了。以前虽然了解过jni,但是基本上都是在设计后台服务,比较多的是跟前端调用和后端数据库打交道,jni并没有真正用过。感觉到面试比较顺利,想着如果真的入职了,jni这方面一定会用上,所以特意...

2018-09-07 02:14:09 477

原创 CentOS安装nexus搭建maven私服(一)

为了节省时间,提高效率,同时有有利于团队协作,进行分模块开发整合,开发团队最好能够搭建一个maven私服。我们在这里使用nexus搭建一个私服。首先在服务器上面创建一个文件夹/home/softs/nexus,然后用下面的命令下载nexus。wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz后面的网址可以在http...

2018-09-06 18:41:22 540

原创 Android使用JNI入门

使用JNI的必要性就不多说了,开始之前要下载NDK工具,在AS的SDK管理页面可以选择,配置好NDK的路径。新建一个项目,我的项目名为MyJniDemo。在布局中建一个TextView,用来显示我们最后调用的结果,这里不多说。创建一个类MyMathUtils,在其中创建一个静态的本地方法。我在上一个demo中创建的是普通方法,这里尝试静态方法。package com.chris....

2018-09-06 08:33:09 465

原创 Docker架设Git服务器简记

本来是想直接在centos上面安装架设,还是考虑到复用问题,因为我的日常工作是java开发,不会花很多时间来专门维护Git服务器,再则如果上门服务都直接在一个服务器上面配置,总会有一些影响的。还是隔离开比较好,所以选择使用docker镜像来架设。架设过程中自然要踩很多坑的,有一些关键的地方网上的资料也不是很详细,鼓捣了半个工作日,还好把架设的任务完成了。首先,拉取gitlab镜像,网上资料...

2018-08-30 13:59:43 3577 1

原创 Docker架设SVN服务器简记

本来想在自己的服务器上面架设SVN服务,但是不利于移植。想在虚拟机中架设,但是虚拟机又不常开,所以决定通过Docker来架设。在网上找过一些资料,研究实现,但是从镜像库中拉取下来的镜像最终都没有成功。最后决定自己拉取一个centos的镜像,然后在这个镜像中架设一个全新的SVN服务。首先,拉取centos镜像。docker pull daocloud.io/library/centos:7...

2018-08-30 02:21:05 3614

原创 Springboot+dubbo+zookeeper学习笔记(二)

时隔数月,第一版基本上线测试,开发组面临第二版重构。因为第一版遭遇需求零碎和管理混乱,毫无节制地修改,导致原来架构好的项目被无情撕碎,体系完全被打乱,程序处处耦合,经常是改完这一处,就会在另一处翻出新问题。加之原来的项目因为无法整体预先规划,四个app和一个管理网站的接口杂揉在一起,臃肿而且杂乱。我就想着赶紧上线,到安排第二版重构的时候实现分布式架构。架构的初始想法,是全部利用SpringClou...

2018-03-12 15:23:32 422

原创 CentOS7安装运行tomcat

我是在VM虚拟机上面安装的CentOS,记得不能安装最小安装,否则只是命令行。命令行倒也没什么,关键是对于我这种linux门外汉,不能方便联网解决起来很糟心。所以我选择一种桌面图形化界面安装。安装完成之后执行#yum update更新一下。在自己的文件夹下创建一个文件夹server,用来存放java包,创建一个soft文件夹用以存放软件。#mkdir sercver#mkdir soft去http...

2018-02-23 14:43:35 9529 2

原创 复制两个不同类型对象的相同字段的值

需求的来源是项目。每次做项目,都要建立很多的数据体,有的是数据库表产生的ORM,有的是网络请求的参数体,有的是网络接口调用给的返回数据返回数据体。同一种数据,这几种数据具体的结构并不一样。ORM旺旺跟数据表一致,并且做了映射。但是外键数据只有id,并不详细,前端调用的数据旺旺要求比ORM更丰富,有些则不需要。虽说可以建立一些与ORM无关的字段来用,但是字段多了会很麻烦,所以需要建立专用的VO数据类

2017-12-02 23:20:01 9344 9

原创 Redis学习笔记(6)消息的订阅与发布

数据库还能通信,真是学习了!!!先写一个方法,订阅消息: @Test public void redis_test_message_subscribe() { JedisPubSub jedisPubSub = new JedisPubSub() { @Override public void onMessage

2017-12-01 17:28:45 1252

原创 Redis学习笔记(5)对set集合的读写

集合分为无需集合和有序集合。写一个方法,测试无需集合:@Test public void redis_test_set() { //存入数据 jedis.sadd("nameset", "kaly chen"); jedis.sadd("nameset", "devin chen"); //读取数据

2017-12-01 17:16:32 874

原创 Redis学习笔记(4)对list列表的读写

这个也将会是用的比较多的。写一个测试方法:@Test public void redis_test_list() { //存入数据// jedis.lpop("namelist");// jedis.lrem("namelist",16,"kaly chen"); jedis.lpush("namelist"

2017-12-01 17:12:50 996

原创 Redis学习笔记(3)hash的读写

个人觉得读写哈市将来应该是用的最多的了。如果要把存在内存中的很多数据寄存在redis中,使用hash最方便,把对象转换成hashMap就好了。接上一篇,写一个测试方法:@Test public void redis_test_hash() { //构建hash Map map = new HashMap<>(); map.pu

2017-12-01 17:09:07 539

原创 Redis学习笔记(2)在Springboot项目中的配置

使用Intellij Idea创建一个SpringBoot项目,勾选redis。创建一个测试文件。在测试文件内创建jedis和gson(需要导入gson依赖)。 private Jedis jedis;//jedis private Gson gson;写一个init方法,初始化iedis和gson。@Before public void init() {

2017-12-01 17:04:53 277

原创 Redis学习笔记(1)安装与启动

从Redis官网下载redis。不过redis不支持windows,如果使用windows想学习,可以在github上面下载一个windows的支持包。https://github.com/MicrosoftArchive/redis/releases解压到一个位置。在windows环境变量中进行path配置。打开安装文件夹,找到redis.windows.

2017-12-01 16:57:02 241

原创 SpringBoot中jpa批量插入的问题

说起来令人啼笑皆非。本来也是我对SpringBoot不太熟,现在处于学习的阶段。公司最近做一个项目,我用SpringBoot架构好了,中间遇到两个问题:一是软件内启动老是提示注解工厂的错误,网上查了一下,原来是因为 @Table注解的问题,把关于表名映射改到@Entity里面就好了,因为orm的类都是持久化插件生成好的,我以为应该不会有这方面的问题,加之表太多,而且数据库又总是不确定。我不愿老

2017-11-29 21:48:06 11345

原创 Vue微型架构:requestBody网络请求的模式与自定义协议的封装

如果我们使用vue来构架前端项目,我为自己设计了这样的一个小型架构,参考上一遍文章:《Jquery微型架构:requestBody网络请求的模式与自定义协议的封装》,在次基础上做了一些改变。一、 首先是程序架构其中包含jquery和vue两个外部包。需要下载导入。二、页面文件login.html文件内容 login

2017-11-29 14:40:14 4762

原创 Jquery微型架构:requestBody网络请求的模式与自定义协议的封装

我们在用html三剑客编写网站或者后台管理程序的时候,现在多数使用异步请求。如果使用jquery,异步请求很方便。我们的项目,后台使用java springboot设计,统一套用了自定义的请求协议,方便各端进行模式化封装。请求方式也全部统一成了post请求,所有协议和请求参数,一级返回的协议和数据也都全部打包生成json,构建到RequestBody中进行发送。我本来是做Android的,

2017-11-29 14:19:30 1550

原创 SpringBoot集成外部jar包无法使用maven打jar包的问题

问题起源于我们公司对支付宝支付的应用。在后台服务中,我们使用SpringBoot构建工程,然后集成蚂蚁金服提供的七八个jar包,使用Add Library加到项目中。一切封装完成之后,直接运行是没有问题的。但是我们的项目需要部署到公网的服务器上面,我们习惯使用maven打包,然后直接运行。但是这样打包最终失败,错误提示是一大堆的什么包找不到、符号找不到等一系列问题。最初以为是蚂蚁金服给的jar

2017-11-28 11:22:07 2235

原创 Dubbo学习笔记:注册到zookeeper并实现远程调用

我们选择zookeeper作为注册中心。一、首先要下载zookeeper,把程序解压,进入conf,把zoo_sample.cfg修改为zoo.cfg。进入bin文件夹,在这里打开命令行,输入zkserver.cmd,这样就启动了zookeeper。可以看出,zookeeper注册中心监听的是2181端口。二、创建服务提供者工程。1. 创建一个springboot项目,在p

2017-11-27 15:59:13 8622 1

原创 Dubbo学习笔记:No provider available for the service ...异常问题的解决

刚开始学习dubbo,先跑了一下github上面down下来的demo,开洞zookeeper,运行provider和consumer,实现远程调用。然后就自己敲代码,对逻辑做一点灵活性的改变。我也指导真正敲起代码来,就会踩到坑。果然,提供者能够成功注册,运行消费者就找不到注册的服务。明明自己就是按照demo敲出来的代码嘛。网上搜索异常:No provider available for th

2017-11-21 23:06:06 16327 7

原创 SpringBoot中WebSocket不能实现注入的问题

项目需要长连接业务,我使用SpringBoot中的 ,一切都调得好好的,到对接数据库的时候,一个大坑突然出现:ServerEndpoint中竟然不能实现注入,甚至使用的对象中有注入也不行。找了两天资料,写了好几个demo,有人说在@ServerEndpoint加上, configurator = SpringConfigurator.class,测试不通过;有人说使用 ContextLoader.

2017-11-20 11:51:19 8891 6

原创 SpringBoot打包jar包并后台运行

最近又进步了。我一直习惯直接在Intellij Idea中直接运行写好的程序,不过也是因为仅仅是写个模拟接口而已。后来到新公司要负责java后台,开始习惯把项目部署到外部Tomcat去测试,或者打成war包让运维去linux上面部署。不过,想来这也是因为只是在做一个目前看起来并不是很重要的项目而已。如果同时做的项目多了,好像自己的做法就不好了。老大最近点醒了我,原来SpringBoot是可以打

2017-09-28 00:24:45 26197

原创 Springboot架构设计(二)封装

这时候数据库还没有准备好,接口需求也没有定下来,我们可以做一些早期的封装。早期封装的好,尽量实现低耦合,就和实现快速开发,而且还能应对各种不确定的变化。一般的接口需求,以获取数据为主。获取数据有些是单一数据类型,有的却是多种数据多种结构组合在一起。比如Android的页面如果比较复杂,就需要组装一套复杂的数据提供。这就导致java后端纵向分割无法确定。我的观点是,controller是数据

2017-09-16 17:38:14 6457

原创 Springboot架构设计(一)

本来一直做Android设计,因为工作需要目前负责Java后端。主要使用的框架是SpringBoot。自己习惯在做项目的时候进行架构设计,实现低耦合,高灵活,快速开发。研究的时间不长,目前做了一个简单的Java SpringBoot项目架构,简单梳理一下。一、建立项目的时候把Mysql选上,创建项目之后需要添加数据库连接信息。数据库是提前创建好的。连接信息可以写在application

2017-09-16 17:01:19 15248

原创 Springboot监听器的使用

创建监听器@WebListenerpublic class ContextListener implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent servletContextEvent) { MsgUtils.printl

2017-09-16 16:34:44 8729

原创 SpringBoot过滤器的使用

只需要建立一个过滤器就搞定了。@WebFilter(urlPatterns = "/*")public class CustomFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Overr

2017-09-16 15:45:14 13186 1

原创 SpringBoot拦截器的使用

一、首先建立拦截器,继承HandlerInterceptorpublic class CustomInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse htt

2017-09-16 15:13:08 689

原创 Nginx+Tomcat负载均衡的配置

这方面的技术主要还是围绕在配置nginx.conf文件上面。一、首先,在这里http://nginx.org/en/download.html下载Nginx,解压到一个文件夹下。二、配置安装路径到环境变量。三、安装tomcat,此处略。将安装好的nginx和tomcat都测试一遍。nginx的默认端口号是80,可隐藏。tomcat的默认端口是8080,为了体现负载均衡,实现路由

2017-09-11 23:32:38 402

原创 SpringBoot中利用AOP实现拦截器效果

既然使用Spring,AOP就是不了或缺的。尝试好多遍,踩了很多坑,最后总算把效果弄出来了。说起来很简单,只需要建一个类就好了。@Aspect@Configurationpublic class InfoInterceptor { private static final String execution_str_01 = "execution(* com.chris.cont

2017-09-11 23:13:58 3413 1

原创 SpringBoot多表查询的实现

在SpringBoot中,建立一个与单表结构相同的实体类,用@Entity@Table(name="user")建立ORM映射,用@Column(name="name")建立字段映射。就可以用CrudRepository很方便地查询数据库表。但是我们经常需要查询多表关联的数据。如,有这样两个表:user和level。user中存放用户基本信息,level存放用户等级信息,user表中包含有l

2017-09-10 22:32:25 18177 5

原创 SpringBoot定时任务的设置

如果我们需要每天定时进行财务汇总,我们的服务器就需要开启线程定时触发,SpringBoot中开启定时任务依然是使用注解。一、首先在Application中添加注解@EnableScheduling二、写一个定时任务的类,使用注解设置类和方法即可@Componentpublic class StartManager { @Scheduled(fixedDelay = 1

2017-09-10 19:10:26 471

原创 java.lang.NoClassDefFoundError问题的解决

我把servlet的上传方式放到Springboot中,添加了common-fileupload包,运行的时候一大堆错误,提示java.lang.NoClassDefFoundError。开始以为Springboot的处理有冲突,后来读到这篇文章http://blog.csdn.net/jamesjxin/article/details/46606307,才恍然大悟。原来我忘记将刚添加的包加入Ar

2017-09-10 11:30:20 7645

原创 创建AVD时unknown error异常的解决

不知道为什么,在运行AVD的时候导致Win7xt奔溃,重启之后所有的AVD被损坏,无奈重新建立,却出现unknown error,每一个AVD都是如此。查了一些资料没有解决,最后在用户配置文件夹.android下找到avd文件夹,全部删除重启,就解决了。

2017-09-10 10:29:47 2181

原创 ajax实现文件上传

没有使用插件一、单文件上传 &lt;!DOCTYPE html&gt;&lt;html&gt;&lt;head lang="en"&gt; &lt;meta charset="UTF-8"&gt; &lt;script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js"&g

2017-09-04 22:52:21 59574 4

原创 SpringBoot实现文件上传

用SpringBoot实现服务器,然后用java和html5实现客户端进行上传测试。一、服务器端接口程序。为省事就在controller中写了,正式的程序我喜欢放在service这一层进行处理调用。@RestController@RequestMapping("/file")public class FileController { /** * 单文件上传

2017-09-04 22:14:46 23918 9

原创 HTML5网页通过ajax跨域调用接口获取json数据并解析(一)

接口使用Idea设计,返回json字符串。HTML5页面使用WebStorm设计,需要导入jquery。设计接口需要有Gson包。一、SpringBoot接口@PostMapping("/getUserListJson") public String getUserListJson() { List userList = userRepository.getUs

2017-09-04 10:06:37 30685 3

原创 Java自定义框架初步(一)

最近想自己学习写框架,看过一些资料,决定从JavaWeb开始。近来用到SpringBoot写过一些模拟接口,我对这种框架很感兴趣,几行代码就可以写出很实用的数据接口。框架设计除了需要巧妙的思路之外,还需要准备三种技术:1.反射;2.自定义注解;3.资源文件的读写。一般框架常用xml文件做配置,也可以使用properties属性文件。我是用Idea做工具。一、首先创建一个Ja

2017-09-02 19:38:59 4257

原创 基于retrofit网络请求token过期的处理逻辑

手机调用接口,关键数据请求需要验证token,token设置按照一定周期就过期。验证token需要判断token是否过期,如果过期就需要后台调用登陆接口获取新的token,并且用新的token替换原来的token,在后台继续完成原来未完成的请求。经过尝试,基本完成实现与优化。一、首先贴出接口代码,采用SpringBoot编写的简单接口:@RestControllerpublic cl

2017-08-31 15:42:34 2835

原创 自定义网络传输数据加密与解密

最近做一个电商类的APP,进行后台数据接口的调用。这期间涉及到财务账目的往来,自然很需要重视数据安全的问题。我没有搞过爬虫、抓包之类的技术,但是如果传输过程中的数据被抓,如果被破解了肯定会出问题的。所以我考虑自己做一个加密和解密的算法,在后台将数据打包后进行加密,APP拿到数据又进行解密。经过测试,基本实现了这个过程。首先,我要确定一个思路,就是如何进行加密。解密的过程是一个逆运算

2017-08-27 21:12:00 4149

空空如也

空空如也

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

TA关注的人

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