Java
文章平均质量分 64
Scmrpu
这个作者很懒,什么都没留下…
展开
-
office相关文件转pdf的几种方式
最近公司要做office的文档,搜集了几种office文档转pdf的方式,简单的做下总结我主要尝试了三种方式:openoffice,aspose,jacob对他们进行了大文件,小文件,在linux,在windows,转换txt,excel,word,ppt的测试。一、aspose:这种方式在目前来看应该是最好的,无论是转换的速度还是成功的概率,还支持的文件类型。(1)使用:这种方式使用很简单,引入jar包就可以直接使用代码:源码,jar包在最后提供package asp转载 2021-02-07 14:57:01 · 954 阅读 · 0 评论 -
开发工具下载Java 各个版本
IntelliJ IDEA:https://www.jetbrains.com/idea/download/previous.html PyCharm:https://www.jetbrains.com/pycharm/download/previous.html GoLand:https://www.jetbrains.com/go/download/previous.html CLion:https://www.jetbrains.com/clion/download/previous.html原创 2020-10-17 18:53:24 · 255 阅读 · 0 评论 -
两个连续相同的字符正则
早上查了点儿东西,怕自己忘,就顺便给博客除除草了String pwd ="36667";String regx = "^.*(.)\\1{2}.*$";Matcher m = null;Pattern p = null;p = Pattern.compile(regx);m = p.matcher(pwd);if(m.matches()) {}上面这转载 2016-05-06 10:40:06 · 8543 阅读 · 2 评论 -
XSS跨站攻击详解
XSS 全称(Cross Site Scripting) 跨站脚本攻击, 是Web程序中最常见的漏洞。指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的. 比如获取用户的Cookie,导航到恶意网站,携带木马等。作为测试人员,需要了解XSS的原理,攻击场景,如何修复。 才能有效的防止XSS的发生。原创 2016-05-28 17:06:17 · 2651 阅读 · 0 评论 -
Java定时任务详解
在我们编程过程中如果需要执行一些简单的定时任务,无须做复杂的控制,我们可以考虑使用JDK中的Timer定时任务来实现。下面我们就其原理、实例以及Timer缺陷三个方面来解析Java Timer定时器。 一、简介 在Java中一个完整定时任务需要由Timer、TimerTask两个类来配合完成。 API中是这样定义他们的,Timer:一种工具,线程用其安排以后在后台线转载 2016-05-25 11:18:16 · 404 阅读 · 0 评论 -
Ant的运用
目前在研究Ant打包问题,过程遇到很多困难,通过各种路径一个一个Kill,记录下。1.在WIN中CMD窗口下输出系统变量 :echo %变量名称%,如echo %JAVA_HOME%,这点与Linux不同,Linux下输出格式为 :echo $系统变量名称原创 2016-04-11 15:27:52 · 941 阅读 · 0 评论 -
搭建SpringMvc框架中遇到的问题记录
部署Springmvc框架时,遇到这个问题:Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/tx]原因:缺少jar包,spring-tx-4.2.0.RELEASE.jar原创 2016-04-12 14:46:34 · 4933 阅读 · 0 评论 -
Java字符串利用正则除去中文快捷方法
String ss ="3242你好线程V型从v";System.out.println("输出结果:"+ss.replaceAll("[^\u4E00-\u9FA5]", ""));原创 2016-04-08 16:17:20 · 606 阅读 · 1 评论 -
Ant详细打包过程
首先请允许我这样说,作为开发或测试,你一定要具备这种本领。你可以手动打包、部署你的工程,但这不是最好的方法。最好的方式就是全自动化的方式。开发人员提交了代码后,可以自动构建、打包、部署到测试环境。测试通过后进入到模拟环境或是直接发布的生产环境,这个过程可以是全自动的。但这个自动化的方式有一些公司用到了,但也有很多公司还不知道,他们的攻城师天天在做反复、没有多大意义的、浪费生命的事情。当然这种方式一转载 2016-04-12 09:26:38 · 4081 阅读 · 0 评论 -
线程的状态记录
原创 2016-04-08 10:44:32 · 779 阅读 · 0 评论 -
System.getProperty中key的释义
Key Description of Associated Value 中文描述java.version Java Runtime Environment versionJava 运行时环境版本java.vendor Java Runtime Environment vendo原创 2016-03-25 09:30:26 · 427 阅读 · 0 评论 -
Java流的操作使用
public static void main(String[] args){String sss = DataWhitelistsService.class.getResource("/").getPath();String s2 = sss.substring(0, sss.indexOf("/WEB-INF"));FileInputStream input = null;Fi原创 2016-03-23 23:25:27 · 671 阅读 · 0 评论 -
Java内存泄露监控工具
jstack -- 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属到正在运行的java程序中,看到 当时运行的java程序的java stack和native stack的信息, 如果现在运行的java程序呈现hung原创 2016-06-24 10:04:32 · 1447 阅读 · 0 评论 -
浏览器文本显示自动替换单词间空格数量大于一的空格,替换为一个空格
如图实际值,单词间有多个空格,但浏览器解析显示为一个空格。附浏览器空格处理:一、使用全角空格全角空格被解释为汉字,所以不会被被解释为HTML分隔符,可以按照实际的空格数显示。二、使用空格的替代符号替代符号就是在需要显示空格的地方加入替代符号,这些符号会被浏览器解释为空格显示。空格的替代符号有以下几种:名称编号描述 原创 2017-07-21 09:22:28 · 711 阅读 · 0 评论 -
UML中类图
在UML类图中,常见的有以下几种关系:泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1.泛化(Generalization)【泛化关系】:是一种继承关系,它指定了子类如何特化父类的所有特征和行为例如:老虎是动物的一种.【箭头指向】...原创 2018-07-31 09:43:07 · 205 阅读 · 0 评论 -
程序员必备工具
这世界上只有两种程序员,一种是大神,一种是菜鸡。大神总是不放过任何一个可以装逼的机会,而菜鸡只能仰望。在游戏中,RMB玩家总是能随便一个装备秒杀你几条街,万恶的资本家用钱掩盖了自己是菜鸡的事实。同样的,在coder界,装备也是作为菜鸡的你逆袭第一要径呀!经过一轮地毯式的访问和无数海阁导师大神的嘲笑,软妹总结出以下十个程序员必备效率工具,独家秘籍,看你骨骼惊奇,十块钱卖给你怎样,慢着别走,价格不满意转载 2018-01-11 17:30:54 · 22752 阅读 · 5 评论 -
Springmvc+activemq
Spring mvc4 + ActiveMQ 整合一、配置部分二、代码部分三、页面部分四、Controller控制器五、效果展示六、加入监听器七、最最重要的,别忘了打赏 一、配置部分ActiveMQ的安装这就不说了,很简单,这个例子采用maven构建,首先看一下pom.xmlproject xmlns="http://maven.apache转载 2018-01-11 11:01:20 · 316 阅读 · 0 评论 -
Java常用网址
Stackoverflow:有成千上万个好问题和答案 DZone:有相当多的开发者在这个网站上分享他们博客文章 LeetCode:如果有Java方面的面试问题可在教程中找到答案 Java SE技术文档:包含了在使用Java SE API时会用到的所有文档 Github:免费的将你的项目托管,有着当今流行的Java库和框架的优秀资源 Coursera:有关视频讲座的最好网站 Java W...原创 2016-01-09 10:58:13 · 1085 阅读 · 0 评论 -
jstack对JVM分析
一:jstackjstack命令的语法格式: jstack 。可以用jps查看java进程id。这里要注意的是:1. 不同的 JAVA虚机的线程 DUMP的创建方法和文件格式是不一样的,不同的 JVM版本, dump信息也有差别。本文中,只以 SUN的 hotspot JVM 5.0_06 为例。2. 在实际运行中,往往一次 dump的信息,还不足以确认问题。建议产生三次 dum转载 2016-01-08 08:59:22 · 534 阅读 · 0 评论 -
Eclipse中SVN路径中中文显示错乱问题小窍门
通过java.net.URLDecode.decode(String,String)可以获取到你的路径。(PS;找了很多种方法去解决,唯一找到这个方法暂用)原创 2016-03-14 15:26:05 · 2336 阅读 · 0 评论 -
byte转换为char
char转化为byte: public static byte[] charToByte(char c) { byte[] b = new byte[2]; b[0] = (byte) ((c & 0xFF00) >> 8); b[1] = (byte) (c & 0xFF); return b;原创 2016-03-25 16:21:27 · 6362 阅读 · 2 评论 -
SpringMvc与Mongodb搭建
版权所有维权必究spring版本:4.2.0MongoDb版本:3.4.6Spring与MongoDb关键jar:spring-data-mongodb-1.8.6.RELEASE.jar原创 2017-08-01 16:33:42 · 533 阅读 · 0 评论 -
JVM
摘要: 你对JVM内存组成结构和JVM垃圾回收机制是否熟悉,这里和大家简单分享一下,希望对你的学习有所帮助,首先来看一下JVM内存结构,它是由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示。JVM学习笔记 JVM内存管理和JVM垃圾回收JVM内存组成结构JVM内存结构由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示:1)堆所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xm转载 2017-07-21 17:12:11 · 296 阅读 · 0 评论 -
JSP与servert的关系详解
JSP是Servlet的扩展,在没有JSP之前,就已经出现了Servlet技术。Servlet是利用输出流动态生成HTML页面,包括每一个HTML标签和每个在HTML页面中出现的内容。JSP通过在标准的HTML页面中插入Java代码,其静态的部分无须Java程序控制,只有那些需要从数据库读取并根据程序动态生成信息时,才使用Java脚本控制。事实上,JSP是Servlet的一种特殊形原创 2017-07-21 17:09:04 · 2362 阅读 · 0 评论 -
查找String中中文的个数
String ss="dfdsf你好";int max = ss.replaceAll("[^\u4E00-\u9FA5]", "").length();System.out.println(ss.replaceAll("[^\u4E00-\u9FA5]", "")+"=="+ss.length()+"=="+max);原创 2016-03-21 09:57:17 · 994 阅读 · 0 评论 -
Log4j日志框架详解
1. 配置文件Log4J配置文件的基本格式如下: #配置根Loggerlog4j.rootLogger = [ level ] , appenderName1 , appenderName2 , … #配置日志信息输出目的地Appenderlog4j.appender.appenderName原创 2016-03-08 16:24:24 · 893 阅读 · 0 评论 -
全角半角互转
说明1、全角空格为12288,半角空给为32;2、其他字符半角(33-126),与全角(65281-65374)相互对应3、以上2中对应差值为65248例子://全角转半角public String toSB(String str){if(str == null){return null;}char[] chars = str.toCharArray();原创 2016-03-31 14:59:26 · 704 阅读 · 0 评论 -
ActiveMQ源码下载及编译
一、准备 Eclipse Luna 版本,本身已经支持Git和Maven。 安装了apache-maven,我使用的是3.1.1。 拥有一个Github账户。二、导入源码 1、启动Eclipse,【File】-【Import】,选择【Git】-【Project from Git】,点【Next】继续。转载 2016-01-19 16:05:15 · 2647 阅读 · 0 评论 -
常用正则表达式大全!
匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^x00-xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:ns*r 评注:可以用来删除空白行 匹配HTML标记的正则表达式:]*>.*原创 2016-01-18 13:39:04 · 375 阅读 · 0 评论 -
使用JDK生成证书
1、在命令行中进入%JAVA_HOME%/bin目录下执行以下命令:keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepasschangeit -keystore server.keystore -validity 3600参数值输入如下:原创 2015-12-30 08:43:23 · 968 阅读 · 0 评论 -
KeyTool用法详解,CA证书
Keytool用法说明Keytool是一个key与cert的管理工具。使用keytool可以管理public key、private key,以及与key之相关的certificate。 1、command和option说明1.1 command使用keytool工具时,可以使用15种命令: 1.2 optionOption转载 2015-12-29 17:08:54 · 6353 阅读 · 0 评论 -
Java套接字编程
本文描述了 Java7 中 keytool 工具的使用方法,并结合具体代码片段,向读者阐述如何使用 JSSE 提供的 API 进行安全套接字编程,以及如何进行 SSL/TSL 程序调试等技巧,让读者可以学以致用。概述利用 Java 的 JSSE(Java Secure Socket Extension)技术,我们可以方便的编写安全套接字程序,转载 2015-12-29 17:04:09 · 765 阅读 · 0 评论 -
Zookeeper原理
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。Zookee转载 2015-12-14 08:59:48 · 272 阅读 · 0 评论 -
setFeature的妙用,解析XML时,外部注入预防即XXE攻击
SAX2采用feature和property这两种办法对解析器进行设置。SAX不但没有限制feature的种类,还鼓励其他组织和个人创建自己的feature。这些feature表示解析器的功能,通过设置feature,我们可以控制解析器的行为,例如,是否对XML文件进行验证等等。下面我们演示如何使用feature。XMLReader中有getFeature和setFeature两个方法。getFe原创 2015-12-29 08:35:27 · 16786 阅读 · 0 评论 -
JS - RegExp 笔记
var str = "L.Rain"; str = str.replace(/[R|n]/g , "*"); new RegExp("[R|n]","gi") RegExp 类。RegExp对象的构造函数可以带一个或两个参数.第一个参数是描述需要进行匹配的模式字符串;如果有第二个参数,这个参数则指定了额外的处理指令. 最基本的正则表达式就是普通的字符串. var r转载 2015-10-26 17:34:00 · 475 阅读 · 0 评论 -
Java获取文件路径/项目路径的方式
在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。另:在Jsp,Servlet,Java中详细获得路径的方法!1.jsp中取得路径: 以工程名为TEST为例: (原创 2015-10-26 11:40:17 · 1497 阅读 · 0 评论 -
Java流的深入理解
首先,流是什么?流是个抽象的概念,是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以“流”的方式进行。设备可以是文件,网络,内存等。流具有方向性,至于是输入流还是输出流则是一个相对的概念,一般以程序为参考,如果数据的流向是程序至设备,我们成为输出流,反之我们称为输入流。可以将流想象成一个“水流管道”,水流就在这管道中形成了,自然就出现了方向的概念转载 2015-11-10 15:58:35 · 381 阅读 · 0 评论 -
ActiveMq初探一
1、下载ActiveMQ http://activemq.apache.org/ 3)4)5)说明::我是在Windows下研究的,故选择Windows版本3 解压zip文件得到ActiveMq目录接口说明:与Tomcat类似。4.在Eclipse中新建一个Demo项目,导入的jar包如图:Sender原创 2016-01-19 16:18:46 · 601 阅读 · 0 评论 -
常用正则
blankString:"!/^[\\s ]*$/",blankString1:"/[\\w ]*/",intege:"/^-?[1-9]\\d*$/",//整数intege1:"/^[1-9]\\d*$/",//正整数intege2:"/^-[1-9]\\d*$/",//负整数oneToThree:"/^[0-3]$/",//0-3的正整数num:"/^(原创 2015-12-04 17:28:41 · 456 阅读 · 0 评论 -
jvisualvm远程调用tomcat测试性能
前一段测试系统崩溃过一回,所以想远程监控一下jvm的运行情况,我在网上也找了不少文章和办法,试了好几次都没成功,今天算试成功了,但是不太 完美,因为需要将Linux的防火墙关掉才可以连接,我尝试将连接的端口号加到iptables中,重启防火墙,也不行。所以先记录下来,以后再看看是什 么问题。1.linux下tomcat安装目录下的bin文件夹中的catalina.sh端口号:109转载 2016-01-08 10:26:04 · 470 阅读 · 0 评论