ssh(sturts2_spring_hibernate) 框架搭建之spring
一、spring总结:
⑴、spring是一个轻量级的JAVA开发框架,主要的作用是用来管理实例(可以解决JAVA类中new对象的问题,节省内存资源。)和降低代码之间的耦合性,促进代码模块化。
⑵、促进代码的模块化学也就是所说的IOC(Inversion Of Control)。然其中DI用的较为广泛。
二、spring搭建:
⑴、导入相关的jar包:
①、下载好spring后解压出来找到lib目录将其中除了javaDoc和sources的jar包全部导入项目中,并且在struts解压包lib目录中找到struts2-spring-plugin的jar包和Commons-logging的jar包导入项目中。如下:
②、在web.xml中进行相关的文件配置:
③、在struts.xml中进行声明:目的地是所有的实例创建都交给spring去做(使用spring来管理实例):
④、在项目src中新建一个xml文件即applicationContext.xml,在这里进行spring的bean的配置:
⑴、首先需要进行beans标签。beans标签中是基本的配置头信息,基本上不会改变,除了版本之间的差异之外需要改一下版本信息,其他基本变化不大。
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jee="http://www.springframework.org/schema/jee"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.2.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-4.2.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.2.xsd">
<!--之后在这里进行bean实例的配置。-->
<beans>
⑵、其次配置bean实例中进行,下面是示例的配置:
· bean标签中的id属性是bean的名字,可能一个实例中需要用到另外一个实例,就需要引用,这个id就是引用的名字。
· bean标签中的class属性是指向的这个类,也就是会对这个类进行new实例,但是不是自己作,而是bean帮我们解决。
· bean标签中的scope是设置实例的创建形式,如:
singleton:单实例,在bean无状态使用。
prototype:每次对这个bean的请求都会创建一个实例。
request:每次http请求将会有各自的bean实例,类似于prototype。
session:在一个http session中,一个bean定义对应一个bean实例。
global session:在一个全局的http session中,一个bean定义对应一个bean实例。典型情况下,仅在使用portlet context的时候有效。
① 、这行代码的意思是:首先,在action.ActionService类中需要有一个成员属性为ms,定义了这个属性的set方法(spring会帮忙注入这个实例),并且类型是一个services.MyServiceImp的类型或者是这个类的接口类型,如下:
其次,这个属性引用了下面的bean的id为myServiceImp的实例。
最后,这个句最终的作用就是为这个ms成员属性注入了一个myServiceImp的实例。
②、 这句代码的意思则是:new出了一个util.MyConnectionImp的实例,并且每次请求这个bean的时候都会new一个这个实例。
讲解结束,谢谢浏览!
ssh(sturts2_spring_hibernate) 框架搭建之spring的更多相关文章
- ssh(sturts2_spring_hibernate) 框架搭建之hibernate2
一.今天要进行解答的是对上次hibernate1进行进一步的完善,这次第一是进一步使用spring注入一个SessionFactory实例,避免了自己new实例:第二是应用数据库池(c3p0). 二. ...
- ssh(sturts2_spring_hibernate) 框架搭建之hibernate1
一.hibernate简单了解: ⑴.hibernate一个java领域里面的一个持久化的ORM框架. 持久化:就是对对象的数据修改,hibernate会把修改的数据同步到数据库中. ORM:Obje ...
- ssh(sturts2_spring_hibernate) 框架搭建之struts2
一.struts2完整流程的逻辑(整体的概述) 首先,用户在地址栏中输入你的项目访问路径,然后这个请求会发送到服务器,之后服务器发现在web.xml中配置了一个filter过滤器,并且这个过滤器需要对 ...
- ssh(sturts2_spring_hibernate) 框架搭建之JPA代替hibernate
一.JPA用来替代hibernate ⒈JPA的全称是JAVA Persistence API.指的是JPA通过注解或者是XML描述对象—关系表的映射关系,并且将运行的实体对象持久化数据库中. ⒉JP ...
- 新手SSH基础框架搭建
SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架. 首先我们先了解SSH的框架所需的包和基本概念: 一.下面我们先来了解一下strut ...
- SSH基本框架搭建后的简化
对于SSh框架的简化,我们可以从下面几个方面来剖析: 1.实体类entity:在这里我们需要将数据库和实体类进行关联,在简化之前,我们需要在entity包里面加入一份.xml配置文件 例如原码---- ...
- Maven+SSM框架搭建【spring+springmvc+mybatis】
本案例用到:ssm[spring+springmvc+mybatis]框架 数据库:mysql (推荐使用mysql 或者 sqlserver .oracle太大,一般大型项目才会用到) 开发工具: ...
- SSM框架搭建(Spring+SpringMVC+MyBatis)与easyui集成并实现增删改查实现
一.用myEclipse初始化Web项目 新建一个web project: 二.创建包 controller //控制类 service //服务接口 service.impl //服务 ...
- JAVAEE——SSH三大框架整合(spring+struts2+hibernate)
一.整合原理 二.导包(41个) 1.hibernate (1)hibernate/lib/required (2)hibernate/lib/jpa | java persist api java的 ...
随机推荐
- iOS Developer:真机测试
如果出现ios development一项为灰色不可点击状态,苹果的说法是 如果您要为此电脑添加证书,请revoke以前的证书后添加,或者通过以前的mac导出证书 原文不记得了,大概这个意思,苹果不希 ...
- Getting Started with WebRTC [note]
Getting Started with WebRTC 原文 RTCPeerConnection 1.caller和callee互相发现彼此 2.并且交换capabilities信息 3.初始化ses ...
- Mac OS X 10.9.3 UI 设置界面无法设置时区解决
10.9.3 在选项设置里无法设置时区,表现为选择时区的点的位置后无法保存,导致系统时间错乱,解决方法是用终端设置: sudo systemsetup -gettimezone sudo system ...
- 【原创】WinForm 模态对话框
今天解决的一个问题,记录下,以备后用. 问题描述:WinForm程序有超时自动退出功能,但是有些模态对话框不关掉的话会退出失败,原因(猜测): 程序倒计时用的System.Windows.Forms. ...
- 解决Ubuntu Server 12.04 在Hyper-v 2012 R2中不能使用动态内存的问题
前言 全新Hyper-v 2012 R2终于开始支持在Linux的VPS中使用动态内存,可以大大优化服务器的资源分配,小弟我兴奋不已,于是抽空时间赶紧升级到 2012 R2,好好整理一番内存分配,不过 ...
- 使用curl 下载HTML
简单的一个curl小例子: #include <iostream> #include <string> #include <sstream> #include &l ...
- Quartz.net 定时调度时间配置格式说明与实例
格式: [秒] [分] [小时] [日] [月] [周] [年] 序号 说明 是否必填 允许填写的值 允许的通配符 1 秒 是 0-59 , - * / 2 分 是 0-59 , - * / 3 小时 ...
- SQL SERVER 内存学习系列(二)-DMV查看内存信息
内存管理在SQL Server中有一个三级结构.底部是内存节点,这是最低级的分配器,用于SQL Server的内存.第二个层次是由内存Clerk组成,这是用来访问内存节点和缓存存储,缓存存储则用于缓存 ...
- RCP中如何使用代码安装、运行plugins
其实在google或者http://www.eclipse.org/forums/就能够找到这个问题的答案. 搜索关键字:rcp install plugins\bundles programmati ...
- Chrome开发者工具不完全指南(六、插件篇)
本篇是Chrome开发者工具的结尾篇,最后为大家介绍几款功能强大的插件.在chrome商店里面有很多插件,没事建议大家去逛逛.不过需要FQ,所以诸位请自备神器.一.皮肤插件 首先是大家期盼已久,翘首以 ...