自定义web项目的初始化

概述 启动一个项目时,大多数情况下我们都需要对项目进行一些自定义的初始化,如,加载数字字典,加载配置到redis等等,这需要我们在代码里进行业务实现. 基于xml配置 使用场景: 配置配在xml文件中,项目启动要读取这些配置才用这个方法. 配置: <!--初始化对象时,加载类中的init方法--> <bean id="serviceHander" class="com.mlsama.springbootoracle.hander.ServiceHander" init-method="ini
分类: 其他 发布时间: 01-18 22:39 阅读次数: 0

获取ApplicationContext对象进而获取spring管理的对象

概述 在初始化项目时,我们可能要用到某些对象,可以通过ApplicationContext对象获取 方式一 : 通过@Autowired注入 项目启动时,spring已经将ApplicationContent对象创建,所以可以直接注入 @Autowired private ApplicationContext applicationContext; 方式二 : 实现ApplicationContextAware接口 通过重写setApplicationContext()方法注入 priva
分类: 其他 发布时间: 01-18 22:38 阅读次数: 0

利用idea连接数据库(MySQL,oracle)

概述 开发中,如果不想在数据库客户端与idea之间切换,可以利用idea连接数据库,进行数据的查询. MySQL 点击IDEA 右侧栏的 Database ,如果你的idea右侧没有Database,那么View -> Tool Windows -> Database 成功连接后,,选中,再点击上方的控制台,即可打开控制台,输入sql即可进行操作 oracle
分类: 其他 发布时间: 01-18 22:38 阅读次数: 0

解决乱码:自定义io流读写编码,读写不同编码的文件

