随笔分类 - [14] Java/JSP
Java/JSP
摘要:Spring 2.5 版本新增了 Spring MVC 注解功能,用于替换传统的基于 XML 的 Spring MVC 配置。 在《第一个Spring MVC应用》一节中创建了两个传统风格的控制器,它们是实现 Controller 接口的类。传统风格的控制器不仅需要在配置文件中部署映射,而且只能编写
阅读全文
摘要:Spring MVC Controller 接收请求参数的方式有很多种,有的适合 get 请求方式,有的适合 post 请求方式,有的两者都适合。主要有以下几种方式: 通过实体 Bean 接收请求参数 通过处理方法的形参接收请求参数 通过 HttpServletRequest 接收请求参数 通过 @
阅读全文
摘要:在学习框架之前,首先来了解一下 Spring MVC 框架的整体请求流程和使用到的 API 类。 Spring MVC 框架是高度可配置的,包含多种视图技术,例如 JSP、FreeMarker、Tiles、iText 和 POI。Spring MVC 框架并不关心使用的视图技术,也不会强迫开发者只使
阅读全文
摘要:视图解析器(ViewResolver)是 Spring MVC 的重要组成部分,负责将逻辑视图名解析为具体的视图对象。 Spring MVC 提供了很多视图解析类,其中每一项都对应 Java Web 应用中特定的某些视图技术。下面介绍一些常用的视图解析类。 URLBasedViewResolver
阅读全文
摘要:本节通过一个简单的 Web 应用 springmvcDemo 来演示如何创建 Spring MVC 程序。 搭建步骤如下: 创建 Web 应用并引入 JAR 包,本教程 Spring 使用版本为 5.2.3 Spring MVC 配置:在 web.xml 中配置 Servlet,创建 Spring
阅读全文
摘要:Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet。 Spring MVC 是结构清晰的 Servlet+JSP+JavaBean 的实现,是一个典型的教科书式的 MVC 构架,不像 Struts 等其它框架都是变种或者不
阅读全文
摘要:什么是 MVC MVC 设计模式一般指 MVC 框架,M(Model)指数据模型层,V(View)指视图层,C(Controller)指控制层。使用 MVC 的目的是将 M数据模型 和 V视图 实现代码分离,使同一个程序可以有不同的表现形式。其中,View 的定义比较清晰,就是用户界面。 例如: 在
阅读全文
摘要:一、AOP——另一种编程思想 1.1 什么是 AOP AOP(Aspect Orient Programming),直译过来就是 面向切面编程。AOP 是一种编程思想,是面向对象编程(OOP)的一种补充。面向对象编程将程序抽象成各个层次的对象,而面向切面编程是将程序抽象成各个切面。 从《Spring
阅读全文
摘要:通过学习《Spring JDK动态代理》一节可以了解到,JDK 动态代理使用起来非常简单,但是 JDK 动态代理的目标类必须要实现一个或多个接口,具有一定的局限性。如果不希望实现接口,可以使用 CGLIB代理。 CGLIB(Code Generation Library)是一个高性能开源的代码生成包
阅读全文
摘要:Spring JDK 动态代理需要实现 InvocationHandler 接口,重写 invoke 方法,客户端使用 Java.lang.reflect.Proxy 类产生动态代理类的对象。 示例 下面使用 Eclipse IDE 演示 JDK 动态代理,步骤如下: 创建 SpringDemo 项
阅读全文
摘要:AOP 的全称是“Aspect Oriented Programming”,即面向切面编程,和 OOP(面向对象编程)类似,也是一种编程思想。 AOP 采取横向抽取机制(动态代理),取代了传统纵向继承机制的重复性代码,其应用主要体现在事务处理、日志管理、权限控制、异常处理等方面。主要作用是分离功能性
阅读全文
摘要:调用set方法在实例化对象的时候属性注入,用到了property标签或者p名称空间;除了这种方式,还可以调用有参构造方法在实例化对象的时候属性注入,这种方式需要用到constructor-arg标签。constructor-arg子标签:指定创建类对象时使用哪个构造函数,每一对或每一个constru
阅读全文
摘要:如果需要传递类似于 Java Collection 类型的值,例如 List、Set、Map 和 properties,可以使用 Spring 提供的集合配置标签,如下表所示。 标签 说明 <list> 用于注入 list 类型的值,允许重复 <set> 用于注入 set 类型的值,不允许重复 <m
阅读全文
摘要:Spring 依赖注入(Dependency Injection,DI)和控制反转含义相同,它们是从两个角度描述的同一个概念。使用依赖注入可以更轻松的管理和测试应用程序。 当某个 Java 实例需要另一个 Java 实例时,传统的方法是由调用者创建被调用者的实例(例如,使用 new 关键字获得被调用
阅读全文
摘要:在配置文件中,除了可以定义 Bean 的属性值和相互之间的依赖关系,还可以声明 Bean 的作用域。例如,如果每次获取 Bean 时,都需要一个 Bean 实例,那么应该将 Bean 的 scope 属性定义为 prototype,如果 Spring 需要每次都返回一个相同的 Bean 实例,则应将
阅读全文
摘要:IoC 容器是 Spring 的核心,也可以称为 Spring 容器。Spring 通过 IoC 容器来管理对象的实例化和初始化,以及对象从创建到销毁的整个生命周期。 Spring 中使用的对象都由 IoC 容器管理,不需要我们手动使用 new 运算符创建对象。由 IoC 容器管理的对象称为 Spr
阅读全文
摘要:由 Spring IoC 容器管理的对象称为 Bean,Bean 根据 Spring 配置文件中的信息创建。 可以把 Spring IoC 容器看作是一个大工厂,Bean 相当于工厂的产品,如果希望这个大工厂生产和管理 Bean,则需要告诉容器需要哪些 Bean,以及需要哪种方式装配 Bean。 S
阅读全文
摘要:Spring 框架采用分层的理念,根据功能的不同划分成了多个模块,这些模块大体可分为 Data Access/Integration(数据访问与集成)、Web、AOP、Aspects、Instrumentation(检测)、Messaging(消息处理)、Core Container(核心容器)和
阅读全文
摘要:Spring简介 Spring是一个从实际开发中抽取出来的框架,因此它完成了大量开发中的通用步骤,留给开发者的仅仅是与特定应用相关的部分,从而大大提高了企业应用的开发效率。 Spring总结起来优点如下: 独立于各种应用服务器,基于Spring框架的应用,可以真正实现Write Once,Run A
阅读全文
摘要:一、MyBatis 框架的优点: 1. 与JDBC相比,减少了50%以上的代码量。 2. MyBatis是最简单的持久化框架,小巧并且简单易学。 3. MyBatis灵活,不会对应用程序或者数据库的现有设计强加任何影响,SQL可以写在XML里(还可以以注解方式写到Java代码中),从程序代码中彻底分
阅读全文