Spring(一):Spring概念、基本例子入门

2024-09-05 08:48

本文主要是介绍Spring(一):Spring概念、基本例子入门,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

spring学习地址:http://edu.51cto.com/lesson/id-36998.html


一、什么是Spring

Spring是分层的JavaSE/EE full-stack(一站式)轻量级开源框架

分层:

         * SUN提供的EE的三层结构:web层、业务层、数据访问层(持久层,集成层)

         * Struts2是web层基于MVC设计模式框架.

         * Hibernate是持久的一个ORM的框架.

一站式:

        Spring框架有对三层的每层解决方案:

                      * web层:Spring MVC.

                      * 业务层:Spring的Bean管理.

                      * 持久层:JDBC Template 


二、Spring核心概念    

IOC(Inverse of Control 反转控制):将对象的创建权,交由Spring完成.

AOP (Aspect Oriented Programming面向切面编程) :是面向对象的功能延伸.不是替换面向对象,是用来解决OO中一些问题.


三、Spring优势

方便解耦,简化开发

            * Spring就是一个大工厂,可以将所有对象创建和依赖关系维护,交给Spring管理

AOP编程的支持

            * Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能

声明式事务的支持

            * 只需要通过配置就可以完成对事务的管理,而无需手动编程

方便程序的测试

            * Spring对Junit4支持,可以通过注解方便的测试Spring程序

方便集成各种优秀框架

            * Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:Struts、Hibernate、MyBatis、Quartz等)的直接支持

降低JavaEEAPI的使用难度

            * Spring 对JavaEE开发中非常难用的一些API(JDBC、JavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低


四、基本例子入门


步骤:

1、导入Spring开发包和依赖包

spring-framework-3.2.0.RELEASE-dist.zip                ---Spring开发包

           * docs       :spring框架api和规范

           * libs       :spring开发的jar包

           * schema     :XML的约束文档.

spring-framework-3.0.2.RELEASE-dependencies.zip        ---Spring开发中的依赖包

创建web工程导入需要的包:

spring-beans-3.2.0.RELEASE.jar

spring-context-3.2.0.RELEASE.jar

spring-core-3.2.0.RELEASE.jar

spring-expression-3.2.0.RELEASE.jar

开发的日志记录的包(在依赖包之中):

com.springsource.org.apache.commons.logging-1.1.1.jar      --- 用于整合其他的日志的包(类似Hibernate中slf4j)

com.springsource.org.apache.log4j-1.2.15.jar

2、创建spring的配置文件

配置Spring核心配置文件,将HelloService的创建交给容器处理



3、通过Spring容器获取HelloService对象


ApplicationContext 应用上下文,加载Spring 框架配置文件
加载classpath:
     new ClassPathXmlApplicationContext("applicationContext.xml");
加载磁盘路径:
     new FileSystemXmlApplicationContext("applicationContext.xml");


这篇关于Spring(一):Spring概念、基本例子入门的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1138486

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

基本知识点

1、c++的输入加上ios::sync_with_stdio(false);  等价于 c的输入,读取速度会加快(但是在字符串的题里面和容易出现问题) 2、lower_bound()和upper_bound() iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。 iterator upper_bou

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听