![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java开发
Smile_Miracle
各位大牛多多提携
展开
-
springboot+ActiveMQ通用配置
前言ActiveMQ作为几大常用消息中间件广泛应用于应用市场,而springboot更是近几年最流行的快速开发框架,今天来看看,他们是怎么整合的。版本要求: JDK 1.8, Springboot 2.1.3前奏开发的时候,我们又多种方式来配置消息的发送端与接收端,那么,如果当一个客户端既是发送端又是接收端的时候,通过传统的配置就会发现代码重复度太高,不符合代码高复用性的开发思想,那么这...原创 2019-06-25 14:54:22 · 7796 阅读 · 0 评论 -
web项目Log4j日志输出路径配置问题
问题描述:一个web项目想在一个tomcat下运行多个实例(通过修改war包名称的实现),然后每个实例都将日志输出到tomcat的logs目录下实例名命名的文件夹下进行区分查看每个实例日志,要求通过尽可能少的改动配置文件,最好修改实例名后可以不修改log4j的配置文件。 实现分析:一般实现上面需求,需要在修改完war包名称之外要再做下面配置: 1、修改每个实例名下web.xml中参数webApp转载 2017-08-04 14:50:31 · 3197 阅读 · 0 评论 -
Maven Web项目解决跨域问题
跨域问题目前笔者所用到的方案大致有三种:jsonp,SpringMVC 4以上注解方式和cros三方过滤器。JsonpJSONP(JSON with Padding)是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。Jsonp原理: 首先在客户端注册一个callback,原创 2017-08-04 14:11:17 · 4323 阅读 · 4 评论 -
Spring整合Quartz实现定时任务的时间更新,暂停和启用(不需要重启项目并且配置多数据源)
这是一套独立的定时系统,暂时不涉及与外界三方系统的交互,如有需求可自己根据场景来修改。配置项目基于spring4+mybatis3+quartz2.2.1来构建的,pom文件如下:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sc原创 2017-07-28 16:52:53 · 2611 阅读 · 0 评论 -
关于Spring项目配置多个数据源的实例演示
一、多数据源动态切换原理项目中我们经常会遇到多数据源的问题,尤其是数据同步或定时任务等项目更是如此;又例如:读写分离数据库配置的系统。1、多数据源设置: 1)静态数据源切换:一般情况下,我们可以配置多个数据源,然后为每个数据源写一套对应的sessionFactory和dao层代码(以hibernate为例,mybatis同理),——我们称之为 静态数据源配置 。2)动态数据源切换:可看出在Dao层原创 2017-06-27 14:34:32 · 4943 阅读 · 1 评论 -
SpringMVC项目中偶尔用到servlet,如何在servlet中注入service笔记
仅此做个笔记,防止注入时而成功时而失败的问题。package com.zhy.spdb.sso;import java.io.IOException;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax原创 2017-07-04 16:19:45 · 1994 阅读 · 0 评论 -
关于JAVA回调函数的使用
回调函数顾名思义,就是你调用我的方法的时候我也在掉你的方法,它一般满足一下几个条件:①有一个CallBack接口,里面有被回调的方法package spdb.demo.callBack;/** * @Title: CallBack.java * @Package spdb.demo.callBack * @Description: 这是一个回调接口 * @author John Ha原创 2017-06-12 16:45:36 · 614 阅读 · 1 评论 -
MyEclipse 2017 ci6 安装反编译插件(本人自己摸索的方法,亲测可行)
第一步:关闭ME,去一下地址下载jad的反编译jar包和.exe文件,并解压,将Jad.exe文件放到一个文件夹下 JAD下载第二步:在你自己的MyEclipse2017安装路径下找到dropins文件夹,并在此文件夹下建立Jad插件目录,myeclipse的插件目录一般包含两个二级目录features和plugins,我们要做的就是把ZIP文件解压后的net.sf.jadclipse_3.3.0原创 2017-06-21 12:19:05 · 3121 阅读 · 2 评论 -
浅谈对ActiveMQ的理解
现如今项目开发过程中由于功能多,流程长,机制繁多且复杂,让一个线程去跑完一个业务的整个流程的话会显得非常繁琐且耦合性太强,代码量很大,这个时候我们就可以用到一款技术叫做消息队列,我们可以通过定义好发送消息的模式以及一些其他数据,就可以在一个业务有很多流程的时候通过发送消息的形式让队列通知消息消费者去完成一些操作,比如说数据的存储与修改等,这样无形之中就把一个大业务拆分成了很多小的业务的组合体,实现了原创 2017-05-19 14:57:09 · 4160 阅读 · 1 评论 -
关于web项目log日志指定输出文件位置配置
首先我们定义一个可以在运行时动态的找出项目的路径WebAppRootKey,这么做的原因是为了在后面配置log4j输出文件路径的时候能随心配置。<context-param> <param-name>webAppRootKey</param-name> <param-value>amt.root</param-value></context-param>然后要定原创 2017-08-07 15:34:09 · 17679 阅读 · 6 评论 -
基于Netty-Socket-io的无直接调用式的数据传输
实时消息的推送,PC端的推送技术可以使用socket建立一个长连接来实现。传统的web服务都是客户端发出请求,服务端给出响应。但是现在直观的要求是允许特定时间内在没有客户端发起请求的情况下服务端主动推送消息到客户端。有哪些可以实现web消息推送的技术:①不断地轮询(俗称“拉”,polling)是获取实时消息的一个手段:Ajax 隔一段时间(通常使用 JavaScript 的 setTimeout 函原创 2017-09-29 11:02:11 · 1806 阅读 · 0 评论 -
Springboot通过Jar与War的打包与部署
Springboot由于内置了tomcat容器,我们可以通过在pom文件中通过配置让其以jar的方式运行,形如:java -jar xxx.jar,我们也可以通过打war包的方式让它在你配置的tomcat容器中运行,下面来具体看看两种方式具体的打包部署方式。 打Jar包运行1 编写好启动类2 在pom的插件中指定启动类3 mavan install 打成Jar文件防止在你需要的...原创 2019-02-12 15:54:28 · 1126 阅读 · 0 评论 -
关于JAVA调用Python脚本并传递参数
JAVA 程序调用python脚本目前存在两种形式。第一种:运用JAVA本身的自带功能;第二种:使用jython Jar包的自带方法来调用python脚本调用准备:首先你要在本地或者LINUX环境安装python环境,如果是JYTHON的话需要安装JYTHON,两者二选一,python具体安装转方法详见 WINDOWS安装PYTHON,至于JYTHON安装方式:JYTHON官网下载 Dow...原创 2018-09-27 19:49:27 · 3984 阅读 · 2 评论 -
常用设计模式解析
1 策略模式:分别封装行为接口,实现算法组,超类里面放行为接口对象,在子类里具体设定行为对象。原则就是:分离变化部分,封装为借口,基于接口编程各种功能。此模式让行为算法的变化独立于算法的使用者。package com.mvs.mytest.superClasss;import com.mvs.mytest.behavior.FlyBehavior;import com.mvs.myte...原创 2018-09-18 11:40:37 · 258 阅读 · 0 评论 -
Elastic Search(ES)使用笔记
ElasticSearch介绍: ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。我们建立一个网站或应用程序,...原创 2018-06-25 16:36:19 · 1844 阅读 · 0 评论 -
Spring boot + mybatis + 多数据源入门搭建 + 跨域集成以及过滤器配置的方式和过滤器加载顺序控制
Spring boot + mybatis + 多数据源入门搭建 + 跨域集成以及过滤器配置的方式和过滤器加载顺序控制由于项目需要,最近研究了一下spring boot的项目搭建,下面和大家说说项目搭建的心得体会开发环境: JDK1.8 Eclipse maven3.3.9起始工作: 新建一...原创 2018-05-30 14:36:08 · 806 阅读 · 0 评论 -
关于Weblogic异常:weblogic.servlet.jsp.compilationException解决方案
网上对于这个异常的说法很多,先贴上具体异常,如下:weblogic.servlet.jsp.CompilationException: Failed to compile JSP /WEB-INF/jsp/frame/perspective_content.jsp perspective_content.jsp:1:1: The validator class: "org.apache.tagl原创 2017-11-13 16:24:40 · 12571 阅读 · 2 评论 -
ActiveMQ+Spring项目实践
环境准备 项目基于JDK1.7+spring4+mybatis3+tomcat7构建的maven工程,用的是Apache-ActiveMQ-5.11.1的版本。第一步:ActiveMQ安装与配置 首先你的去ActiveMQ官网去下载你要用的MQ版本根据不同的系统安装,我用的是windows 64版,直接下载ZIP解压,然后到bin目录下64文件夹运行bat文件即可启动,如果和自己的监听端口冲突可原创 2017-10-10 11:12:32 · 3662 阅读 · 0 评论 -
Java自定义注解解析
什么是注解Annotation(注解)就是Java提供了一种元程序中的元素关联任何信息和着任何元数据(metadata)的途径和方法。Annotion(注解)是一个接口,程序可以通过反射来获取指定程序元素的Annotion对象,然后通过Annotion对象来获取注解里面的元数据。 Annotation(注解)是JDK5.0及以后版本引入的。它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时转载 2017-05-11 17:54:08 · 1105 阅读 · 0 评论 -
Spring集成HttpClient实现跨域请求
在配置spring集成httpclient之前我们先说一下Jsonp,这是一种基于页面script标签的src属性实现的跨域请求,相比于httpclient,jsonp有两点很大的缺点,首先,它只能发送get请求,如果发送post请求会造成请求无法解析获取不到数据的问题,再者,如果返回的数据你没有经过配置相应的编码文件来处理你拿到的则会是一堆乱码,这中问题对于httpclient则没那么多约束,他是原创 2016-11-24 11:25:47 · 4654 阅读 · 4 评论 -
Quartz cron表达式(时间表达式)
Cron表达式示例:表达式 说明"0 0 12 * * ? " 每天12点运行"0 15 10 * * ?" 每天10:15运行"0 15 10 * * ? 2011" 2011年的每天10:15运行"0 * 14 * * ?" 每天14点到15点之间每分钟运行一次,开始于14:00,结束于14:59。"0 0/5 14 * * ?" 每天14点到15点每5分钟运行一次,开始原创 2017-03-28 09:56:42 · 38743 阅读 · 0 评论 -
JS时间戳转YYYY-MM-DD 形式的时间显示
//转换时间 function getTime(time){ var time = new Date(time); var y = zeroBu(time.getFullYear());//年 var m = zeroBu(time.getMonth() + 1);//月原创 2017-02-27 09:33:07 · 2134 阅读 · 0 评论 -
通用Service
package com.lyt.usermanage.pojo;import java.util.Date;public abstract class BasePojo { private Date created; private Date updated; public Date getCreated() { return created; }原创 2017-01-19 16:51:26 · 658 阅读 · 0 评论 -
针对IE浏览器拦截COOKIE的问题
IE浏览器拦截COOKIE的问题,你只需在返回的时候加上如下代码即可:response.addHeader("P3P", "CP=\"CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR\"");原创 2017-01-05 15:31:44 · 1279 阅读 · 0 评论 -
nginx本地配置
nginx是一个代理服务器又来进行域名的反向代理或者正向代理,同时他也是一个比较可靠的静态资源服务器,相比于FTP服务器来说他没有那么专业,但是也能撑起一个小项目的资源。不多说,直接上步骤:①修改本机HOSTS文件HOSTS它的作用是包含IP地址和Host name(主机名)的映射关系,是一个映射IP地址和Host name(主机名)的规定,规定要求每段只能包括一个映射关系,IP地址要放在每段的最前原创 2016-11-25 16:44:10 · 663 阅读 · 0 评论 -
集成通用Mapper,单表操作从此轻松
如果你使用的Maven开发,你只需在pom.xml文件中加入如下依赖:<dependency> <groupId>com.github.abel533</groupId> <artifactId>mapper</artifactId> <version>2.3.4</version></dependency>如果你想导入架包:下面是连接,由于Mapper依赖JPA你还得下载原创 2016-11-23 12:00:09 · 6301 阅读 · 0 评论 -
mybatis级联查询
关联有嵌套查询和嵌套结果两种方式,本文是按照 嵌套结果 这种方式来说明的上一章介绍了多对一的关系,用到了,这是一个复杂类型的关联。我们选择一个示例来回顾下,比如:一个博客有一个用户,关联映射就工作于这种结果之上。首先看下,我们在本文中要用到的表结构字段:博客 blog : id title author_id 作者 author: id username password email转载 2016-11-22 16:32:10 · 1619 阅读 · 0 评论 -
给大家推荐一个CRON表达式在线生成网站,程序员必备
不墨迹直接上地址:CRON在线生成原创 2017-03-29 16:06:09 · 6917 阅读 · 1 评论 -
Java多线程Thread类和Runable接口的区别以及线程类详解
在Java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限, 下面看例子: package org.thread.demo; class MyThread extends Th转载 2017-05-10 11:52:29 · 1483 阅读 · 0 评论 -
封装通用分页工具,通过反射指定具体的实现类
分页具体实现类import java.util.ArrayList;import java.util.List;public class NavPageInfo { private static final Integer DEAFULT_PAGE_SIZE = 10; //每页默认记录数 private static final Integer DEAFULT_PAGENO_S原创 2016-12-24 10:49:12 · 793 阅读 · 0 评论 -
关于FreeMarker获取一个对象中另一个对象出现的问题以及解决方法
我们通常会用A.B.C或者A[B].C,A[B][C]的方式去获取一个大对象里那个小对象的属性值,然而在FreeMarker里面这么干是行不通的,他会报错说你页面第二个属性值也就是子对象未定义,为了解决这个问题请教了好久,最终发现${A["${B}.C"]}这种方法能解决这个问题。原创 2017-02-07 10:04:48 · 7430 阅读 · 0 评论 -
JAVA SDK 极光推送后台DEMO
pom导依赖 <properties> <comLog.version>1.1.1</comLog.version> </properties> <dependencies> <dependency> <groupId>cn.jpush.api</groupId> <artifactId>jpush-clien原创 2017-02-28 13:43:16 · 5136 阅读 · 0 评论 -
关于mybatis sql语句的错误笔记
<select id="getPushLst" parameterType="PushLstParm" resultMap="BaseResultMap"> SELECT * FROM push_log <where> <if test=" pushContent != null and pushContent != '' ">原创 2017-03-07 18:20:57 · 1544 阅读 · 0 评论 -
关于Eclipse启动Tomcat时,45秒超时解决方式
在Eclipse中启动Tomcat服务器时,经常由于系统初始化项目多,导致出现45秒超时的Tomcat服务器启动错误解决方法: 1、双击Servers视图中的对应的Server,打开Server的属性界面。2、找到timeout修改最大启动时长3、如果还报错继续加原创 2017-03-27 18:19:55 · 656 阅读 · 0 评论 -
JS 小数自动取两位,不足自动补全
function changeTwoDecimal_f(x) { var f_x = parseFloat(x); if (isNaN(f_x)) { alert('function:changeTwoDecimal->parameter error');原创 2017-03-30 20:32:43 · 3834 阅读 · 1 评论 -
给大家介绍几个Hadoop入门经典教程
不多说直接贴上连接: ① Hadoop基础介绍 ② Hadoop入门学习 ③ Hadoop学习二章 ④ Hadoop学习图文教程转载 2017-04-07 11:47:16 · 2051 阅读 · 0 评论