03 2013 档案
摘要:1 package com.zx.demo.action; 2 import java.util.ArrayList; 3 import java.util.HashMap; 4 import java.util.List; 5 import java.util.Map; 6 import com.opensymphony.xwork2.ActionSupport; 7 import com.zx.demo.model.Product; 8 import com.zx.demo.model.Student; 9 public class MapAction extends ActionSu..
阅读全文
摘要:虽然线程池能大大提高服务器的并发性能,但使用它也会存在一定风险。与所有多线程应用程序一样,用线程池构建的应用程序容易产生各种并发问题,如对共享资源的竞争和死锁。此外,如果线程池本身的实现不健壮,或者没有合理地使用线程池,还容易导致与线程池有关的死锁、系统资源不足和线程泄漏等问题。 1.死锁 任何多线程应用程序都有死锁风险。造成死锁的最简单的情形是,线程A持有对象X的锁,并且在等待对象Y的锁,而线程B持有对象Y的锁,并且在等待对象X的锁。线程A与线程B都不释放自己持有的锁,并且等待对方的锁,这就导致两个线程永远等待下去,死锁就这样产生了。 虽然任何多线程程序都有死锁的风险,但线程池还会导致...
阅读全文
摘要:项目中,经常会遇到各层对象之间相互进行值传递的过程,如在数据据持久层有一持久类ClassA,在视图层可能会变为ViewA,通常情况下,如果两个类 结构一样,最常使用的是BeanUtils.copyProperties(src,aim)方法将一个对象的值赋给另一个对象!但是如果属性不同或者名 称不同,则需要Dozer来完成,通过灵活的配置,达到不同对象间的拷贝! 如下: 一个XML配置文件:dozerBeanMapping.xml <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mappin
阅读全文
摘要:java 利用Xstream生成和解析xml,知识结构:1.Xstream简介;使用限制: JDK版本不能<1.5. 虽然预处理注解是安全的,但自动侦查注解可能发生竞争条件.特点:简化的API; 无映射文件; 高性能,低内存占用; 整洁的XML; 不需要修改对象;支持内部私有字段,不需要setter/getter方法,final字段;非公有类,内部类;类不需要默认构造器,完全对象图支持.维护对象引用计数,循环引用. i 提供序列化接口; 自定义转换类型策略; 详细的错误诊断; 快速输出格式;当前支持 JSON 和 morphing. 使用场景Transport 转换 Persistenc
阅读全文

浙公网安备 33010602011771号