JAVA
Mr_linjw
这个作者很懒,什么都没留下…
展开
-
Junit单元测试之多线程的情况
在做mybatis的多个线程修改内容时候的遇到的问题;主线程执行完毕之后,子线程全部自动被杀死!!!验证测试:@Testpublic void multiTheadUpdate() { for(int i=0;i<10000;i++){ int finalI = i; new Thread(()->{ try { Thread.sleep(100); } catc...原创 2021-06-02 14:53:57 · 375 阅读 · 0 评论 -
java对象拷贝之BeanUtils.copyProperties() 用法
一、简介:BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们知道,一个JavaBean通常包含了大量的属性,很多情况下,对JavaBean的处理导致大量get/set代码堆积,增加了代码长度和阅读代码的难度。二、用法:如果你有两个具有很多相同属性的JavaBean,一个很常见的情况...原创 2015-12-09 14:52:18 · 82931 阅读 · 10 评论 -
java处理url中的特殊字符%等
URL(Uniform Resoure Locator,统一资源定位器)是Internet中对资源进行统一定位和管理的标志。一个完整的URL包括如下内容:1. 应用协议名称,包括http,ftp,file等标志2. 资源定位,是由(.)分割等网络路径3. 端口号,按照规定,http应用端口是80,telnet协议应用端口是23原创 2015-12-16 16:31:20 · 9797 阅读 · 0 评论 -
java常考面试题
一、String,StringBuffer, StringBuilder 的区别是什么?String为什么是不可变的?答: 1、String是字符串常量,StringBuffer和StringBuilder都是字符串变量。后两者的字符内容可变,而前者创建后内容不可变。2、String不可变是因为在JDK中String类被声明为一个final类。3、StringBuffe原创 2016-01-18 13:49:04 · 481 阅读 · 0 评论 -
java synchronized详解
多个进程或线程同时(或着说在同一段时间内)访问同一资源会产生并发问题。Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该转载 2016-01-20 15:50:42 · 389 阅读 · 0 评论 -
JAVA两个数组间元素的比较(找出相同或者不同元素)
1,找出两个数组中相同的元素 public static Set getIds(Integer[] a, Integer[] b){ Set same = new HashSet(); //用来存放两个数组中相同的元素 Set temp = new HashSet(); //用来存放数组a中的元素 for (int i = 0; i < a.length原创 2015-12-23 17:13:15 · 38170 阅读 · 5 评论 -
集合工具类 Collections
Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序、搜索以及线程安全等各种操作。1、排序(Sort)排序(Sort)使用sort方法可以根据元素的自然顺序 对指定列表按升序进行排序。列表中的所有元素都必须实现 Comparable接口double array[] = {112, 111, 23, 456, 231 }原创 2016-01-14 14:11:30 · 429 阅读 · 0 评论 -
java 多态
多态的概念 多态==晚绑定。 不要把函数重载理解为多态。 因为多态是一种运行期的行为,不是编译期的行为。 多态:父类型的引用可以指向子类型的对象。 比如 Parent p = new Child(); 当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误; 如果有,再去调用子类的该同名方法。 (注意此处,静态st原创 2016-03-03 16:27:29 · 425 阅读 · 0 评论 -
java JSONObject对象序列化与反序列化
首先需要导入一下包json-lib-2.3-jdk15.jar commons-beanutils-1.7.0.jar commons-httpclient-3.1.jar commons-lang-2.3.jar commons-logging-1.0.4.jar commons-collections-3.1.jar ezmorph-1.0.6.jar原创 2016-02-17 17:08:45 · 17773 阅读 · 0 评论 -
java多线程消息队列的实现
1、定义一个队列缓存池: //static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。private static ListQueue> queueCache = new LinkedListQueue>(); 2、定义队列缓冲池最大消息数,如果达到该值,那么队列检入将等待检出低于该值时继续进行。private In原创 2016-05-10 23:19:11 · 12944 阅读 · 0 评论 -
JAVA 常用设计模式
一、单例设计模式单例就是:保证一个类仅有一个实例,仅提供一个访问它的全局访问点。之前这个用得比较多二、工厂设计模式程序在接口和子类之间加入了一个过渡端,通过此过渡端可以动态取得实现了共同接口的子类实例化对象。interface Animal { // 定义一个动物的接口 public void say(); // 说话方法}class Cat implements Anim原创 2016-04-29 11:02:19 · 424 阅读 · 0 评论 -
java 之 HttpClient(可用作服务器端的验证)
package com.brainlong.framework.util.httpclient; import net.sf.json.JSONObject;import org.apache.commons.httpclient.HttpStatus;import org.apache.http.HttpResponse;import org.apache.http.client.me原创 2016-05-25 15:20:59 · 1136 阅读 · 0 评论 -
List、Map、Set按存储方式说说都是怎么存储的?
collection、set、list、map这些都是java中常见的集合,对于初学者来讲这些是非常容易混淆的,首先让我们从整体上对这些集合有个大致的了解然后我们再进行区分。 1.collection:集合层次中的根接口,jdk没有提供这个接口直接实现的类。 2.set是一个无序的集合,不能包含重复的元素。 3.list:是一个有序的集合可以包含重复的元素,提供了按索原创 2016-05-06 23:43:29 · 9768 阅读 · 1 评论 -
线性表和链表的区别
线性表,和链表。线性表线性表在内存中是一块连续的存储空间;如:一个表中的内容是:【1,2,3】则它在内存中可能是如下存储的:123通过这个结构可以看出,只要知道了第一个元素在内存中所在的位置。就可以很容易的知道其他元素的位置。因为每一个元素占的空间是一样的。所以,如果我们知道第一个元素:1在内存号:1000;而每一个元素占8个内存空间;则第二个元素:2所在的内存空间为:转载 2016-05-06 23:49:49 · 3759 阅读 · 1 评论 -
JAVA面试题
1、重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分? 重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同或者二者都不同)重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的返回类型,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常(里氏代换原则)。重载对返回类型没有特殊的要求。原创 2016-04-29 15:37:21 · 1214 阅读 · 0 评论 -
有三个线程T1 T2 T3,如何保证他们按顺序执行
T3先执行,在T3的run中,调用t2.join,让t2执行完成后再执行t3在T2的run中,调用t1.join,让t1执行完成后再让T2执行public class JoinTest2 { // 1.现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行 public static void main(String[] args原创 2016-05-09 23:10:07 · 1780 阅读 · 0 评论 -
java 线程
线程最多的用处就是可以处理多个用户的请求,或者在一个比较耗时的请求内,把比较耗时的操作丢给一个线程,这样就可以直接退出这个请求了,让后其他事情让线程去做比如一个请求过来,处理完后需要给用户发邮件,由于发邮箱的操作非常耗时,可以把发邮箱这个操作丢到线程里面去操作,这样立即返回结果给前端,其它的后台底下再去处理一旦运行start()后,该线程就给启动了,方法就退出了在Java中原创 2016-01-13 09:59:21 · 354 阅读 · 0 评论 -
request.getParameterMap()使用
request.getParameterMap()的返回类型是Map类型的对象,也就是符合key-value的对应关系,但这里要注 意的是,value的类型是String[],而不是String. 得到jsp页面提交的参数很容易,但通过它可以将request中的参数和值变成一个map,以下是将得到的参数和值 打印出来,形成的map结构:map(key,value[]),即:ke原创 2015-11-06 11:36:29 · 1076 阅读 · 0 评论 -
JAVA字符串格式化-String.format()的使用
常规类型的格式化String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Lo转载 2015-11-05 12:03:04 · 459 阅读 · 0 评论 -
java 的深度clone,对于对象里面还包含其它对象可使用流克隆法
一般使用的clone()方法虽然可以实现深度克隆,但是需要的克隆对象里有其他引用对象,这个引用对象还有引用对象那么你重写clone()方法就非常的繁琐了所以建议使用输入输出流进行克隆/* * 复制对象obj,类似于值传递,非引用 */ public static Object cloneObject(Object obj) throws转载 2015-01-20 11:48:07 · 1229 阅读 · 0 评论 -
hibernate_Restrictions用法
方法说明Restrictions.eq=Restrictions.allEq利用Map来进行多个等于的限制Restrictions.gt>Restrictions.ge>=转载 2015-01-08 17:43:15 · 427 阅读 · 0 评论 -
Struts2 XML配置详解
1. 深入Struts2的配置文件本部分主要介绍struts.xml的常用配置。1.1. 包配置:Struts2框架中核心组件就是Action、拦截器等,Struts2框架使用包来管理Action和拦截器等。每个包就是多个Action、多个拦截器、多个拦截器引用的集合。在struts.xml文件中package元素用于定义包配置,每个package元素定义了一个转载 2015-01-22 15:00:00 · 537 阅读 · 0 评论 -
java下载文件
struts xml配置 application/octet-stream <!-- 默认就是 inputStream,它将会指示 StreamResult 通过 inputName 属性值的 getter 方法, 比如这里原创 2015-01-22 14:39:33 · 569 阅读 · 0 评论 -
Quartz学习, JAVA定时器
Quartz学习2013-09-20 18:02 990人阅读 评论(1) 收藏 举报目录(?)[+]pom.xml[html] view plaincopydependency> groupId>org.quartz-schedulergroupId> artif转载 2015-02-11 17:16:04 · 887 阅读 · 0 评论 -
Hibernate的fetch
fetch ,可以设置fetch = "select" 和 fetch = "join"用一对多来举例:fetch = "select"是在查询的时候先查询出一端的实体,然后在根据一端的查询出多端的实体,会产生1+n条sql语句;fetch = "join"是在查询的时候使用外连接进行查询,不会差生1+n的现象。lazy大家应该都熟悉了,就是延迟加载,可以设置laz转载 2015-03-03 11:35:22 · 400 阅读 · 0 评论 -
jsp中<c:forEach>的用法
在JSP的开发中,迭代是经常要使用到的操作。例如,逐行的显示查询的结果等。在早期的JSP中,通常使用Scriptlets来实现Iterator或者Enumeration对象的迭代输出。现在,通过JSTL的迭代标签可以在很大的程度上简化迭代操作。 JSTL所支持的迭代标签有两个,分别是c:forEach>和c:forTokens>。在这里介绍的是c:forEach>标签。原创 2015-03-19 23:13:29 · 18239 阅读 · 0 评论 -
Hibernate commit() 和flush() 的区别
[java] view plaincopyprint?> ,flush()方法进行清理缓存的操作,执行一系列的SQL语句,但不会提交事务;commit()方法会先调用flush()方法,然后提交事务. 提交事务意味着对数据库所做的更新会永久保持下来 所谓清理,是指Hibernate 按照持久化象的状态来同步更新数据库 Flush转载 2015-03-16 15:49:00 · 610 阅读 · 0 评论 -
Criteria 和 DetachedCriteria的区别与使用
Criteria 和 DetachedCriteria 的主要区别在于创建的形式不一样, Criteria 是在线的,所 以它是由 Hibernate Session 进行创建的;而 DetachedCriteria 是离线的,创建时无需 Session,DetachedCriteria 提供了 2 个静态方法 forClass(Class) 或 forEntityName(Nam转载 2015-04-24 17:02:41 · 498 阅读 · 0 评论 -
JAVA 分割出字符串中的字母或数字
String name = “test001”;String zm = name.replaceAll("[^(a-zA-Z)]","" ); //取出字母String number = name.replaceAll("[^(0-9)]", "") //取出数字原创 2015-05-11 14:53:53 · 6386 阅读 · 0 评论 -
ueditor1.4.3jsp版在上传图片报"未找到上传文件"解决方案
这是因为struts2的过滤器,解决方法是自定义一个过滤器新建一个过滤器的类,代码: package com.filter; import java.io.IOException; import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.原创 2015-05-07 21:24:36 · 2895 阅读 · 1 评论 -
SSH添加中文文章乱文方案
Java项目添加文章产生乱文的原因只有一个:字符编码不真确,这是需将编码统一(UTF-8为例)需要设置编码的主要有以下几方面:1、JSP前端html页面,添加默认编码2、确保数据库(mysql)编码为UTF-83、后台接收前端数据时,将编码设置为UTF-8,response.setContentType("text/html, charset=utf-8原创 2015-06-23 20:18:34 · 772 阅读 · 0 评论 -
JAVA字符串格式化-String.format()的使用
常规类型的格式化String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Lo转载 2015-06-02 16:01:29 · 609 阅读 · 0 评论 -
JAVA 使用iText导出PDF(含有Table)示例
需要的Jar包包括:iText-2.1.7.jar和iTextAsian.jar--------------------------------------------------- String fileName = new String(("专家信息-"+expert.getName()).getBytes("GBK"),"ISO-8859-1");转载 2015-09-11 11:05:04 · 5017 阅读 · 0 评论 -
JSONP 跨域请求
JS跨域请求貌似只能用JSONP方式用jquery+ajax使用JSONP方式跨域请求数据(这里需要后台配合返回) $.ajax({ type : "GET", url : url, //请求链接 data : {loginName:"admin"} , dataType:'jsonp', //jsonp跨域请求 jsonp: 'call原创 2015-09-07 11:49:32 · 539 阅读 · 0 评论 -
JAVA 之项目部署更新不上
1,clear项目2、重新部署3、清除浏览器缓存4、清除tomcat缓存(tomcat6\work\Catalina\localhost目录下的所有文件)原创 2015-09-15 11:28:45 · 473 阅读 · 0 评论 -
Myeclipse10下搭建SSH框架(图解)Struts2.1+Spring3.0+Hibernate3.3
Myeclipse10下搭建SSH框架(图解)Struts2.1+Spring3.0+Hibernate3.3 2012-04-11 18:38:28| 分类: Web Development | 标签:myeclipse ssh struts spring hibernate |举报|字号 订阅一、建立一个Web Project ①点击Fi转载 2015-02-04 21:08:13 · 532 阅读 · 0 评论