`
文章列表
​ O/R工具出现之后,简化了许多复杂的信息持久化的开发。Spring应用开发者可以通过Spring提供的O/R方案更方便的使用各种持久化工具,比如Hibernate;下面我们就Spring+Hibernate中的Spring实现做一个简单的剖析。 Spring对Hinberanate的 ...
​ 前面我们分析了Spring AOP实现中得到Proxy对象的过程,下面我们看看在Spring AOP中拦截器链是怎样被调用的,也就是Proxy模式是怎样起作用的,或者说Spring是怎样为我们提供AOP功能的; 在JdkDynamicAopProxy中生成Proxy对象的时候:  Java代码   return Proxy.newProxyInstance(classLoader, proxiedInterfaces, this);  
最近在项目中使用到了一个垂直的二级菜单,该菜单基于bootstrap开发,主要用到了bootstrap和font-awesome字体图标;可直接应用于后台系统的菜单展示。 页面效果如图:  菜单美观大方,非常适合做后台管理系统的菜单展示。 部 ...
  我们看看Spring中的事务处理的代码,使用Spring管理事务有声明式和编程式两种方式,声明式事务处理通过AOP的实现把事物管理代码作为方面封装来横向插入到业务代码中,使得事务管理代码和业务代码解藕。在这种方式我们结合IoC容器和Spirng已有的FactoryBean来对事务管理进行属性配置,比如传播行为,隔离级别等。其中最简单的方式就是通过配置TransactionProxyFactoryBean来实现声明式事物; 在整个源代码分析中,我们可以大致可以看到Spring实现声明式事物管理有这么几个部分:     * 对在上下文中配置的属性的处理,这里涉及的类是TransactionA ...
​ 下面我们来看看Spring的AOP的一些相关代码是怎么得到Proxy的,让我们我们先看看AOP和Spring AOP的一些基本概念: Advice:     通知,制定在连接点做什么,在Sping中,他主要描述Spring围绕方法调用注入的额外的行为,Spring提供的通知类型有:     before advice,AfterReturningAdvice,ThrowAdvice,MethodBeforeAdvice,这些都是Spring AOP定义的接口类,具体的动作实现需要用户程序来完成。 Pointcut: 
​ 下面我们对Spring MVC框架代码进行分析,对于webApplicationContext的相关分析可以参见以前的文档,我们这里着重分析Spring Web MVC框架的实现.我们从分析DispatcherServlet入手:  Java代码   //这里是对DispatcherServlet的初始化方法,根据名字我们很方面的看到对各个Spring MVC主要元素的初始化   protected void initFrameworkServlet() throws ServletException, BeansException {       init ...
​ 引用自博客:http://jiwenke-spring.blogspot.com/ 下面我们看看Spring JDBC相关的实现, 在Spring中,JdbcTemplate是经常被使用的类来帮助用户程序操作数据库,在JdbcTemplate为用户程序提供了许多便利的数据库操作方法,比如查询,更新等,而且在Spring中,有许多类似 JdbcTemplate的模板,比如HibernateTemplate等等 - 看来这是Rod.Johnson的惯用手法,一般而言这种Template中都是通过回调函数CallBack类的使用来完成功能的,客户需要在回调接口中实现自己需要的定制行为,比如使用 ...
  以下引用自博客:http://jiwenke-spring.blogspot.com/ 上面我们分析了IOC容器本身的实现,下面我们看看在典型的web环境中,Spring IOC容器是怎样被载入和起作用的。 简单的说,在web容器中,通过ServletContext为Spring的IOC容器提供宿主环境,对应的建立起一个IOC容器的体系。其中,首先需要建立的是根上下文,这个上下文持有的对象可以有业务对象,数据存取对象,资源,事物管理器等各种中间层对象。在这个上下文的基础上,和web MVC相关还会有一个上下文来保存控制器之类的MVC对象,这样就构成了一个层次化的上下文结构。在web容器中 ...
Spring 在认真学习Rod.Johnson的三部曲之一:<<Professional Java Development with the spring framework>>,顺便也看了看源代码想知道个究竟,抛砖引玉,有兴趣的同志一起讨论研究吧! 以下内容引自博客:http://jiwenke-spring.blogspot.com/,欢迎指导:) 在Spring中,IOC容器的重要地位我们就不多说了,对于Spring的使用者而言,IOC容器实际上是什么呢?我们可以说BeanFactory就是我们看到的IoC容器,当然了Spring为我们准备了许多种IoC容器来使 ...
​ 这里的代码块是指独立于方法体之外的用{}括起来的代码块,包括静态代码块、非静态代码块,例如: class  A{   static  int  x=0;//静态属性   int  y=1;  //非静态属性   static{        //静态代码块   }   {        //非静态代码块   }   public A(){       //构造方法   }   public static void main(String[]  args){
      1.什么是IO           Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何J ...
1,概述 定义 :枚举类是指实例的数量有限的类。比如表示性别的Gender类,它只有两个实例 Gender.FEMALE和Gender.MALE.; 2,例子:   package springmvc.controller; public enum  Size { SMALL("S"),MEDIUM("M"),LARGE("L"),EXTRA_LARGE("XL");   String size;   private Size(String size){//构造方法 th ...
java基础-参数数量可变的方法 1,概述 在java SE 5.0 之前版本,每个java方法都是固定参数的。然而,现在提供了可变参数的方法调用。 2,定义 举例: public class PrintStream{     ……     ​public PrintStream printf(String fmt,Object . . ...
ObjectInputStream和ObjectInputStream类创建的对象被称为对象输入流和对象输出流。 创建文件输出流代码: FileOutputStream file_out = new FileOutputStream(“student.dat”); ObjectOutputStream object_out = new ObjectOutputStream(file_out); 创建文件输入流代码: FileInputStream   file   =   new   FileInputStream( "student.dat "); Obje ...
  ObjectOutputStream和ObjectInputStream   ​ 这个流的作用是,直接将一个对象转换为字节流..其实就是序列化...implements Serializable   Serializable这个是标记性的接口...标记性就是说,这个接口没有提供任何的方法.所以我们也不需要实现方法.但是如果某一个类需要被序列化,那么,他就必须实现这个接口...   看例子   package com.test.Stream;   import java.io.FileNotFoundException;import java.io.IOExcepti ...
Global site tag (gtag.js) - Google Analytics