一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Java

CentOS7安装ActiveMQ

1、下载activemq,下载地址:http://archive.apache.org/dist/activemq。测试版本为apache-activemq-5.14.1。 2、在/ursr/local/目录下新建activemq文件夹,并进入该文件夹,执行如下命令解压文件。

3、在/etc/init.d/目录增加增加activemq文件,文件内容为:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #!/bin/sh # # /etc/init.d/activemq # chkconfig: 345 63 37 # description: activemq servlet container. # processname: activemq 5.14.1 # Source function library. #. /etc/init.d/functions # source networking configuration. #. /etc/sysconfig/network #export JAVA_HOME=/ export CATALINA_HOME=/usr/local/activemq/apache-activemq-5.14.1 case $1 in     start)         sh $CATALINA_HOME/bin/activemq start     ;;     stop)         sh $CATALINA_HOME/bin/activemq stop     ;;     restart)         sh $CATALINA_HOME/bin/activemq stop         sleep 1         sh […]

龙生   02 Jul 2018
View Details

Invalid location of tag 解决方案

1. Invalid location of tag (form) form 应该写到table外面去,form标签只能嵌套进入div等行级元素中,放进块元素会报invalid。 2. Invalid location of tag (style) style应该写在head里面。 3. Invalid location of tag (script) script应该写到body,head里面。 4.Attribute name(Name) uses wrong case character 虽说HTML不区分大小写,但是在Myeclipse里面,大写的话就报错,所以,还是乖乖的改成小写吧。 5. Invalid location of tag (div)  这个错误是因为div的标签使用不当,需要更换为<span>标签   from:https://blog.csdn.net/zalion/article/details/23932731

龙生   02 Jul 2018
View Details

开源项目【zheng】环境搭建指南

一、项目简介 基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构,提供整套公共微服务服务模块:内容管理、支付中心、用户管理(包括第三方)、微信平台、存储系统、配置中心、日志分析、任务和通知等,支持服务治理、监控和追踪,努力为中小型企业打造全方位J2EE企业级开发解决方案。目前已经累计获得10000+的Star,受到了广大程序员的密切关注! 由于该项目框架采用的技术点比较多,新手入门会有一定的困难,所以笔者整理资料写了本篇环境搭建指南,希望能够帮助大家把环境快速的搭建起来。 oschina地址:https://gitee.com/shuzheng/zheng github地址:https://github.com/shuzheng/zheng   二、工具下载 JDK官方下载地址 | 老版本JDK下载地址 TortoiseGit: 下载地址 | 安装与配置教程 Git客户端官网下载太慢,最新版本: Git-2.14.1-64-bit 客户端下载 MySQL数据库: 下载与安装5.7教程 |  百度经验 (电脑可以装多个MySQL,端口不一样即可) MySQL客户端: Navicat for MySQL下载、安装与破解  Maven官方下载地址  下载最新的apache-maven-3.5.0-bin.zip解压到本地目录,打开/conf/settings.xml进行编辑,修改本地的仓库地址,默认的Maven镜像下载速度十分感人,强烈建议使用阿里云的,可以享受飞一般的速度。精简版的配置如下,以供参考:

