java
文章平均质量分 77
dangerous_fire
这个作者很懒,什么都没留下…
展开
-
从Java转到C++感悟
从我刚接触程序时,学习的就是c/c++,大学毕业后去北京找工作,c++岗位需求少,自己学的又浅,很不好找。幸运的是从学校走时在别人宿舍地上捡到一本被遗弃的Java思想,并被我带到北京垫了床脚。了解到Java岗位需求多,所以尝试学习Java,可能是生活的压力,一本厚厚的书,只用了一周就看完了,并编了些测试小程序。将海投岗位转成Java,并很快找到了工作,开始了我Java程序开发生涯,并一晃十年过去了。刚开始做Java客户端开发,后来又做后台服务开发,基本把Java的里里外外都接触到了,现在又因为业务需要需使用原创 2020-12-03 21:49:31 · 7439 阅读 · 5 评论 -
Java反序列化漏洞加固方法
1、替换java包解决应用层面问题。方法是使用官方提供的4.4.1版本commons-collections4-4.1.jar包替换应用lib目录下的commons-collections.jar,再重启应用。2、解决中间件层面问题。方法一:升级weblogic补丁包,升级weblogic 10.3.6.12的补丁包p22248372_1036012_Generic.zip,直转载 2016-05-07 17:24:09 · 3378 阅读 · 0 评论 -
Myeclipse启动不了的解决方法
我们在开发过程中经常在加载大工程时由于项目很大,导致编译时间很长。或是其他原因导致进度条有时候一直在不停地跑,占用了大量内存,在无奈之下直接将进程kill掉,当再次打开,这时候悲剧的事情发生了 。 发现MyEclipse启动不了了,进程的内存大小永远都是恒定值。陷入了一个纠结中。 这里就说一下在工作经常遇到这样的问题是怎样解决的: 环境说明 IDE版本: Mye转载 2016-05-07 09:58:06 · 8986 阅读 · 2 评论 -
Unable to compile class for JSP
使用myeclipse开发项目,部署的到tomcat中运行。调用jsp文件时错误type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.原创 2016-03-01 15:54:55 · 582 阅读 · 0 评论 -
Dom4j设置编码的问题
dom4j设置编码,使用OutputFormat类 OutputFormat format = OutputFormat.createPrettyPrint();// 创建文件输出的时候,自动缩进的格式 format.setEncoding("UTF-8");//设置编码 XMLWriter writer;原创 2016-03-15 10:48:14 · 2087 阅读 · 0 评论 -
cmd运行java 找不到或无法加载主类的问题
注:CLASSPATH值的最后没;(分号)会出现以下错误错误:找不到或无法加载主类HelloWorld。转载 2016-01-16 12:51:55 · 2129 阅读 · 0 评论 -
JAVA 列表排序
在进行java开发时,经常需要对list进行排序,本文对此进行小结。总结了两种方法,第一种是通过原生支持的Comparator做排序,第二种是通过apache-common的工具包进行排序。相比而言,第二种代码可读性、易用性更强,推荐使用第二种。一、排序目标我们要对User类组成的list进行排序,先按年龄age倒序排,再按等级grade正序排,如果grade为null,视为最大值,要排在转载 2015-03-28 09:37:55 · 1753 阅读 · 0 评论 -
在Java中直接调用js或其它解释性语言代码
JDK1.6版添加了新的ScriptEngine类,允许用户直接执行js代码。在Java中直接调用js代码不能调用浏览器中定义的js函数,会抛出异常提示ReferenceError: “alert” is not defined。 package com.sinaapp.manjushri; import javax.script.ScriptEngine;转载 2014-11-14 10:33:50 · 3938 阅读 · 1 评论 -
解决 - java.lang.OutOfMemoryError: unable to create new native thread
以前常遇到此问题,一般想法就是修改配置启动参数,想方设法增大参数,认为这样可以避免内存溢出。但效果基本上还是会出错。在网上找到一篇文章后转变了思路,问题解决了。原创 2014-10-27 18:20:05 · 30166 阅读 · 3 评论 -
用java调用oracle存储过程总结
这段时间开始学习写存储过程,主要原因还是因为工作需要吧,本来以为很简单的,但几经挫折,豪气消磨殆尽,但总算搞通了,为了避免后来者少走弯路,特记述与此,同时亦对自己进行鼓励。一:无返回值的存储过程存储过程为:CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) ASBEGIN INSE转载 2014-05-10 16:55:18 · 499 阅读 · 0 评论 -
java中获取当前项目类路径下的配置文件
Java中,经常要获取当前的路径,用来加载一些配置文件String path = Test.class.getResource("/").toString();path = path.replaceAll("file:/", "")+"conf/test.xml";转载 2013-07-11 11:38:20 · 3289 阅读 · 0 评论 -
身份证号码验证算法
(一)18身份证号码的结构公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。1、地址码表示编码对象常住户口所在县(市、旗、区)的行政区域划分代码,按GB/T2260的规定执行。2、出生日期码表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日代码之间不用分隔转载 2016-06-24 16:32:18 · 658 阅读 · 0 评论 -
java 解压zip中文文件 出现错误
java 解压zip中文文件 出现错误 java.lang.IllegalArgumentException: MALFORMED解决这个错误需要 jdk 1.7及以上版本支持并在创建ZipFile 时指定中文字符集gbkZipFile zipFile = new ZipFile(file, Charset.forName("gbk"));转载 2016-07-26 09:33:41 · 4510 阅读 · 0 评论 -
hibernate 遇到Source not found for 错误
以下代码运行时有个没有任何错误提示,但无法取得结果@Servicepublic class KCardService extends HibernateEntityHwattDao{ @SuppressWarnings("unchecked") public List getCardsByEmployee(KEmployee employee,Date start,Date end){原创 2016-10-14 17:53:09 · 2667 阅读 · 0 评论 -
java中无符号类型的解决方案
1.无符号和有符号计算机中用补码表示负数,并且有一定的计算方式;另外,用二进制的最高位表示符号,0表示正数、1表示负数。这种说法本身没错,可是要有一定的解释,不然它就是错的,至少不能解释,为什么字符类型的-1二进制表示是“1111 1111”16进制表示为FF,而不是1000 0001。在计算机中,可以区分正负的类型,称为有符号类型,无正负的类型,称为无符号类型。使用二进制中的最高转载 2017-03-15 17:09:38 · 13996 阅读 · 0 评论 -
tomcat启动时报:IOException while loading persisted sessions: java.io.EOFException的解决方案
错误的原因是:EOFException表示输入过程中意外地到达文件尾或流尾的信号,导致从session中获取数据失败。这是由于tomcat上次非正常关闭时有一些活动session被持久化(表现为一些临时文件),在重启时,tomcat尝试去恢复这些session的持久化数据但又读取失败造成的。此异常不影响系统的使用。到tomcat安装目录下的/work/localhost/{项目目录}/se转载 2017-03-14 08:54:32 · 491 阅读 · 0 评论 -
通过 JACOB 实现 Java 与 COM 组件的互操作
软件的互操作性是一个我们经常面临的问题,如果 Java 可以自由的调用其他语言和平台的成熟代码,可以充分利用您的 Java 技能,大大提高您的生产力。现有的 Java COM 互操作技术有很多种实现,JACOB 开源项目提供了一个简单方便的通用调用框架COM 组件提供了一种与其他语言的互操作方式,叫做自动化(Automation)。现有的 Java COM 互操作的解决方案有很多种,由于设计目转载 2017-03-13 18:04:13 · 6481 阅读 · 0 评论 -
Weblogic多应用部署在一个域下导致session冲突
Weblogic多应用部署在一个域下导致session冲突问题解决办法 最近在Weblogic的一个域下面同时部署了多个应用,出现了session冲突的问题。其现象是这样的,访问A正常,但是从应用A跳转到应用B后,应用A的session立马就失效了。因为以前在tomcat上也遇到过类似的情况,当时立马就想到应该是session冲突的问题,每个应用在写保存session信息的c转载 2017-03-29 16:23:05 · 1238 阅读 · 0 评论 -
weblogic 安装部署纯静态html注意事项
weblogic安装部署的文件夹下必须要有 WEB-INF\web.xml 文件,否则无安装部署原创 2017-03-29 10:51:49 · 4895 阅读 · 0 评论 -
spring3mvc中使用ajax传json中文乱码解决
因为在controller中返回json用了@ResponseBody,而spring源码中@ResponseBody 的实现类发现其默认的编码是 iso-8859-1,而项目用的编码为utf-8,所以传中文会出现乱码,解决办法是不用注解,直接用response,转换编码。原创 2014-05-15 17:42:59 · 2709 阅读 · 0 评论 -
利用 jsoup 下载保存文件
//Open a URL StreamResponse resultImageResponse = Jsoup.connect(imageLocation).cookies(cookies).ignoreContentType(true).execute(); // output hereFileOutputStream out = (new FileOutputStream(new ja转载 2017-03-18 10:13:38 · 6190 阅读 · 1 评论 -
gecco爬虫多个HtmlBean 匹配同一个matchUrl的问题
两个爬虫HtmlBean如下:第一个HtmlBean,获取小说内容@Gecco( matchUrl="http://www.xs2345.com/read/18/18914/([^0{1}]|{index}).html", pipelines="xybwPipeline" )/*** 获取小说内容*/public class XYBW implements Ht原创 2017-01-20 18:06:35 · 2302 阅读 · 0 评论 -
java 多线程 CountDownLatch用法
CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。主要方法 public CountDownLatch(int count); public void countDown(); public void await() throws InterruptedException 构造方法参数指定了计数的次数co转载 2017-01-19 09:14:58 · 217 阅读 · 0 评论 -
java命令行运行问题
使用java命令运行当前目录下有两个jar文件,互相依赖。jimi-1.0.jarjitac-0.3.0.jarjava -cp "jimi-1.0.jar;jitac-0.3.0.jar" org.roqe.jitac.Jitac test.jpg以上这条命令需要注意以下几点:1. -cp 和 -jar 不要同时使用。当使用-jar时大部分版本会忽略-cp,-classp原创 2016-12-29 15:12:38 · 370 阅读 · 0 评论 -
java classpath
1、class搜索路径的重要性 理解class搜索路径对所有Java开发人员来说都很重要,但是,IDE的广泛使用掩盖了这项技术,使大家普遍对它缺乏了解,甚至包括好多老鸟。这个问题在开发用于发布的应用程序(原文为distributed applications,但好像译为“分布式应用”有点晦涩)时尤其严重,因为应用程序运行时的系统环境可能和开发时的大不相同。本文详细描述了某些Java类被转载 2013-04-22 02:17:46 · 820 阅读 · 0 评论 -
Tomcat 启动内存参数设置
其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置 三、实例,以下给出1G内存环境下java jvm 的参数设置参考: JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:M转载 2012-08-11 09:55:16 · 17560 阅读 · 0 评论 -
Tomcat - 处理HTTP请求过程
假设来自客户的请求为: http://localhost:8080/wsota/wsota_index.jsp 1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得 2) Connector把该请求交给它所在的Service的Engine来处理,并等待来自Engine的回应 3) Engine获得请求localhost/wsota转载 2011-12-28 15:16:39 · 553 阅读 · 0 评论 -
Tomcat- 2 模块
Tomcat 分为很多组件,这些组件一起协同工作。这些组件包括: Server,Service,Connector,Engine,Host,Context,Wrapper. 这么一堆组件,看起来比较复杂,怎么去理解呢?本文主要来个top level view 。 回到我们最初的对servlet 容器的理解,一个servlet 容器最重要的功能无非就是接受http 请求,解析http 请转载 2011-12-28 15:04:30 · 666 阅读 · 0 评论 -
native2ascii
背景:在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,比如常见的validator验证用的消息资源(properties)文件就需要进行Unicode重新编码。原因是java默认的编码方式为Unicode,而我们的计算机系统编码常常是GBK等编码。需要将系统的编码转换为java正确识别的编码问题就解决了。1、native2ascii简介:native2ascii 是s转载 2011-12-28 08:52:56 · 477 阅读 · 0 评论 -
java安全特性
首先,java安全特性为不同的使用者提供了不同的解决方式1.运行java程序的用户 内置安全功能保护您的文件和信息保密性,并且证实每位代码提供者的身分。2.开发者 可以使用API方法,将其纳入你的程序的安全功能,包括加密服务和安全检查。3.系统管理者,运行商,及用户 JDK工具管理你的密钥库;为jar文件生成签名;验证签名的真实性和完整性;创建和修改的政策翻译 2011-11-29 13:38:11 · 1189 阅读 · 0 评论 -
java打开文件夹
一、调用windows系统函数Runtime.getRuntime().exec("cmd /c start h:\\movie");或者如下Runtime.getRuntime().exec(new String[] {"cmd","/c","start","","h:/movie"});注:这里/c是指定的,因为系统是装在c盘在。二、直接利用java apijava.转载 2011-11-20 23:44:52 · 1476 阅读 · 0 评论 -
Exception loading sessions from persistent storage
严重: Exception loading sessions from persistent storagejava.io.EOFException at java.io.ObjectInputStream$PeekInputStream.readFully(Obje转载 2011-10-09 17:32:33 · 1227 阅读 · 0 评论 -
PermGen space
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。说说为什么会内存益出:这一部分用于存放Class和Meta转载 2011-10-12 10:44:34 · 490 阅读 · 0 评论 -
java 10大常见异常
NO.1 java.lang.NullPointerExceptio 这个异常大家肯定都经常遇到,异常的解释是 "程序遇上了空指针 ",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径转载 2011-08-30 10:13:36 · 481 阅读 · 0 评论 -
web.xml配置详解
1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始。这个头声明可以使用的XML版本并给出文件的字符编码。DOCYTPE声明必须立即出现在此头之后。这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内转载 2011-08-15 11:46:14 · 558 阅读 · 0 评论 -
java mail 通过smtp验证发送
import javax.mail.*;import javax.mail.internet.*;import java.util.*;public class SendMail{ public static void main(String args[]) throws Exception { String host = "smtp.163.com"; String from = "javamail@163.com"; String to = "ja转载 2011-04-14 17:46:00 · 892 阅读 · 0 评论 -
Tomcat - 目录
tomcat |---bin Tomcat:存放启动和关闭tomcat脚本; |---conf Tomcat:存放不同的配置文件(server.xml和web.xml); |---doc:存放Tomcat文档; |---lib:存放Tomcat运行需要的库文件(JARS); |---logs:存放Tomcat执行时的LOG文件; |---src:存放Tomcat的源代码;转载 2011-12-28 15:19:35 · 499 阅读 · 0 评论 -
Tomcat - server.xml配置简介
下面讲述这个文件中的基本配置信息,更具体的配置信息请参考tomcat的文档: Server: 1、port 指定一个端口,这个端口负责监听关闭tomcat的请求 2、shutdown 指定向端口发送的命令字符串 Service: 1、name 指定service的名字 Connec转载 2011-12-28 15:30:24 · 596 阅读 · 0 评论 -
Tomcat-1 功能
我们知道servlet规范:规定servlet的生命周期:init->service->doXXX-->destory()。还规定一个请求必须被封装成HttpServletRequest再由servlet的service方法来处理,并用HttpServletResponse来表示返回对象。还规定Session必须被封装成HttpSession的形式。Servlet规范还规定了Fil转载 2011-12-28 14:58:01 · 521 阅读 · 0 评论 -
取石子游戏,JAVA实现
有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。Input 输入包含若干行,表示若干种石子的初始情况,其中每一行包含两个非负整数a和b,表示两堆原创 2012-08-09 13:07:06 · 5389 阅读 · 2 评论