Java
文章平均质量分 58
sudo_Up_Up_
无!~
展开
-
java用户角色权限设计
实现业务系统中的用户权限管理 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检 测实 现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就能通过浏览器轻易访问到B/S系统中的所 有功能。因此B/S业务系统都需要有一个或多个权限系统来实现访问权限转载 2014-10-29 11:38:01 · 504 阅读 · 0 评论 -
JUC (Java Util Concurrency) 概述
目录[-]转自:http://www.goldendoc.org/2011/05/juc/1. JUC概况2. 原子操作3. 指令重排4. Happens-before法则:(Java 内存模型)JMM的特性:volatile语义:5. CAS操作6. Lock 锁7. AQSAQS实现:Atomically managing synchro转载 2015-01-30 15:38:43 · 465 阅读 · 0 评论 -
Java NIO(New IO) 教程
jdk1.4 里提供的新api 。Sun 官方标榜的特性如下: 为所有的原始类型提供(Buffer)缓存支持。字符集编码解码解决方案。 Channel :一个新的原始I/O 抽象。 支持锁和内存映射文件的文件访问接口。 提供多路(non-bloking) 非阻塞式的高伸缩性网络I/O 。Java NIO系列教程(一) Java NIO 概述Java NIO系列教程(二) Channel转载 2015-01-31 13:35:18 · 381 阅读 · 0 评论 -
Socket网络编程之Client端
Socket( InetAddress/String remoteAddress, int port): 创建连接到指定远程主机、远程端口的Socket,该构造器没有指定本地地址、本地端口,默认使用本地主机的默认IP地址,默认使用系统动态指定的IP地址。 Socket(InetAddress/String remoteAddress, int port, InetAddress loca原创 2015-01-29 10:37:11 · 542 阅读 · 0 评论 -
Socket网络编程之server端
ServerSocket的构造方法有以下几种重载形式:ServerSocket()throws IOExceptionServerSocket(int port) throws IOExceptionServerSocket(int port, int backlog) throws IOExceptionServerSocket(int port, int backlog, In转载 2015-01-29 10:32:53 · 392 阅读 · 0 评论 -
Lock和Condition实现线程同步通信
1>Lock: Lock比传统线程模型中的Synchronied方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象.两个线程执行的代码段要实现同步互斥的效果,它们必须用同一个Lock对象,锁是在代表要操作的资源的类的内部方法中,而不是线程代码中. 上面的输出器Outputer类就可以这样改写:class Outputer2 { // 声转载 2015-01-30 10:50:51 · 306 阅读 · 0 评论 -
理解ThreadLocal
ThreadLocal是什么早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命名为T转载 2015-01-27 13:41:34 · 280 阅读 · 0 评论 -
UncaughtExceptionHandler,捕获错误
最近在做个项目,需要在程序出现运行时异常和错误导致程序crash时进行一些操作,找到一个方法Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {// 给主线程设置一个处理运行时异常的handler public void转载 2014-10-31 09:39:01 · 402 阅读 · 0 评论 -
Java IO和Java NIO在文件拷贝上的性能差异分析
1. 在JAVA传统的IO系统中,读取磁盘文件数据的过程如下:以FileInputStream类为例,该类有一个read(byte b[])方法,byte b[]是我们要存储读取到用户空间的缓冲区。参看read(byte b[])方法的源码,可知,它会在内部再调用readBytes(b, 0, b.length)方法,而且readBytes(b, 0, b.le转载 2014-10-29 11:26:36 · 538 阅读 · 0 评论 -
Java内存泄露的理解与解决
Java内存管理机制在C++ 语言中,如果需要动态分配一块内存,程序员需要负责这块内存的整个生命周期。从申请分配、到使用、再到最后的释放。这样的过程非常灵活,但是却十分繁琐,程序员很容易由于疏忽而忘记释放内存,从而导致内存的泄露。 Java 语言对内存管理做了自己的优化,这就是垃圾回收机制。 Java 的几乎所有内存对象都是在堆内存上分配(基本数据类型除外),然后由 GC ( garbag转载 2014-10-27 15:20:18 · 308 阅读 · 0 评论 -
Java泛型总结
1. 什么是泛型?泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。可以把类型参数看作是使用参数化类型时指定的类型的一个占位符,就像方法的形式参数是运行时传递的值的占位符一样。可以在集合框架(Collection framework)中看到泛型的动机。例如,Map 类允许您向一个 Map 添加任意类转载 2014-10-29 14:30:53 · 268 阅读 · 0 评论 -
Java文件操作大全
packagecom.files.util; importjava.io.BufferedReader; importjava.io.File; importjava.io.FileInputStream; importjava.io.FileOutputStream; importjava.io.FileRe转载 2014-10-29 13:28:45 · 313 阅读 · 0 评论 -
影响Java EE性能的十大问题
摘要:本文总结了影响Java EE性能的十大问题 1)缺乏正确的容量规划;2)中间件环境规范不足;3)虚拟机垃圾回收过度;4)与外部系统集成过多或过少;5)缺乏适当的数据库SQL调优和容量规划;6)特定应用程序性能问题;7)中间件调优问题;8)主动监控不足;9)公共基础设施硬件饱和;10)网络延迟。本文作者是一名有10多年经验的高级系统架构师,他的主要专业领域是Java EE、中间件和转载 2014-10-29 14:03:40 · 317 阅读 · 0 评论 -
java自带线程池和队列详细讲解
Java线程池使用说明一简介线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的。在jdk1.5之后这一情况有了很大的改观。Jdk1.5之后加入了java.util.concurrent包,这个包中主要介绍java中线程以及线程池的使用。为我们在开发中处理线程的问题提供了非常大的帮助。二:线程池线程池的作用:转载 2014-10-29 09:09:33 · 274 阅读 · 0 评论 -
java.util.concurrent 用法实例详解
编写多线程的程序一直都是一件比较麻烦的事情,要考虑很多事情,处理不好还会出很多意想不到的麻烦。加上现在很多开发者接触到的项目都是打着企业级旗号的B/S项目,大多数人都很少涉及多线程,这又为本文的主角增加了一份神秘感。 讲到Java多线程,大多数人脑海中跳出来的是Thread、Runnable、synchronized……这些是最基本的东西,虽然已经足够强大,但想要用好还真不容易。从JDK转载 2015-01-30 15:59:24 · 368 阅读 · 0 评论