- 博客(18)
- 收藏
- 关注
原创 构建一个最简单的web应用并部署及启动
第一种构建方式:不使用mavenFile-new-Dynamic Web Project,用这种方式构建的web项目是在web.xml文件中配置了welcome-file的,但是却没有对应的文件,所以只需新建一个index.jsp,在里面简单的加点内容,这个时候web应用就算是构建好了,就可以部署并启动了。在web应用名上右键,Export-WAR file就可以把应用打成war包并放在指
2015-07-25 15:28:22 1257
原创 setTimeout用法:利用setTimeout在页面上不停的显示当前日期时间
function showTime() { var mydate = new Date(); var year = mydate.getFullYear(); var month = mydate.getMonth(); month = month + 1; var day = mydate.getDate(); var hour = mydate.getHours();
2015-07-25 15:09:44 1398
原创 setTimeout用法:利用setTimeout在页面上不停的输出随机数
以下小程序着重掌握setTimeout( , )的用法,第一个参数是函数,第二个参数是毫秒数。 function Test() { var p = document.getElementById("p"); p.innerHTML = Math.random() * 20; setTimeout('Test()', 1000); }
2015-07-25 14:56:50 869
原创 java中的12个原子操作类
当程序更新一个变量时,如果多个线程同时更新这个变量,则可能会出现线程安全的问题。为了解决线程安全问题,可以用synchronized同步代码块或者synchronized同步方法。除此之外,还有一种方式,那就是原子操作类来操作变量。 Java中一共有12个原子操作类,名字都是以Atomic打头,都在java.util.concurrent.atomic包下,可以分为4种类型,每种类型
2015-07-25 13:56:07 570
原创 多线程进阶之并发工具类第二篇:Semaphore、Exchanger
1.Semaphore工具类, ['seməfɔːr],是信号灯的意思,用来控制同时访问特定资源的线程的数量。 举个例子,比如XX桥因为年久失修,要限制车数量,只允许同时最多有100辆车在桥上行驶,其他必须在路口等待,所以前100辆车会看到绿灯,可以开上桥,后面的车会看到红灯,不能开上桥。但是前面100辆车如果有5辆车已经下了桥,那么后面就允许有5辆车再开上桥。这个例子中的车就是线
2015-07-22 18:07:30 341
原创 ==与equals()方法的不同
==比较分为两种情况:基本数据类型比较与引用数据类型比较1.基本数据类型,根据基本数据类型的值是否相等来判断,相等则返回true,不相等则返回false。两端数据类型可以不同,如果转换后的数值相等,则也返回true @Test public void test1() { int i = 65; int j = 65; char c = 65; float f = 65
2015-07-22 17:42:14 382
原创 多线程进阶之并发工具类第一篇:CountDownLatch、CyclicBarrier
在java.util.concurrent包下有4个非常有用的并发工具类。CountDownLatch、CyclicBarrier提供了一种并发流程控制的手段。1.CountDownLatch探究:主要用到其两个实例方法:countDown()和await(),这两个方法配合使用,效果等同于Thread实例的join方法:案例:有两个子线程,让这两个子线程执行完之后再执行主线程。使
2015-07-20 18:22:35 708
原创 ThreadLocal类及常用的线程安全类探究
1.ThreadLocal类 ThreadLocal是Thread Local Variable的简称,意思是线程局部变量。作用是为每一个使用该变量的线程都提供一个该变量的副本,使每一个线程都能独立操作这个副本而不会与其他线程的副本冲突。 ThreadLocal在java.lang包下,是从jdk1.2就有的类,在jdk5.0之后加入了泛型支持。常用的方法也就三个:
2015-07-16 18:48:23 757
原创 项目中的BaseServlet
BaseServlet代码:import java.io.IOException;import java.lang.reflect.Method;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;imp
2015-07-16 15:11:57 2043
原创 c3p0连接池的使用
利用c3p0连接池获取数据库连接,即不再通过DriverManager的getConnection(url,user,password)方法获取connection,而是通过c3p0数据源的类来获取连接,可分为两种情况,用或者不用配置文件:1.不用配置文件,采用硬编码的形式设置连接池参数:导入c3p0的jar包:c3p0-0.9.5.1.jar以及mchange-commons-java-
2015-07-16 14:40:26 832
原创 JDBC代码规范化
JDBC规范化代码所谓代码规范化就是无论是否出现异常,都要关闭ResultSet、Statement,以及Connection。一个访问数据库的类Test1 的代码如下:import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import j
2015-07-15 19:45:30 417
原创 多个线程之间共享数据的方式(卖票问题,存取款问题)
多线程共享数据,其实要分为两种情况:1.多线程执行相同的代码处理数据,最经典的问题就是卖票;2.多线程执行不同的代码处理数据,最经典的问题就是银行存取钱。卖票问题探究:最初的代码是:public class Test1 { public static void main(String[] args) { Ticket target = new Ticket();
2015-07-15 17:00:45 759
原创 Arrays类与Array类探究
这里所说的Arrays类是util包中的java.util.Arrays,Array是反射包中的java.lang.reflect.Array。首先介绍Arrays类的常用的静态方法:1.排序方法:一系列重载的Arrays.sort(),参数是一个数组对象,可以是7种基本数据类型的数组,也可以是Object类型的数组。:示例:public static void main(St
2015-07-15 13:08:34 655
原创 前后端交互乱码问题处理
第一.服务器接收客户端请求乱码1.先用request.getParameter(xxx)获取参数值,然后对此参数值用ISO-8859-1解码再用UTF-8编码,对GET请求和POST请求都有效2.在用request.getParameter(xxx)方法获取参数值前,用request.setCharacterEncoding(encoding)方法设置字符集。但是这种方式只对POST请求(
2015-07-15 13:00:46 3229
原创 多线程基础知识第二篇:线程常用方法及各种状态
本篇主要介绍一下Thread类的方法以及探究一下线程的状态。首先,Thread类常用的静态方法:1.Thread.activeCount(),得到存活的线程数,返回值是int类型;2.Thread.holdsLock(Object obj),当前线程是否获得了指定的对象同步锁,返回值是boolean类型;3.Thread.currentThread(),得到当前线程,返回值是个Th
2015-07-15 12:03:31 2565
原创 多线程基础知识第一篇:创建线程3种方式
第一,首先说一下为什么要使用多线程。线程是大多数操作系统调度的基本单元,一个程序作为一个进程来执行,程序运行过程中能够创建多个线程,而一个线程在一个时刻只能运行在一个处理器核心上。也就是说单线程程序只能使用一个处理器核心,那么加入再多的处理器核心也无法显著提升程序的执行效率。相反,如果该程序使用多线程技术,将计算逻辑分配到多个处理器核心上,就会显著减少程序的处理时间,并且随着更多处理器核心的加
2015-07-08 17:30:13 541
原创 有用的位运算
1. &运算 :位与运算。相同位的两个数字都为1,则为1;若有一个不为1,则为0。00101&11100的结果是00100 一个数&1的结果就是取二进制的最末位。这可以用来判断一个整数的奇偶,二进制的最末位为0表示该数为偶数,最末位为1表示该数为奇数。public void testNumber(int a) { if ((a & 1) == 1) { Syste
2015-07-07 11:46:50 482
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人