Redis官方下载地址 : Linux版本 | Windows教程 | 安装教程2 最新版本Redis3.2配置文件redis.conf详细说明 Redis客户端Redis Desktop Manager: 官网下载  |  PC6快速下载 ActiveMQ: 官方最新版下载地址 | ActiveMQ基本配置与示例演示 ZooKeeper:官方下载地址 |  Zookeeper 安装和配置 Nginx:官方下载地址 |  Nginx安装与配置  | 负载均衡 dubbo-admin-2.5.4: 下载地址 (需使用jdk1.7) | dubbo-admin管理平台搭建   三、导入项目 推荐使用IntelliJ IDEA, 安装教程: Windows7下安装与破解IntelliJ IDEA2017 IDEA使用Git在线导入,具体操作可以百度一下,或者File ->Open进行导入项目。 导入完毕,IDEA右侧Maven Projects找到zheng->Lifecycle->install 点击运行,在本地Repository中安装依赖的jar包,编译时间有点长,请耐心等待。 加入作者建立的QQ群,群内含各种工具、文档、视频教程下载,还有热心群友答疑解惑。   四、环境搭建 QQ群内提供了环境搭建文档和视频【点击下载】 ,未能加入群?没关系,参考本篇指南就够了。 修改项目配置文件里mysql和Redis密码: 各dao模块和rpc-service模块的redis.properties、jdbc.properties、generator.properties数据库连接等配置信息,其中master.redis.password、master.jdbc.password、slave.jdbc.password、generator.jdbc.password里密码值使用了AES加密,请使用com.zheng.common.util.AESUtil工具类修改这些值。项目里默认的是空字符串加密后密文:FNFl9F2O2Skb8yoKM0jhHA==。 配置hosts, 打开文件C:\Windows\System32\drivers\etc\hosts,增加如下配置:

配置Nginx:进入项目zheng/project-tools/nginx/,把里面的nginx.conf和servers复制到Nginx安装路径的conf目录下,比如我的D:\Java\nginx-1.12.1\conf,然后进入servers文件夹修改zheng-ui.conf,root路径修改到zheng-ui的根目录,详细的配置参考下面:

  五、启动项目   六、见证奇迹的时刻 访问 http://upms.zhangshuzheng.cn:1111/,默认帐号密码:admin/123456 内容管理系统CMS访问 http://cms.zhangshuzheng.cn:2224,页面如下:   至此,项目的环境搭建大功告成,为了同学们能够快速入门,搜罗了不少资料,如有帮助请点赞。 现在已经将近凌晨一点了,洗洗睡喽!   from:https://my.oschina.net/yzuzhang/blog/1538555

龙生   30 Jun 2018
View Details

Dubbo

Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。 主要核心部件 Remoting: 网络通信框架,实现了 sync-over-async 和 request-response 消息机制. RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能 Registry: 服务目录框架用于服务的注册和服务事件发布和订阅 工作原理 Provider 暴露服务方称之为“服务提供者”。 Consumer 调用远程服务方称之为“服务消费者”。 Registry 服务注册与发现的中心目录服务称之为“服务注册中心”。 Monitor 统计服务的调用次数和调用时间的日志服务称之为“服务监控中心”。 (1) 连通性: 注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小 监控中心负责统计各服务调用次数,调用时间等,统计先在内存汇总后每分钟一次发送到监控中心服务器,并以报表展示 服务提供者向注册中心注册其提供的服务,并汇报调用时间到监控中心,此时间不包含网络开销 服务消费者向注册中心获取服务提供者地址列表,并根据负载算法直接调用提供者,同时汇报调用时间到监控中心,此时间包含网络开销 注册中心,服务提供者,服务消费者三者之间均为长连接,监控中心除外 注册中心通过长连接感知服务提供者的存在,服务提供者宕机,注册中心将立即推送事件通知消费者 注册中心和监控中心全部宕机,不影响已运行的提供者和消费者,消费者在本地缓存了提供者列表 注册中心和监控中心都是可选的,服务消费者可以直连服务提供者 (2) 健壮性: 监控中心宕掉不影响使用,只是丢失部分采样数据 数据库宕掉后,注册中心仍能通过缓存提供服务列表查询,但不能注册新服务 注册中心对等集群,任意一台宕掉后,将自动切换到另一台 注册中心全部宕掉后,服务提供者和服务消费者仍能通过本地缓存通讯 服务提供者无状态,任意一台宕掉后,不影响使用 服务提供者全部宕掉后,服务消费者应用将无法使用,并无限次重连等待服务提供者恢复 (3) 伸缩性: 注册中心为对等集群,可动态增加机器部署实例,所有客户端将自动发现新的注册中心 服务提供者无状态,可动态增加机器部署实例,注册中心将推送新的服务提供者信息给消费者 例子 服务端 定义一个Service Interface:(HelloService.java) 1 2 3 4 5 6 7 8 package com.alibaba.hello.api; public interface HelloService {   String sayHello(String name); }   接口的实现类:(HelloServiceImpl.java) 1 2 3 4 5 6 7 package com.alibaba.hello.impl; import com.alibaba.hello.api.HelloService; public  class  HelloServiceImpl  implements  HelloService{     public  String  sayHello(String  name){         return  "Hello" + name;     } }   Spring配置:(provider.xml) 1 2 3 4 5 6 7 8 […]

