自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (3)
  • 收藏
  • 关注

转载 多线程高级的工具

java.util.concurrent中更高级的工具分成三类:Executor Framework并发集合(Concurrent Collection)同步器(Synchronizer)一、executor和task优先于线程:在Java 1.5 中提供了java.util.concurrent包,在这个包中包含了Executor Framework框架,

2014-03-11 14:51:42 626

转载 Executor framework的机制

从java5开始,java就提供了名叫Executor framework的机制,主要是围绕着Executor接口, 它的接口 ExecutorService, 以及实现了这两个接口的ThreadPoolExecutor类来展开,这种机制把线程的执行和创建分离开了,你只需要创建一个线程,然后把线程丢给Executor,让它执行去吧。使用这个机制的另外一个好处是可以使用Callable接口,它类似于

2014-03-10 16:25:27 539

转载 wait/sleep/yield的区别

首先,wait()和notify(),notifyAll()是Object类的方法,sleep()和yield()是Thread类的方法。(1).常用的wait方法有wait()和wait(long timeout):    void wait() 在其他线程调用此对象的 notify() 方法或 notifyAll() 方法前,导致当前线程等待。    void wait(lon

2014-03-07 17:21:00 424

转载 java web

1、Tomcat的优化经验答:去掉对web.xml的监视,把jsp提前编辑成Servlet。有富余物理内存的情况,加大tomcat使用的jvm的内存 2、HTTP请求的GET与POST方式的区别答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destro

2014-03-03 16:16:36 456

转载 Oracle 存储过程

一 存储过程的优点:1 SQL存储过程执行起来比SQL命令文本快得多。当一个SQL语句包含在存储过程中时,服务器不必每次执行它时都要分析和编译它。 2 调用存储过程,可以认为是一个三层结构。程序易于维护。如果程序需要做某些改动,你只要改动存储过程即可 3 你可以在存储过程中利用Transact-SQL的强大功能。一个SQL存储过程可以包含多个SQL语句。可以使用变量

2014-03-03 14:15:41 493

转载 创建存储过程Navicat

创建存储过程本主题介绍了如何通过使用 SQL Server Management Studio(开发IDE)  和 Transact-SQL CREATE PROCEDURE 语句来创建 Transact-SQL 存储过程。开始之前: 权限 创建存储过程,使用: SQL Server Management Studio、Transact-SQL

2014-02-27 21:10:43 1273

原创 后台和页面互相传参的手段

1 请求域,有四个域:pageScope,requestScope,sessionScope,applicationScope范围由小到大表示变量的作用域,一共4种。pageScope:  表示变量只能在本页面使用。requestScope:表示变量能在本次请求中使用。sessionScope:表示变量能在本次会话中使用。applicationS

2014-02-27 15:31:33 1882

转载 Spring配置

Spring:--1 使用jar包:spring.jarcommons-logging.jar使用aopaspectjweaver.jaraspectjrt.jarcglib-nodep-2.1_3.jar 使用注解:common-annotations.jar--2 实例化容器:ApplicationContext ctx =

2014-02-27 14:47:23 533

转载 synchronized详解

1  当synchronized修饰某对象的方法时,当某个线程访问到此方法时,就会给对象加锁,其他线程就不能访问此对象了(此对象的所有方法)2  当static 与 synchronized 同时修饰方法时,   将这个方法所在的类的Class对象上锁。   无论一个类有多少个对象,这些对象会对应唯一一个Class对象,   因此当线程分别访问同一个类的两个对象的两个s

2014-02-27 14:34:50 380

转载 可变长参数方法注意事项

1 如果能够和固定参数的方法匹配,也能够与可变长参数的方法匹配,则选择固定参数的方法eg:    public void print(String... args) {        for (int i = 0; i             out.println(args[i]);        }    }    public void print(Strin

2014-02-27 14:28:12 539

转载 提高性能的方法

1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:    控制资源的使用,通过线程同步来控制资源的并发访问;    控制实例的产生,以达到节约资源的目的;    控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。

2014-02-27 14:26:51 675

转载 getCurrentSession()与openSession()的区别

getCurrentSession()与openSession()的区别1、getCurrentSession()与openSession()的区别?* 采用getCurrentSession()创建的session会绑定到当前线程中,而采用openSession()   创建的session则不会* 采用getCurrentSession()创建的session在commit

2014-02-27 14:23:37 442

翻译 hql_sql_criteria

------------Query接口1.list()和iterate()方法的区别:在于iterate()先通过select语句查找所有id字段的值,然后如果session缓存(一级缓存)中已经存在id对应的对象就直接添加到查询结果中,否则再根据id额外查询这条记录。2.Query和Criteria共同有的方法list(),uniqueResult(),setMa

2014-02-27 14:20:13 446

翻译 query 中Hql和sql

1 一 基本语法:Configuration cfg = new Configuration();cfg.configure("/hibernate.cfg.xml");SessionFactory sf = cfg.buildSessionFactory();Session session = sf.openSession();1 返回所有对象Query quer

2014-02-27 14:18:33 474

翻译 mysql出错列表

1024:读文件错误 1025:更改名字时发生错误 1026:写文件错误 1032:记录不存在 1036:数据表是只读的,不能对它进行修改 1037:系统内存不足,请重启数据库或重启服务器 1038:用于排序的内存不足,请增大排序缓冲区 1040:已到达数据库的最大连接数,请加大数据库可用连接数 1041:系统内存不足 1042:无效的主机名 1043:无效连接

2014-02-27 14:08:20 401

转载 Nio使用

Java NIO带来了什么?  传统Java IO在我前一篇博文《细说Java IO相关》已经介绍过了,它是阻塞的,低效的。那么Java NIO和传统Java IO有什么不同?带来了什么?(1)面向块的I/O  传统JavaIO是面向流的I/O。流I/O一次处理一个字节。NIO则是面向块的I/O,每次操作都是以数据块为单位。它们的差距就好象两个人吃饭,一个人一粒一粒的吃,另一个人狼吞虎

2014-02-08 17:24:32 473

原创 date2String

自制工具:import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public class DateUtil{ public final static String PATTERN_yyyy_MM_dd = "yyyy-MM-dd"; public

2014-02-08 17:11:25 1364

转载 Spring--quartz中cronExpression配置说明

Spring--quartz中cronExpression配置说明字段 允许值 允许的特殊字符秒 0-59 , - * /分 0-59 , - * /小时 0-23 , - * /日期 1-31 , - * ? / L W C月份 1-12 或者 JAN-DEC , - * /星期 1-7 或者 SUN-SAT , - * ? / L C #年(可选) 留空, 19

2014-02-08 17:06:19 398

原创 Quartz

一、Quartz简介     Quartz是一个开放源码项目,专注于任务调度器,提供了极为广泛的特性如持久化任务,集群和分布式任务等。Spring对Quartz的集成与其对JDK Timer的集成在任务、触发器和调度计划的声明式配置方面等都非常相似。     Quartz的核心由两个接口和两个类组成:Job和Scheduler接口,JobDetail和Trigger类。不同

2014-02-08 17:03:19 491

转载 json2xml

java中Xml、json之间的相互转换旁白:最近关于xml与json之间的转换都搞蒙了,这里写一个demo,以后备用。正题:project格式是:jar包是一个一个检出来的,还算干净了。代码:工具类:package exercise.xml;import net.sf.json.JSON;import net.sf.json.JSONSeri

2014-02-08 15:17:42 915

原创 json

JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级、跨平台的数据交换格式。一 相较于xml,json的优点:1 JS(JavaScript的简写)中处理XML非常不方便,而json显得非常好用;2 XML标记比数据多,增加了交换产生的流量,而JSON没有附加的任何标记;二 json的两

2014-02-08 14:51:08 410

翻译 线程池

1 为什么要用线程池?  a 单个任务处理的时间很短而请求的数目却是巨大的。    b 每当一个请求到达就创建一个新线程,然后在新线程中为请求服务。      创建一个新线程的开销很大;服务器在创建和销毁线程上花费的时间    和消耗的系统资源要比花在处理实际的用户请求的时间和资源更多。      c 活动的线程也消耗系统资源。  2 线程池的优点

2014-02-08 14:26:02 348

原创 经典算法搜集

一 递归算法:递归算法条件:1 该问题能够被递归形式描述2 存在递归结束的边界条件。优点:化繁为简缺点:递归是最慢的会发生重复计算,时间复杂度成指数级。Fibonacci数列:f(1)=1,f(2)=2,f(n)=f(n-1)+f(n-2)(n>=3)代码演示:/**     * f(1)=1,f(2)=2,f(n)=f(

2014-02-08 13:46:42 453

转载 XML解析-DOM4j

xml 是扩展标记语言 extension marked languange  .作用:1 可以作为配置文件。2 不依赖任何平台提供数据支持,可以和http超文本提供数据,的作用,简单理解为xml是一种数据记录格式。解析xml文件:方法:常见的三种XML解析方法,即DOM解析、SAX解析、DOM4J解析。这里只介绍最简单常用效果最好的DOM4J解析。eg

2014-02-08 10:28:50 507

原创 生产者与消费者

生产者与消费者模式:目的:优化系统性能。如从远程下载文件,并将这些文件解析。生产者:启一个或多个线程专门从事下载文件,下载ok的文件放进队列queue中。消费者:启一个或多个线程专门从事解析文件,从队列queue中拿文件解析。结构如图:每个线程做自己的事情,当要用到临界资源Queue时,各个线程抢占资源,一旦有一个线程访问Queue,就阻塞(lock)Queue,等

2014-02-07 16:48:20 634

转载 Socket编程

--基本概念所谓网络编程,就是让计算机之间进行相互通讯数据。Java语言提供了一些相对简单的Api来完成这些通信工作,而Socket就是其中之一,它存在于java.net包中。网络编程的基本模型就是客户端到服务器模型。简单的说就是两个进程之间相互通,然后其中一个必须提供一个固定的位置,而另一个则只需要知道这个固定的位置,并去建立两者之间的联系,然后完成数据的

2014-02-07 16:14:28 469

转载 分布式计算

1 分布式计算原理:a 服务器提供接口做成.jar文件给客户端,监听客户端。b 客户端通过服务器提供的接口,调用方法,发送请求给服务器。c 服务器根据请求调用接口实现的方法,并通过Socket将结果给客户端。如图:2 服务端需要.jar:  rt.jar    拥有必要的类等:  import java.rmi.Naming;  import

2014-02-07 16:06:41 526

原创 解析xx.properties文件信息

在某些配置信息需要初始化的时候,为了便于维护和修改,往往选择将他们的配置信息放在一个xx.properties文件中。---------------------------------------------------eg:db.properties文件:#oracledrivername=oracle.jdbc.driver.OracleDriverurl=jdbc

2014-02-07 15:45:23 523

原创 java 缓存jcs

java 缓存jcs:有时候我们需要频繁的访问数据库获得某些数据,这样大大的增加了访问数据库方面的开销,降低了系统的性能。一 解决办法:将数据放进缓存中。二 适用条件:1 需要经常使用2 数据不经常更新三 需要导入jar包:jcs-1.3.jar四 流程向导:五 代码演示:package jcsCache;import java.io

2014-02-07 15:33:04 835

哲学家进餐

有5个哲学家共用一张圆桌,分别坐在周围的5张椅子上。在桌上有5支筷子和5个碗,他们的生活方式是交替的进行思考和进餐。平时,一个哲学家进行思考,饥饿时便试图取用他左右最靠近他的筷子,只有在他拿到两只筷子时才能进餐。进餐完毕放下筷子继续思考。

2012-05-04

属性文法与语法制导翻译

属性文法与语法制导翻译 给语法上各个符号赋予一定的含义并且将各个符号进行有结构的连接,可以形成语言的具体语句的含义。这给予我们以启示:可以通过扩充文法,在文法符号上附着某些语义信息,并在这些语义信息间建立相互计算关系,从而在语法分析的同时进行语义分析。由于这种分析是在语法分析的控制下进行的,故称为语法制导翻译。

2012-05-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除