1.spring环境的搭建
1.app.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="spring">
<section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core" />
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
</sectionGroup>
</configSections>
<spring>
<context>
<resource uri="assembly://FirstSpringNetApp/FirstSpringNetApp/Objects.xml"/>
<resource uri="config://spring/objects" />
</context>
<objects xmlns="http://www.springframework.net"/> <!--必要-->
</spring>
</configuration>
2.根据app.config设置的object.xml文件 相当于一个工厂
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.net
http://www.springframework.net/xsd/spring-objects.xsd">
<object id="PersonDao" type="FirstSpringNetApp.PersonDao, FirstSpringNetApp" />
</objects>
3.persondao类
namespace FirstSpringNetApp
{
public class PersonDao
{
public override string ToString()
{
return "我是PersonDao";
}
}
}
4.对象的获取方式的说明 通常我们使用程序集路径
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spring.Context;
using Spring.Context.Support;
using Spring.Core.IO;
using Spring.Objects.Factory;
using Spring.Objects.Factory.Xml;
namespace FirstSpringNetApp
{
class Program
{
static void Main(string[] args)
{
AppRegistry();
XmlSystem();
Console.ReadLine();
}
static void AppRegistry()
{
IApplicationContext ctx = ContextRegistry.GetContext();
Console.WriteLine(ctx.GetObject("PersonDao").ToString());
}
static void XmlSystem()
{
string[] xmlFiles = new string[]
{
//"file://Objects.xml" //, 文件名
"assembly://FirstSpringNetApp/FirstSpringNetApp/Objects.xml" //程序集
};
IApplicationContext context = new XmlApplicationContext(xmlFiles);
IObjectFactory factory = (IObjectFactory)context;
Console.WriteLine(factory.GetObject("PersonDao").ToString());
}
static void FileSystem()
{
IResource input = new FileSystemResource(@"D:\Objects.xml"); //实际物理路径
IObjectFactory factory = new XmlObjectFactory(input);
Console.WriteLine(factory.GetObject("PersonDao").ToString());
}
}
}
有时出现spring调用目标异常却束手无策,这里给出一些可能性
1.没有引用相应的dll 如 common.logging.dll common.logging.log4net.dll ,log4net.dll ,spring.core.dll,spring.data.dll,spring.data.nhibernate30.dll ,spring.web.dll,spring.service.dll,Spring.Aop.dll,Spring.Scheduling.Quartz.dll,Quartz.dll,nhibernate.dll
除了这些基本的dll在跟hibernate继承的时候,要引用相应的数据客户端dll,我这里用oralce,所以引用oracle.dataaccess.dll(64位或者32位,自己看情况)
2.如果是控制台项目或者winform项目相应使用spring注入的context,如我这里是
<context>
<resource uri="file://Config/BLL.xml" />
<resource uri="file://Config/Dao2.xml" />
<resource uri="file://Config/Service.xml" />
</context>
把他们改为始终复制 内容
3.用了64为的oralcle.dataaccess.dll 项目也要编译为64位的dll,把解决方案->属性->配置属性里相应项目的改为x64,配置管理器找到相应项目也改成x64,还有如我的类库是EtlTranslateInterface,那么选中它,右键属性->目标平台->x64
4.新建项目的app.config里如果有startup标签页删除掉
5.你的项目的spring和hibernate等相应的版本是匹配的可运行的,如spring.core.dll用1.0的hibernate.dll用2.0可能也不行,这里打个比方,我没看他们的版本号
1.spring环境的搭建的更多相关文章
- spring环境的搭建及作用和定义<一>
问题?spring的定义及作用.spring的环境搭建 一.spring的定义及作用 1.spring由Rod Johnson创建的一个开源框架,它是为了解决企业应用开发的复杂性而创建的.框架的主要优 ...
- 2018.12.20 Spring环境如何搭建
Spring学习 1.导入spring约束 为后续创建xml文件做铺垫 2.开始搭建Spring环境 1.创建Web项目,引入spring的开发包(根据下面的图来引入) 2.引入jar包 coreCo ...
- Spring环境的搭建与测试 (spring2.5.6)
这里是采用的视频里面的spring版本 下载spring2.5.6, 然后进行解压缩,在解压目录中找到下面jar文件,拷贝到类路径下 dist\spring.jar lib\jakarta-commo ...
- SSH三个主流框架环境的搭建
part 1 Hibernate环境的搭建 part2 struts2环境的搭建 第一步:从struts2官网下载需要的各种资料和jar包 第二步:在ecplise里面创建web项目,然后在web ...
- Spring环境搭建之:导入jar包、配置文件名称及放置位置
Spring环境搭建之:导入jar包.配置文件名称及放置位置 现在项目开发中spring框架应用的还是比较多的,自己用的还不太熟练,每次用的时候总配置半天,总有些配置弄错,就找个时间总结以下,方便以后 ...
- 【Spring学习笔记-1】Myeclipse下Spring环境搭建
*.hl_mark_KMSmartTagPinkImg{background-color:#ffaaff;}*.hl_mark_KMSmartTagBlueImg{background-color:# ...
- 工作笔记3.手把手教你搭建SSH(struts2+hibernate+spring)环境
上文中我们介绍<工作笔记2.软件开发经常使用工具> 从今天開始本文将教大家怎样进行开发?本文以搭建SSH(struts2+hibernate+spring)框架为例,共分为3步: 1)3个 ...
- 移动商城第三篇【搭建Mybatis和Spring环境、编写Dao、Service在Core模块】
Mybatis和Spring环境搭建 由于我们的所编写的dao层.service代码可能前台和后台都需要用到的,因此我们把环境搭建在core模块中 逆向工程 首先,我们要做的就是品牌管理,我们首先来看 ...
- 【Spring环境搭建】在Myeclipse下搭建Spring环境-web开发
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" ...
随机推荐
- python3中的mysql数据库操作
软硬件环境 OS X EI Capitan Python 3.5.1 mysql 5.6 前言 在开发中经常涉及到数据库的使用,而python对于数据库也有多种解决方法.本文以python3中的mys ...
- css的样式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- UVA-568-数论
题意 输入一个n,求n!最后一个不是0的数 2x5肯定是等于10的,先把所有不是2和5的数乘起来,保留最后一位 计算过程中计算出2和5的个数 因为2*5=10,而且2的个数比5的个数多,所以最后只要把 ...
- wzben的QQ空间
实习之后没有动过博客了,后续慢慢补.
- Spring MVC 异常处理 - ResponseStatusExceptionResolver
作用在类和方法上面 更改返回的代码和错误消息 类上 通过throw new UserName***Exception()抛出 @ResponseStatus(value=HttpStatus.FORB ...
- ubuntu下安装jdk,tomcat,mysql,ftp,telnet,svn
需求分析:自己弄了个小网站,想放到云服务器上,同时把自己积累的代码也放上去,服务器上的文件可以简单的在windows上查看,也可以方便的通过windows连接linux服务器. 解决:运行网站要用到j ...
- zookeeper介绍以及安装配置
Zookeeper启动时默认将Zookeeper.out输出到当前目录,不友好.改变位置有两种方法: 1:在当前用户下~/.bash_profile或在/etc/profile,添加ZOO_LOG_D ...
- Vue.js路由详解
有时候,我们在用vue的时候会有这样的需求,比如一个管理系统,点了左边的菜单栏,右边跳转到一个新的页面中,而且刷新的时候还会停留在原来打开的页面. 又或者,一个页面中几个不同的画面来回点击切换,这两种 ...
- 必备 .NET - C# 脚本
作者:Mark Michaelis | 2016 年 1 月 Link: https://msdn.microsoft.com/zh-cn/magazine/mt614271.aspx 随着 Visu ...
- python中迭代问题
迭代list的时候不能修改这个list,否则,可能会出错. numbers=[1,0,3,5,0] numbers.sort() print(numbers) print('************* ...