概述 利用io流读写文件时,默认的流编码都是UTF-8,d但是如果流的编码和文件的编码不一样,得到的内容是乱码.所幸的是字节流可以在转为String使用new String(byte[],charset)设置编码.字符流InputStreamReader,OutputStreamWriter这两个类的构造方法提供了设置流编码的方法. 下面举个简单的例子,其他情况可以举一反三. 读取的文件是GBK编码,写入的文件是UTF-8编码 @Test public void test4(){ B
分类: 其他 发布时间: 01-18 22:38 阅读次数: 0

BufferedWriter写入文件注意事项

对于文本文件,使用BufferedReader,BufferedWriter进行读写效率更高,原因是使用了缓存区,其工作流程是:先把文本内容读写到缓存区,缓存区满了,自动把缓存区中的内容读写到文件. 问题: 如果读写完的同时缓冲区刚好装满,那么缓冲区会把里面的数据朝目标文件自动进行读或写,这种时候你直接调用close()方法关闭流是不会出现问题 , 但是如果文件在读写完成时,缓冲区没有装满,就直接调用close()方法,这个时候装在缓冲区的数据就不会自动的朝目标文件进行读或写,造成缓冲区中的这
分类: 其他 发布时间: 01-18 22:38 阅读次数: 0

Springboot Caused by: org.xml.sax.SAXParseException: 文档根元素 "beans" 必须匹配 DOCTYPE 根 "null"。

今天在做Springbatch读取xml文件时,运行启动类时,报:Caused by: org.xml.sax.SAXParseException: 文档根元素 "beans" 必须匹配 DOCTYPE 根 "null"。找了好久原因,最后发现是配置文件名称的问题. Springboot的配置文件是不允许命名为: application.xml,否则就会出现这个错误.
分类: 其他 发布时间: 01-18 22:37 阅读次数: 0

split("\\|")与split("\\|",-1)的区别

今天处理文件时,使用split("\\|")切割每行数据,发现数据如下时,取最后一个字段报数组越界异常: a|b|c|| //arr[3]会报异常 百度了下发现:如果字符串最后分隔符里的字段为空,使用split("\\|")进行切割时,最后的空字段不会切割,这时字符串a|b|c||切割出来的数组大小为3.取arr[3]就会报异常. 如果想要取arr[3]时不报异常,可以使用split("\\|",-1)进行切割,这样切出来的数组大小为4,arr[4]为空字符串 PS: 如果是这样的字符串: a
分类: 其他 发布时间: 01-18 22:37 阅读次数: 0

公钥,私钥,对称密钥

概述 对于Java的加密,一直都是很模糊,今天简单梳理下公钥,私钥,对称密钥等相关的理念和关联. 公钥,私钥-->非对称加密 公钥和私钥成对出现,顾名思义,公钥就是公开的密钥,是给通信的其他方的,私钥则是只有你自己知道的.通信时,一般而言,公钥用于敏感信息的加密,私钥用于签名.对应的另一方,则使用他自己的私钥进行数据解密,使用你提供的公钥进行验签.这样可能感觉比较乱,举个例子: A,B双方准备进行系统间的通信,基于安全的考虑,采用数据加密通信.这时候,A有自己的公私钥,分别是A公,A私,B也有
分类: 其他 发布时间: 01-18 22:37 阅读次数: 0

Springbatch从文件读取数据处理后写入数据库

使用Springboot + mybatis框架 4.1.1 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"            xsi:schemaLocation="http://maven.apache.org/
分类: 其他 发布时间: 01-18 22:37 阅读次数: 0

springbatch整合Quartz框架

使用Springboot+Springbatch+Quartz每隔3秒读取一次文件 4.2.1概述 Spring batch提供了强大的批处理功能,比如ItemReader、ItemProcess、ItemWriter,还有Tasklet,但定时功能不够强大,而Quartz提供了通过JobDetail、Trigger、SchedulerFactory提供了强大的定时器功能,但批处理功能不够强大,鉴于此,Spring对两者做了的整合. 4.2.2 pom.xml <?xml version="
分类: 其他 发布时间: 01-18 22:36 阅读次数: 0

线程池技术介绍

1 概述 创建一个线程非常简便,但是如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 为了解决这样的问题,Java提出了线程池这个解决方法.所谓的线程池其实就是一个存放线程的容器.调用线程池去执行并发任务时,从线程池中取出线程去执行任务,每个线程 执行完任务,并不被销毁,而是被线程池回收,下一次继续执行任务. 2 线程池的种类 2.1 JDK中的线程池体系 java.uitl.concurren
分类: 其他 发布时间: 01-18 22:36 阅读次数: 0

线程池实战: 通过渠道接口标识异步执行对应接口

1 pom.xml 创建Springboot项目,在pom.xml中加入如下依赖: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://ma
分类: 其他 发布时间: 01-18 22:36 阅读次数: 0

Springboot对WebSocket的简单demo

1 概述 WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信:允许服务器主动发送信息给客户端。 WebSocket协议跟http协议并没有太多的关系,不过使用了http的握手机制. http协议是应用很广的网络协议,它在通信前必须经过3次握手,它又分为短链接,长链接.短链接是每次请求都要三次握手才能发送自己的信息。即每一个request对应一个response。长链接是在一定的期限内保持链接。保持TCP连接不断开。客户端与服务器通信,必须要有客户端发起请求然
分类: 其他 发布时间: 01-18 22:36 阅读次数: 0

在一台虚拟机上做zookeeper集群

1. Zookeeper ZooKeeper 是一个开源的分布式协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。 1.1 zookeeper的由来 Zookeeper 最早起源于雅虎研究院的一个研究小组。在当时,研究人员发现,在雅虎内部很多大型系统基本都需要依赖一个类似的系统来进行分布式协调,但是这些系统往往都存在分布式单点问题。所以,雅虎的开发人员就试图开发一个通用的无单点问题的分布式协调框架,以便让开发人员将精力集中在处理业务逻辑上。 关于“Z
分类: 其他 发布时间: 01-18 22:35 阅读次数: 0

Springboot整合c3p0(mysql,oracle),mybatis开发web项目

创建项目 登录网址: http://start.spring.io/ 进行简单的设置,自动生成Springboot项目 添加其他依赖 <!--lombok约束--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> <!--日记--> <dependency> <groupId>org.
分类: 其他 发布时间: 01-18 22:35 阅读次数: 0

图像处理相关模块配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jason_holan/article/details/71056568 Numpy, scipy,Matplotlib,PIL安装 1. 安装numpy (前提安装pip) pip install numpy 2. scipy scipy下载地址 切换到python的script 目录下,执行: pip install scipy文件名.whl 3.安装PIL PIL不支持Python3, 用
分类: 其他 发布时间: 01-18 22:34 阅读次数: 0

iPython/Jupyter交互环境

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jason_holan/article/details/71082229 IPython 4.0及以后版本归于项目Jupyter。IPython作为Jupyter的内核存在。 iPython 1.安装 pip install jupyter 2.启动 juypter_notebook.exe 3.jupyter notebook界面 END:参考文档 1.jupyter百度百科 2.ipython
分类: 其他 发布时间: 01-18 22:34 阅读次数: 0

Python图像处理相关模块学习文档

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jason_holan/article/details/71082477 下载Unofficial Windows Binaries for Python Extension Packages 1.Numpy 1.numpy使用手册很不错的教程,推荐
分类: 其他 发布时间: 01-18 22:34 阅读次数: 0

Python环境搭建 --Ubuntu

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jason_holan/article/details/71091433 一、安装Python 1.第一种安装方式 sudo add-apt-repository ppa:fkrull/deadsnakes sudo apt-get update sudo apt-get install python3.3 设置Python 3.5为默认的命令:(Ubuntu16.04已安装Python2.7和P
分类: 其他 发布时间: 01-18 22:34 阅读次数: 0

Python模块环境搭建 -- ubuntu

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jason_holan/article/details/71102998 一、基础 1.1安装Python Ubuntu下默认已经安装python2.7和python3.5 修改默认python即可 sudo rm /usr/bin/python sudo ln -sf /usr/bin/python3.5 usr/bin/python 1.2安装pip 1.安装 sudo apt-get ins
分类: 其他 发布时间: 01-18 22:33 阅读次数: 0