龙生   30 Jun 2018
View Details

cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration的解决

导入了一个工程,编译什么的都还好,但是报了一个XML的错误。 cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dubbo:application'. 具体错误如下: Multiple annotations found at this line: – cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dubbo:application'. – schema_reference.4: Failed to read schema document 'http://code.alibabatech.com/schema/dubbo/dubbo.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>. 根据错误提示,有可能是http://code.alibabatech.com/schema/dubbo/dubbo.xsd这个文档找不到或者打不开,于是百度了一下,发现类似问题的问还是比较多的,比较轻松找到解决办法。大致的思路是,到网上下载一个dubbo.xsd文件,其实在dubbo的jar包里就有,直接解压出来就好,放到本地目录,然后在Eclipse里配置上关联关系,让Eclipse能找到这个文件即可。 1、下载一个dubbo.xsd文件; 2、在windows->preferrence->xml->xmlcatalogadd->catalog entry  ->file system 选择刚刚下载的文件路径; 3、修改key值和配置文件的http://code.alibabatech.com/schema/dubbo/dubbo.xsd 相同保存。 4、在xml文件右键validate就可以k解决了。 后记:有其它的xsd文件找不到的情况,也可以按照类似的方法解决。   from:https://blog.csdn.net/ddshang/article/details/72772640

龙生   30 Jun 2018
View Details

POI、NPOI中用SXSSFWorkbook工作簿写入大量数据

 

龙生   21 Jun 2018
View Details

解决javax.servlet.jsp.JspException cannot be resolved to a type

使用eclipse-juno新建的maven项目,使用过程中无任何问题,但是换了eclipse-luna版本后,导入同样的maven项目,则报javax.servlet.jsp.JspException cannot be resolved to a type错误;这可能是新版本eclipse的bug导致。 在网上找的解决方案是在你的项目中加入jsp-api.jar和servlet-api.jar包,这两个包来源于tomcat的libs目录中,但是会出现一个问题,项目打包发布的时候也会将这两个jar打包出去,这时候发布到tomcat中后tomcat可能启动失败,同时你的jar包可能和tomcat中的jar版本不一致等情况。 解决方式:右键你的项目--properties选择Targeted Runtimes,选择你的运行环境,我选择Apache Tomcat v7.0,Apply--OK。   from:https://www.cnblogs.com/sharpest/p/6017983.html

龙生   15 Jun 2018
View Details

国内 Top 开源项目深度解读

