随笔分类 -  java

摘要:原理: 在DataSource中事先建立多个数据库连接,保存在数据库连接池中。当程序访问数据库时,只用从连接池中取空闲状态的数据库连接即可,访问结束,销毁资源,数据库连接重新回到连接池,这与每次去直接访问数据库相比,会节省大量时间和资源。 JNDI( Java Naming and Directory Interface ),是Java平台的一个标准扩展,提供了一组接口、类和关于命名空间的概念。如同其它很多Java技术一样,JDNI是provider-based的技术,暴露了一个 API和一个服务供应接口(SPI)。这意味着任何基于名字的技术都能通过JNDI而提供服务,只要JNDI支持这项技术 阅读全文
posted @ 2013-04-19 09:22 幻星宇 阅读(368) 评论(0) 推荐(0)
摘要:mongodb由C++写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理。关于它的一个最简洁描述为:scalable, high-performance, open source, schema-free, document-oriented database。MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统(丰富的功能)架起一座桥梁,集两者的优势于一身。安装及使用:首先在Ubuntu上安装MongoDB。下载MongoDB,现在最新的生产版本1.7.01.解压文件.$ tar -xvf mongodb-. 阅读全文
posted @ 2013-04-17 10:58 幻星宇 阅读(201) 评论(0) 推荐(0)
摘要:java.util包中包含了一系列重要的集合类。本文将从分析源码入手,深入研究一个集合类的内部结构,以及遍历集合的迭代模式的源码实现内幕。 下面我们先简单讨论一个根接口Collection,然后分析一个抽象类AbstractList和它的对应Iterator接口,并仔细研究迭代子模式的实现原理。 本文讨论的源代码版本是JDK 1.4.2,因为JDK 1.5在java.util中使用了很多泛型代码,为了简化问题,所以我们还是讨论1.4版本的代码。 集合类的根接口Collection Collection接口是所有集合类的根类型。它的一个主要的接口方法是:boolean add(Ob... 阅读全文
posted @ 2013-04-17 10:05 幻星宇 阅读(299) 评论(0) 推荐(0)
摘要:在使用Java的时候,我们都会遇到使用集合(Collection)的时候,但是Java API提供了多种集合的实现。总的说来,Java API中所用的集合类,都是实现了Collection接口,他的一个类继承结构如下: Collection<--List<--Vector Collection<--List<--ArrayList Collection<--List<--LinkedList Collection<--Set<--HashSet Collection<--Set<--HashSet<--LinkedHashSet 阅读全文
posted @ 2013-04-17 10:01 幻星宇 阅读(201) 评论(0) 推荐(0)
摘要:package com.listener;import javax.servlet.http.HttpSessionEvent;import javax.servlet.http.HttpSessionListener;/** * 对session的监听 */public class HttpSessionListenerDemo implements HttpSessionListener { public void sessionCreated(HttpSessionEvent event) { // 创建session时触发 System.out.println("** SES 阅读全文
posted @ 2013-04-16 11:07 幻星宇 阅读(216) 评论(0) 推荐(0)
摘要:package com.listener;import javax.servlet.ServletContextAttributeEvent;import javax.servlet.ServletContextAttributeListener;/** * 上下文属性监听 */public class ServletContextAttributeListenerDemo implements ServletContextAttributeListener { public void attributeAdded(ServletContextAttributeEvent event) { . 阅读全文
posted @ 2013-04-16 11:01 幻星宇 阅读(169) 评论(0) 推荐(0)
摘要:package com.listener;import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;/** * 上下文监听 * */public class ServletContextListenerDemo implements ServletContextListener { public void contextDestroyed(ServletContextEvent event) { //上下文销毁时出发 System.out.println("** 容器销毁- 阅读全文
posted @ 2013-04-16 11:00 幻星宇 阅读(140) 评论(0) 推荐(0)
摘要:<%! //定义数据库驱动程序 //public static final String DBDRIVER = "org.gjt.mm.mysql.Driver"; public static final String DBDRIVER = "com.mysql.jdbc.Driver"; //数据库连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/test"; public static final String DBUSER = &quo 阅读全文
posted @ 2013-04-15 16:18 幻星宇 阅读(206) 评论(0) 推荐(0)
摘要:xml:<servlet> <servlet-name>initparam</servlet-name><!-- 与servlet-mapping相对应 --> <servlet-class> com.servlet.InitParamServlet </servlet-class> <init-param><!-- 配置参数 --> <param-name>ref</param-name> <param-value>www.test.cn</param-v 阅读全文
posted @ 2013-04-15 16:15 幻星宇 阅读(225) 评论(0) 推荐(0)
摘要:web.xml<filter> <filter-name>encoding</filter-name> <filter-class>com.filter.EncodingFilter</filter-class> <init-param> <param-name>charset</param-name> <param-value>utf-8</param-value> </init-param> </filter> <filter-mapping 阅读全文
posted @ 2013-04-15 16:13 幻星宇 阅读(179) 评论(0) 推荐(0)
摘要:java中客户端跳转使用的是:req.getSession().setAttribute("name", "李兴华");//设置session属性 req.setAttribute("info", "MLDNJAVA");//设置request属性 resp.sendRedirect("servlet/get_info.jsp");调用的是响应对象的sendRedirect方法。服务器端跳转使用的是:protected void doGet(HttpServletRequest req, Htt 阅读全文
posted @ 2013-04-15 09:31 幻星宇 阅读(578) 评论(0) 推荐(0)
摘要:第一篇:使用synchronized在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语--synchronized,这也大大简化了Java中多线程同步的使用。我们首先编写一个非常简单的多线程的程序,是模拟银行中的多个线程同时对同一个储蓄账户进行存款、取款操作的。在程序中我们使用了一个简化版本的Account类,代表了一个银行账户的信息。在主程序中我们首先生成了1000个线程,然后启动它们,每一个线程都对John的账户进行存100元,然后马上又取出100元。这样,对于John的账户来说,最终账户的余额应该是还是1000元才对。然而运 阅读全文
posted @ 2013-04-03 16:22 幻星宇 阅读(259) 评论(0) 推荐(0)
摘要:FileInputStream,FileReaderC语言只需要一个File*就可以了,与C不同,java有一系列流类型,其数量超过60种。类库的设计者声称:“有足够的理由为用户提供丰富的流类型的选择:这样做可以减少程序的错误。”例如,在C语言种,许多人认为“将输出流写入一个只读模式的文件”是很常见的错误。(事实上,这并不常见。)我们认为在C++语言中,流接口设计者避免程序出错的主要“工具”是小心谨慎的态度,在java语言中更是如此。流库的高度复杂性迫使程序设计人员谨小慎微。1. File类1)File类介绍(《core java》638页)File类封装了对用户机器的文件系统进行操作的功能。 阅读全文
posted @ 2013-04-03 16:15 幻星宇 阅读(294) 评论(0) 推荐(0)
摘要:PrintStream,它可以将Java的基本资料型态等资料,直接转换为系统预设编码下对应的字元,再输出至OutputStream中,而这边要介绍的PrintWriter其功能上与PrintStream类似,除了接受OutputStream之外,它还可以接受Writer物件作为输出的对象,当您原先是使用Writer物件在作处理,而现在想要套用println()之类的方法时,使用PrintWriter会是比较方便的作法。下面这个程式显示了PrintStream与PrintWriter两个物件在处理相同输出目的时的作法,程式将会在荧幕上显示"简体中文"四个字元:StreamWr 阅读全文
posted @ 2013-04-03 16:09 幻星宇 阅读(1096) 评论(0) 推荐(0)
摘要:java.util.Scanner是Java5的新特征,主要功能是简化文本扫描。这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java API文档中列举了大量的API方法,但是都不怎么地。一、扫描控制台输入这个例子是常常会用到,但是如果没有Scanner,你写写就知道多难受了。当通过new Scanner(System.in)创建一个Scanner,控制台会一直等待输入,直到敲回车键结束,把所输入的内容传给Scanner,作为扫描对象。如果要获取输入的内容,则只需要调用Scanner的nextLine()方法即可。/*** 扫描控制台输入** @author leizhimi 阅读全文
posted @ 2013-04-03 16:01 幻星宇 阅读(311) 评论(0) 推荐(0)
摘要:Extends:NumberImplements:Comparablezh_cn不可变的任意精度的整数。所有操作中,都以二进制补码形式表示 BigInteger(如 Java 的基本整数类型)。BigInteger 提供所有 Java 的基本整数操作符的对应物,并提供 java.lang.Math 的所有相关方法。另外,BigInteger 还提供以下运算:模算术、GCD 计算、质数测试、素数生成、位操作以及一些其他操作。算术运算的语义完全模仿 Java 整数算术运算符的语义,如The Java Language Specification中所定义的。例如,以零作为除数的除法抛出Arithme 阅读全文
posted @ 2013-04-03 15:52 幻星宇 阅读(467) 评论(0) 推荐(0)
摘要:用Java来处理高精度问题,相信对很多ACMer来说都是一件很happy的事,简单易懂。用Java刷了一些题,感觉Java还不错,在处理高精度和进制转换中,调用库函数的来处理。下面是写的一些Java中一些基本的函数的及其……头文件:import java.io.*;import java.util.*;import java.math.*;读入:Scanner cin = Scanner (System.in);while(cin.hasNext())//等价于!=EOFn=cin.nextInt();//读入一个int型的数n=cin.nextBigInteger();//读入一个大整数输出 阅读全文
posted @ 2013-04-03 15:47 幻星宇 阅读(316) 评论(0) 推荐(0)
摘要:Enumeration接口Enumeration接口本身不是一个数据结构。但是,对其他数据结构非常重要。 Enumeration接口定义了从一个数据结构得到连续数据的手段。例如,Enumeration定义了一个名为nextElement的方法,可以用来从含有多个元素的数据结构中得到的下一个元素。Enumeration接口提供了一套标准的方法,由于Enumeration是一个接口,它的角色局限于为数据结构提供方法协议。下面是一个使用的例子://e is an object that implements the Enumeration interfacewhile (e.hasMoreEleme 阅读全文
posted @ 2013-04-03 13:43 幻星宇 阅读(198) 评论(0) 推荐(0)
摘要:一、jsp连接Oracle8/8i/9i数据库(用thin模式)testoracle.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url="jdbc:oracle:thin:@loc 阅读全文
posted @ 2013-04-03 09:34 幻星宇 阅读(192) 评论(0) 推荐(0)
摘要:今天要写一个连接数据库的类,忽然想问一下aorg.gjt.mm.mysql.Driver和com.mysql.jdbc.Driver到底有啥区别,在网上找了一下,系统的文章没有多少,我总结一下把. "org.gjt.mm.mysql.Driver 是当时最好的MySQL JDBC,但不是MySQL公司的,然后MySQL将MM的JDBC驱动收为官方的JDBC驱动,所以将驱动的package也该了,但还保留了org.gjt.mm.mysql.Driver这个路径的引用,也就是你使用新版的JDBC驱动时还可以通过这个来引用,你打开下载的新版JDBC驱动的jar文件可以看到,只有一个文件的目 阅读全文
posted @ 2013-04-01 18:04 幻星宇 阅读(2561) 评论(0) 推荐(1)