![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 80
安迪
坚持不懈。充满自信。楽しい毎日=幸せな一生
展开
-
(转)Struts2调用流程
1. 当Servlet容器接收到一个请求后,将请求交给你在wed.xml文件中配置的过滤器FilterDispatcher。 FilterDispatcher类的处理流程: 1.1 FilterDispatcher类实现了StrutsStatics, Filter这二个接口。StrutsStatics类定义了Struts2的常量。在这里不详细介绍了。主要介绍Filter接口类,它核心有三个主要方法...2010-01-07 14:11:56 · 161 阅读 · 0 评论 -
java使用ImageReader判断图片的类型
package com.javacodegeeks.snippets.desktop;import java.io.File;import java.io.IOException;import java.util.Iterator;import javax.imageio.ImageIO;import javax.imageio.ImageReader;import javax.i转载 2016-11-02 13:06:58 · 3422 阅读 · 0 评论 -
Eclipse将引用了第三方jar包的Java项目打包成jar
方案一:用Eclipse自带的Export功能步骤1:准备主清单文件 “MANIFEST.MF”,由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目下建立文件MANIFEST.MF,内容如下:Manifest-Version: 1.0Class-Path: lib/commons-codec.jar lib/commons-转载 2015-11-25 19:24:52 · 1925 阅读 · 0 评论 -
eclipse生成可执行jar包
相信大家在开发java的时候一定会遇到要求将java工程打包成可运行的jar的需求,今天我在这篇博客中详细讲解一下生成可运行jar的两种方法,亲测完全可行。1. 工程中不包含第三方的jar包这种情况比较简单,选中需要生成jar的工程,右击-->Export,出现如下的窗口选中java--- > JAR file,出现如下窗口,此处要:选中 Expor转载 2015-11-25 19:21:43 · 1633 阅读 · 0 评论 -
Eclipse构建Maven项目
1. 安装m2eclipse插件 要用Eclipse构建Maven项目,我们需要先安装meeclipse插件 点击eclipse菜单栏Help->Eclipse Marketplace搜索到插件Maven Integration for Eclipse 并点击安装即可,如下图: 安装成成之后我们在Eclipse菜单栏中点击File->New->Othe转载 2015-11-25 19:19:05 · 16040 阅读 · 0 评论 -
check $m2_home environment variable and mvn script match
check $m2_home environment variable and mvn script match转载 2015-11-10 17:01:40 · 2381 阅读 · 0 评论 -
使用JOTM进行Tomcat的JTA调用
前段时间碰到一个需要访问多个数据库的例子,由于项目上是采用tomcat作为项目开发和布署,所以就没有考虑采用特定厂商的JTA实现,而是通过一个开源的JTA实现来完成tomcat和多个数据库之间的直接交互。 多数据库访问最直接的问题就是在一个service中,存在着多个数据库dao对象,当前面的dao对象操作完成之后,如果后面的某一个dao访问出错,那么这个service应该如何进行回转载 2015-07-20 11:12:35 · 2204 阅读 · 0 评论 -
JUnit4 详解(*Djunit目前运行在JDK7会报错)
JUnit4是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写。先简单解释一下什么是Annotation,这个单词一般是翻译成元数据。元数据是什么?元数据就是描述数据的数据。也就是说,这个东西在Java里面可以用来和public、static等关键字一样来修饰类名、方法名、变量名。修饰的作用描述这个数据是做什么用的,差不多和publ转载 2014-07-25 11:05:43 · 3092 阅读 · 0 评论 -
Java NIO原理和使用
Java NIO非堵塞应用通常适用用在I/O读写等方面,我们知道,系统运行的性能瓶颈通常在I/O读写,包括对端口和文件的操作上,过去,在打开一个I/O通道后,read()将一直等待在端口一边读取字节内容,如果没有内容进来,read()也是傻傻的等,这会影响我们程序继续做其他事情,那么改进做法就是开设线程,让线程去等待,但是这样做也是相当耗费资源的。 Java NIO非堵塞技术实际是转载 2014-07-01 13:19:55 · 527 阅读 · 0 评论 -
statement、prepareStatement、callableStatement的使用
CallableStatement 对象为所有的DBMS 提供了一种以标准形式调用已储存过程的方法。已储 存过程储存在数据库中。对已储存过程的调用是 CallableStatement对象所含的内容。这种调用是 用一种换码语法来写的,有两种形式:一种形式带结果参,另一种形式不带结果参数。结果参数是 一种输出 (OUT) 参数,是已储存过程的返回值。两种形式都可带有数量可变的输入(IN 参数)、 输转载 2014-07-01 13:48:22 · 762 阅读 · 0 评论 -
谈eclipse的jre配置
Eclipse运行时需要JRE的支持,因为Eclipse包里是不带JRE的,因此要使用Eclipse首先就要安装好JRE或JDK然后给Eclipse做相应配置。大致说来,配置Eclipse启动时使用JRE有四种方式:一、把jre目录直接拷贝到eclipse目录下面二、在eclipse.ini里面添加,例如:-vmD:\jre\bin\javaw.exe注意,一定要在-v转载 2013-11-23 08:43:42 · 20628 阅读 · 0 评论 -
JAVA多线程实现的三种方式
最近在做代码优化时学习和研究了下JAVA多线程的使用,看了菜鸟们的见解后做了下总结。1.JAVA多线程实现方式JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。2.继承Thread类实现多线程继转载 2016-08-25 10:43:23 · 8826 阅读 · 1 评论 -
MyBatis mapper文件中的变量引用方式#{}与${}的差别
ibatis中使用select top #num# * from tableName出现错误。由于初次用ibatis还不知道在它里边拼写SQL语句的一些规则,导致一些自认为很平常的SQL语句,在它这里翻了船。select top #number#这种写法是不正确的,原因待查。正确的书写方式是 select top $number$ 。下面这段话是在网络里找到的它也没给出具体的解释,只是说这是什么S...转载 2018-02-11 08:46:24 · 5165 阅读 · 0 评论 -
(转)在java程序中如何知道数据库表的主键
有同事问到在程序中怎样知道数据库表中那些字段是主键。当时不知道,晚上回来看了看JDK的文档。 在使用JDBC来查询数据库的时候,通常的步骤是:1. 注册驱动程序2. 获取数据库连接3. 执行查询语句4. 关闭连接。 在获得数据库连接后,就可以通过getMetaData()方法来获取DatabaseM...原创 2010-12-11 07:59:16 · 704 阅读 · 0 评论 -
(转)浅谈JDBC事务和JTA (XA)事务
事务简介 一般情况下,J2EE应用服务器支持JDBC事务、JTA(Java Transaction API)事务(一般由容器来进行管理)。通常,最好不要在程序中同时使用上述三种事务类型,比如在JTA事务中嵌套JDBC事务。第二方面,事务要在尽可能短的时间内完成,不要在不同方法中实现事务的使用(事务的嵌套要求更加良好的设计)。 JDBC事务 在JDBC中怎样将多个SQL语句组合成一个...原创 2010-11-10 09:46:10 · 285 阅读 · 0 评论 -
(转)ArrayList实现
ArrayList是List接口的一个可变长数组实现。实现了所有List接口的操作,并允许存储null值。除了没有进行同步,ArrayList基本等同于Vector。在Vector中几乎对所有的方法都进行了同步,但ArrayList仅对writeObject和 readObject进行了同步,其它比如add(Object)、remove(int)等都没有同步。 1.存储 ArrayList使用...原创 2011-02-19 08:34:06 · 85 阅读 · 0 评论 -
(转)iReport与JasperReport简介
一、iReport与JasperReport简介1.1 简介JasperReport是报表的引擎部分,界面设计是用iReport。为什么选择这两个软件呢?因为这两个软件都是开源的,即免费的(虽然某些文档收费,但是磨灭不了我们使用它的理由)。JasperReport是一个报表制作程序,用户按照它制定的规则编写一个XML文件,然后得到用户需要输出的格式文件。它支持输出...原创 2011-01-31 08:45:33 · 255 阅读 · 0 评论 -
Java, 面试题, Spring
Java, 面试题, Spring 113. 什么是aop,aop的作用是什么? Oop:纵向的业务 Aop:oop的一个横向的服务,是对oop进一步的补充,提供安全、事务、日志等的集中式处理,相关的装备before、around、after 114. aop中的关键名词有些那些,相互关系是什么? 代理 拦截器(顾问 advisor) 装备(advice) 目标对象 关切点:那些方...原创 2010-11-05 14:36:54 · 86 阅读 · 0 评论 -
(转)用java生成条形码,barcode4j得应用
最近一个oa系统用到了条形码,刚开始打电话给卖条形码打印机的那个公司(因为客户在他那里买的),看能不能提供一些接口规范什么的,结果说要提供接口可以,但必须交钱,心想算了,还是自己网上找找自己想办法解决以下吧。查阅了一下资料,感觉barcode4j还是比较好用。下面把心得和大家简单的分享一下。 1、 首先我到http://barcode4j.krysalis.org/网站上下载了barcode4...原创 2011-01-26 09:54:42 · 401 阅读 · 0 评论 -
(转)条形码barcode4j的使用
原创 2011-01-26 09:51:58 · 163 阅读 · 0 评论 -
(转)一个简单的Spring的AOP例子
经过这段日子的学习和使用Spring,慢慢地体会到Spring的优妙之处,正在深入地吸收Spring的精华,呵呵。现在写的这个只是个简单AOP例子,包括前置通知,后置通知,环绕通知,和目标对象。写这个例子的主要目标只是想让想学AOP的能更快地入门,了解一下如何去配置AOP里面的东东。目标对象的接口:IStudent.java 1 /**...原创 2011-05-04 10:31:08 · 100 阅读 · 0 评论 -
(转)JAR文件包及jar命令详解
常常在网上看到有人询问:如何把 java 程序编译成 .exe 文件。通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像.chm 文档一样双击运行了;而另一种是使用 JET 来进行 编译。但是 JET 是要用钱买的,而且据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣。所以,使用制作可执行 JAR 文件包的方法就是最...原创 2010-12-19 07:39:00 · 97 阅读 · 0 评论 -
(转)ECSide入门(资料整理)
ECSide是有一个基于jsp tag的开源列表组件.简单的说,它就是一组可以帮助你快速实现强大的列表的jsp标签. 它的工作原理很简单.将您将要展现的列表的数据集合(Collection),放入request/pagecontext/session内(使用setAttribute方法.这个工作可以在action/servlet里完成,也可以在jsp页面内完成),然后页面跳转到使用ECSi...2010-03-24 14:14:06 · 91 阅读 · 0 评论 -
Java数据类型和MySql数据类型对应表
类型名称显示长度数据库类型JAVA类型JDBC类型索引(int)描述 VARCHARL+NVARCHARjava.lang.String12 CHARNCHARjava.lang.String1 BLOBL+NBLOBjava.lang.byte[]转载 2013-06-06 16:53:22 · 653 阅读 · 0 评论 -
java 程序内存溢出
内存溢出与数据库锁表的问题,可以说是开发人员的噩梦,一般的程序异常,总是可以知道在什么时候或是在什么操作步骤上出现了异常,而且根据堆栈信息也很容易定位到程序中是某处出现了问题。内存溢出与锁表则不然,一般现象是操作一般时间后系统越来越慢,直到死机,但并不能明确是在什么操作上出现的,发生的时间点也没有规律,查看日志或查看数据库也不能定位出问题的代码。更严重的是内存溢出与数据库锁表在系统开发和单元测转载 2009-06-10 22:57:00 · 2617 阅读 · 2 评论 -
利用java操作Excel文件
很久以来都想研究一下利用java操作Excel的方法,今天没事,就稍微了解了一下,特总结一下。利用java操作Excel,有个开源的东东-jxl.jar,可以到http://sourceforge.net/project/showfiles.php?group_id=79926下载。一.读取Excel文件内容java 代码/**读取Excel文件的内容 * @转载 2009-05-12 09:32:00 · 518 阅读 · 0 评论 -
从 Java 应用程序动态生成 PDF 文件
如果应用程序需要动态生成 PDF 文档,则需要 iText 库。开放源码的 iText 库使 PDF文档的创建能够在瞬间完成。本文介绍了 iText 并提供了使用它从 Java ™ 技术应用程序生成 PDF文档的由浅入深的指南。我们创建了一个示例应用程序以更好地理解 iText。很多应用程序要求动态生成 PDF 文档。这类应用程序包括银行生成用于电子邮件投递的客户报表,到读转载 2009-03-23 13:49:00 · 695 阅读 · 0 评论 -
Java的类装载器(Class Loader)和命名空间(NameSpace)
摘要Java的类装载器是Java动态性的核心,本文将向大家简要介绍Java的类装载器,及相关的parent delegation模型,命名空间,运行时包等概念,同时讨论一些在学习中容易混淆的问题。 类装载器的功能及分类顾名思义,类装载器是用来把类(class)装载进JVM的。JVM规范定义了两种类型的类装载器:启动内装载器(bootstrap)和用户自定义装载器(user-de转载 2009-03-20 18:22:00 · 490 阅读 · 0 评论 -
Java集合对象排序测试
Java集合对象排序测试 Java API针对集合类型排序提供了两种支持:java.util.Collections.sort(java.util.List) java.util.Collections.sort(java.util.List, java.util.Comparator) 第一个方法要求所排序的元素类必须实现java.lang.Comparable接口。第二个方法要转载 2009-01-13 20:41:00 · 1290 阅读 · 0 评论 -
Java 中Iterator 、Vector、ArrayList、List 使用深入剖析
线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。 Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHa转载 2009-01-13 20:35:00 · 1212 阅读 · 0 评论 -
Vector、ArrayList和List的异同
线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。 Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack├Set│├HashSet│├TreeSet│└Link转载 2008-06-08 09:48:00 · 504 阅读 · 0 评论 -
Java:重写equals()和hashCode()
1.何时需要重写equals()当一个类有自己特有的“逻辑相等”概念(不同于对象身份的概念)。2.设计equals()[1]使用instanceof操作符检查“实参是否为正确的类型”。[2]对于类中的每一个“关键域”,检查实参中的域与当前对象中对应的域值。[2.1]对于非float和double类型的原语类型域,使用==比较;[2.2]对于对象引用域,递归调用equals方转载 2008-08-26 17:16:00 · 625 阅读 · 0 评论 -
Java中的事务处理(1)
Java中的事务处理 一般情况下,J2EE应用服务器支持JDBC事务、JTA(Java Transaction API)事务、容器管理事务。一般情况下,最好不要在程序中同时使用上述三种事务类型,比如在JTA事务中嵌套JDBC事务。第二方面,事务要在尽可能短的时间内完成,不要在不同方法中实现事务的使用。下面我们列举两种事务处理方式。 1、JavaBean中使用JDBC方式进行事务处理 在JDB转载 2008-08-26 16:19:00 · 936 阅读 · 0 评论 -
常用正则表达式
1。[size=12px]1。^/d+$ //匹配非负整数(正整数 + 0) 2。^[0-9]*[1-9][0-9]*$ //匹配正整数 3。^((-/d+)|(0+))$ //匹配非正整数(负整数 + 0) 4。^-[0-9]*[1-9][0-9]*$ //匹配负整数 5。^-?/d+$ //匹配整数 6。^/d+(/./d+)?$ //匹配非负浮点数(正浮点数 + 0) 7。^转载 2008-08-25 15:52:00 · 388 阅读 · 0 评论 -
Java 多线程的Thread类和Runnable接口
Thread 类 Thread 类是一个具体的类,即不是抽象类,该类封装了线程的行为。要创建一个线程,程序员必须创建一个从 Thread 类导出的新类。程序员必须覆盖 Thread 的 run() 函数来完成有用的工作。用户并不直接调用此函数;而是必须调用 Thread 的 start() 函数,该函数再调用 run()。下面的代码说明了它的用法: 创建两个新线程import java.转载 2008-06-09 15:33:00 · 838 阅读 · 0 评论 -
java 类型的初始值
基本变量:byte,short,int,long 初始化为0boolean初始化为falsefloat,double初始化为0.0char初始化为 /u0000引用类型初始化为null转载 2009-06-10 22:33:00 · 1933 阅读 · 0 评论 -
JAVA基础知识精华总结
1、 对象的初始化 (1) 非静态对象的初始化 在创建对象时,对象所在类的所有数据成员会首先进行初始化。 基本类型:int型,初始化为0。 如果为对象:这些对象会按顺序初始化。 ※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。 构造方法的作用就是初始化。 (2) 静态对象的初始化 程序中主类的静态变量会在main方法执行前初始化。 不仅第一次创建对象时,类中的所有静态变量都初始化,并且转载 2009-06-24 08:03:00 · 517 阅读 · 0 评论 -
JAVA 事务处理(2)
一、什么是Java事务通常的观念认为,事务仅与数据库相关。事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性 (isolation)和持久性(durability)的缩写。事务的原子性表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。一致性表示 当事务执行失败时,所有被该事务影响的数据都应该恢复到事务执转载 2009-07-10 06:22:00 · 532 阅读 · 0 评论 -
Java添加、修改MS AD用户密码&配置AD、CA、SSL,绑定keystore
在这就简单的介绍一下配置过程,未提到的设置基本就都采用默认即可。 1)安装AD: 开始 -> 运行 -> dcpromote 域名: testad.com.cn NT域名: ldap 即 Fully Qualified Domain Name (FQDN) 为 ldap.testad.com.cn 注意,一定要先安装 IIS , 再安装 CA. 2)安装 IIS:转载 2012-03-23 14:56:21 · 5489 阅读 · 0 评论 -
java字符串分解 StringTokenizer用法
Java中substring方法可以分解字符串,返回的是原字符串的一个子字符串。如果要讲一个字符串分解为一个一个的单词或者标记,StringTokenizer可以帮你。先看个例子:public static void main(String[] args) { Str转载 2011-09-06 13:47:32 · 46516 阅读 · 5 评论