最受欢迎的国产开源项目都是什么模样?选用什么开源协议?使用哪种语言?实现了什么功能? 我们选取了码云 Gitee.com 平台 144 个优质开源项目,为你深入剖析国内 Top 开源项目。 (项目选取标准:入选 GVP——码云年度最有价值开源项目计划,或获得超过 1000 个 star。) 1.开源协议(license)分布——宽松型是首选 1.1 宽松式协议是首选,Apache-2.0 占比 45.14% Apache-2.0 是码云Gitee 上开源作者的首选,占到了 45.14%,JFinal 、t-io、iBase4J 等正是采用此协议。另一个则是 MIT,占比 17.36%,zheng、layui 等正是此类代表。 宽松式协议允许用户任意使用软件,从而确保大家能从软件中得到最多的利益。 Apache-2.0 是宽松式协议(permissive license)的代表,它还包含了贡献者向用户提供专利授权相关的条款,使用 Apache-2.0 的知名软件有 Android、 Apache、Swift 等。 MIT 协议几乎对用户没有什么限制,只要保留版权声明和许可声明且不要求开发者承担责任,这也成为其深受欢迎的重要原因,国际上使用 MIT 协议的知名软件有 JQuery、.NET Core 、Rails 等。 1.2 限制式协议 LGPL、GPL、AGPL 紧随其后 LGPL、GPL、AGPL 这三项协议的采用占比为 2.78%、8.35%、1.39%,它们的限制性由弱到强,分别规定: 如果项目采用动态链接调用 LGPL 许可协议的库,项目可以不用开源; 如果项目包含了 GPL 协议的代码,那么整个项目都必须使用 GPL 许可协议; 如果云服务(即 SAAS)用到的代码是 AGPL 许可协议,那么云服务的代码也必须开源。 限制式协议的初衷是帮助开源项目获得成功,从条款上进行了详细的限制,防止部分开发者修改代码却不回馈社区的情况。但凡事皆有两面,高复杂性的许可协议,不仅限制了他人,也会限制作者自身,或许这种风险正是从限制式协议到宽松式协议转变的原因。 1.3 对开源许可协议的认知和应用有待提升 在参与统计的 144 个 Top 开源项目中,未选择开源协议的项目占到了 24.31%;在码云推荐过的 7000 多个开源项目中,未选择开源协议的占比 43.95% ;而在码云上所有的开源项目中,这一数据扩大到了 77.12% 。 规则与约束是实现真正自由的前提,开源崇尚“自由、开放、分享”,更需要大家自觉遵守规则,才能实现更高的效率。 码云在此呼吁广大开源作者善用开源协议,让开源项目的发展更加规范和健康,关于如何选择开源协议,可以参考这里。 2.编程语言分布——Java 一骑绝尘 2.1 Java 类项目占据半壁江山,高达 65.73% Java 类编程语言在 Top 开源项目中可以说遥遥领先,占到 65.73%。包括了 guns、nutz、jeecg 等优质的开源项目,此类框架式的项目受到了众多开发者的喜爱。 Java 到 2018 年已经有 22 年的历史了,它在实用性、性能、向后兼容性以及跨平台性等方面都有着优秀的表现,在技术快速更迭的今天,往后的十年甚至二十年 Java 是否能一直保持这种优势呢?让我们拭目以待。 2.2 PHP […]

龙生   15 Jun 2018
View Details

javaweb利用filter拦截未授权请求

项目上有个小需求,要限制访问者的IP,屏蔽未授权的请求。该场景使用过滤器来做再合适不过了。 SecurityFilter.java:

web.xml增加配置:

from:https://www.cnblogs.com/lichmama/p/7063587.html

龙生   11 May 2018
View Details

Java获取此次请求URL以及服务器根路径的方法

本文介绍了Java获取此次请求URL以及获取服务器根路径的方法,并且进行举例说明,感兴趣的朋友可以学习借鉴下文的内容。 一、 获取此次请求的URL 1 2 3 4 5 6 String requestUrl = request.getScheme() //当前链接使用的协议     +"://" + request.getServerName()//服务器地址     + ":" + request.getServerPort() //端口号     + request.getContextPath() //应用名称,如果应用名称为     + request.getServletPath() //请求的相对url     + "?" + request.getQueryString(); //请求参数 举例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 http://127.0.0.1:8080/world/index.jsp?name=lilei&sex=1 <Context path="world" docBase="/home/webapps" debug="0" reloadable="true"/> request.getScheme() = "http"; request.getServerName() = "127.0.0.1"; request.getServerPort() = "8080"; request.getContextPath() = "world"; request.getServletPath() = "index.jsp"; request.getQueryString() = "name=lilei&sex=1"; http://127.0.0.1:8080/world/index.jsp?name=lilei&sex=1 <Context path="" docBase="/home/webapps" debug="0" reloadable="true"/> request.getScheme() = "http"; request.getServerName() = […]

龙生   11 May 2018
View Details
1 51 52 53 64