自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 问答 (2)
  • 收藏
  • 关注

转载 菜鸟之路——Java并发(七)CountDownLatch、CyclicBarrier和Semaphore

在java中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。  一、CountDownLatch用法  CountDownLatch类位于java.util.concurrent包下,利用它可以实现类似计数器的功能。比如有一个任务A,它要等待其他4个任务执行完毕之后

2016-11-24 21:54:20 543

原创 菜鸟之路——Java并发(六)阻塞队列

在前面文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。在前面我们接触的队列都是非阻塞队列,比如PriorityQueue、LinkedList(LinkedList是双向链表,它实现了Dequeu

2016-11-23 19:55:29 768

原创 菜鸟之路——Java并发(五)同步容器与并发容器

一、同步容器  在Java的集合容器框架中,主要有四大类别:List、Set、Queue、Map。List、Set、Queue接口分别继承了Collection接口,Map本身是一个接口。  注意Collection和Map是一个顶层接口,而List、Set、Queue则继承了Collection接口,分别代表数组、集合和队列这三大类容器。像ArrayList、LinkedList都是实现

2016-11-22 22:10:02 5591

转载 菜鸟之路——Java并发(四)线程池的使用

转自:http://www.cnblogs.com/dolphin0520/p/3932921.html  在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:  如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。  那么有没有一种办法使得线程可以

2016-11-21 17:13:25 824

转载 菜鸟之路——Java并发(三)Lock

Lock之前在前面的文章菜鸟之路——Java多线程(http://blog.csdn.net/sjjsh2/article/details/53216146)中有提到,最近看到一篇写的非常易懂的文章,搬过来,加深印象。  本文转载自:http://www.cnblogs.com/dolphin0520/p/3923167.html  在之前文章中我们讲到了如何使用关键字synchroniz

2016-11-20 19:57:38 523

原创 菜鸟之路——Java并发(二)ThreadLocal

一、什么是ThreadLocal  ThreadLocal,很多地方叫做线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。很多博客都这样说:ThreadLocal为解决多线程程序的并发问题提供了一种新的思路,ThreadLocal的目的是为了解决多线程访问资源时的共享问题。但其实这么说并不准确。ThreadLocal是为变量在每个线程中都创建了一个副本(此副本的意思是通过每个线程中的n

2016-11-20 15:37:30 2208 1

原创 菜鸟之路——Java并发(一)多线程

一、线程的状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 从上图可以看出,Java线程具有五中基本状态: 1、新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread(); 2、就绪状态(Runnable):当调用线程对象的start()方法(t.start();),线程即进入就绪状态。处于就绪状...

2016-11-18 14:31:57 3728 2

转载 菜鸟之路——Spring MVC(十七)Druid

本文转自http://blog.csdn.net/yunnysunny/article/details/8657095  Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,有不得不使用数据库连接池。数据库连接池有很多选择,c3p、dhcp、proxool等,druid作为一名后起之秀,凭借其出色的性能,也逐渐印入了大家的眼帘。接下来本教程就说一下druid的简单使用。  首

2016-11-16 22:06:59 2791

原创 菜鸟之路——Spring MVC(十六)log4j

日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录。在apache网站:jakarta.apache.org/log4j 可以免费下载到Log4j最新版本的软件包。  Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,

2016-11-16 16:06:40 3059 1

转载 菜鸟之路——Spring MVC(十五)事务管理

文章转至http://zhou137520.iteye.com/blog/1675199  spring对事务的解决办法其实分为2种:编程式实现事务,AOP配置声明式解决方案。   http://jinnianshilongnian.iteye.com/blog/1496953   Spring提供了许多内置事务管理器实现,常用的有以下几种:   DataSourceTra

2016-11-15 19:10:05 2271

原创 菜鸟之路——Spring MVC(十四)Spring AOP

AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向切面编程。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。  我们现在做的一些非业务,如:日志、事务、安全等都会写在业务代码中(

2016-11-15 15:18:01 3113

原创 菜鸟之路——Spring MVC(十三)本地化与国际化

一、本地化  spring框架的大部分都支持国际化,就像springMVC一样。DispatcherServlet使你能够动态的通过客户端的本地语言进行配置。这是通过LocaleResolver完成的。  当一个请求到达,DispatcherServlet就会寻找LocaleResolver,如果找到就会试图通过它进行本地化。通过RequestContext.getLocale()方法我们

2016-11-09 18:03:30 3794

原创 菜鸟之路——Spring MVC(十二) mvc:annotation-driven做了什么

<mvc:annotation-driven /> 是一种简写形式,完全可以手动配置替代这种简写形式,简写形式可以让初学都快速应用默认配置方案。<mvc:annotation-driven /> 会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter 两个bean,是spring MV...

2016-11-09 15:46:42 27046 5

原创 菜鸟之路——Spring MVC(十一)ContextLoaderListener加载配置文件

ContextLoaderListener的作用:在启动Web容器时,自动装配Spring applicationContext.xml的配置信息。因为它实现了ServletContextListener这个接口,在web.xml配置这个监听器,启动容器时,就会默认执行它实现的方法。在ContextLoaderListener中关联了ContextLoader这个类,所以整个加载配置过程由...

2016-11-09 15:22:04 3612

原创 菜鸟之路——Spring MVC(十)配置文件

一、web.xml文件<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://

2016-11-08 20:33:28 1632

原创 菜鸟之路——Spring MVC(九)常用注解

抛开长长的xml文件,注解能解放我们的双手。我们就一起来看看Spring MVC 4中常用的那些注解。 spring开启注解的配置如下,先需在XML头文件下引入 spring-context,然后:<!-- 开启自动扫描 --><context:annotation-config/> <context:component-scan bas...

2016-11-08 15:18:41 3171

原创 菜鸟之路——Spring MVC(八)静态资源

一、前言 在SpringMVC中常用的就是Controller与View。但是我们常常会需要访问静态资源,如html,js,css,image等。如果将DispatcherServlet请求映射配置为”/”,则Spring MVC将捕获Web容器所有的请求,包括静态资源的请求,Spring MVC会将它们当成一个普通请求处理,因此找不到对应处理器将导致错误。如配置文件如下:...

2016-11-08 11:55:25 1706

原创 菜鸟之路——Spring MVC(七)异常处理

本文主要内容摘抄自:http://www.cnblogs.com/xinzhao/p/4902295.html  不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的、不可预知的异常需要处理。每个过程都单独处理异常,系统的代码耦合度高,工作量大且不好统一,维护的工作量也很大。下面将介绍如何使用Spring MVC统一处理异常,它能将所有类型的异

2016-11-07 20:15:08 1935

原创 菜鸟之路——Spring MVC(六)拦截器

使用SpringMVC拦截器和Struts2一样,Spring MVC也可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义的拦截器必须实现HandlerInterceptor接口。它的主要作用是拦截用户的请求并进行相应的处理。比如通过它来进行权限验证,或者是来判断用户是否登陆。  一、Spring中的拦截器  Spring为我们提供了:  org.sprin

2016-11-07 16:49:08 1838

原创 菜鸟之路——Spring MVC(五)ViewResolver

在Spring MVC中,ViewResolver 用来将用户控制器生成的返回结果解析成视图,View定义了不同的视图,并渲染给用户,但是Spring是怎样工作的呢?现在我们就分析下Spring如何解析返回的结果生成响应的视图。 一、概念 View ---View接口表示一个响应给用户的视图,例如jsp文件,pdf文件,html文件等,它的定义如下public inte...

2016-11-07 11:04:40 4038

原创 菜鸟之路——Spring MVC(四)handlerMapping和handlerAdapter

handlerMapping和handlerAdapter前面几篇文章或多或少都已经提及,此篇文章一方面是为了加深印象,另一方面通过部分源码再进一步了解深入。一、Spring MVC中的handlerMapping    我们知道Spring MVC 使用HandlerMapping来找到并保存url请求和处理函数间的mapping关系,即根据http请求选择合适的controller。以

2016-11-06 21:21:41 3258

原创 菜鸟之路——Spring MVC(三)DispatcherServlet详解

前言:回顾一下Spring的启动过程: 1、首先,对于一个web应用,其部署在web容器中,web容器提供其一个全局的上下文环境,这个上下文就是ServletContext,其为后面的spring IoC容器提供宿主环境; 2、其次,在web.xml中会提供有contextLoaderListener。在web容器启动时,会触发容器初始化事件,此时contextLoaderListene...

2016-11-06 14:15:56 7861 2

原创 菜鸟之路——Spring MVC(二)再次深入

Spring MVC 的核心类与接口:- DispatcherServlet 前置控制器- HandlerMapping 请求映射(到Controller)- HandlerAdapter 请求映射(到Controller类的方法上)- Controller 控制器- HandlerIntercepter 拦截器- ViewResolver 视图映射- View 视图处

2016-11-05 20:02:10 1336

原创 菜鸟之路——Spring MVC(一)初探

一、MVC框架是什么模型Model-视图View-控制器Controller(MVC)是一个众所周知的以设计界面应用程序为基础的设计模式。它主要通过分离模型、视图及控制器在应用程序中的角色将业务逻辑从界面中解耦。通常,模型负责封装应用程序数据在视图层展示。视图仅仅只是展示这些数据,不包含任何业务逻辑。控制器负责接收来自用户的请求,并调用后台服务(manager或者dao)来处理业务逻辑。处理后

2016-11-05 17:33:19 5290 1

空空如也

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

TA关注的人

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