.Net实现Java SSH的架构方式

本文探讨了如何在.Net框架中采用类似Java SSH(Struts + Spring + Hibernate)的架构方式。虽然.Net没有直接对应的Spring框架,但可以通过其他技术如Linq to SQL, Entity Framework和Asp.net MVC来实现。作者指出,尽管Java的SSH架构中大量使用XML配置,.Net则主要使用config文件,但仍然可以实现类似的控制反转和依赖注入。下篇博客将详细介绍.Net中实现这些技术的方法。" 123945066,10309960,Java实现:判断两个数组元素是否相同,"['Java', '数组操作']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java的SSH已经众人皆知了,不需要多作解释。在.net里面目前也有一些SSH式的架构,今天我尝试讲解一下在.net下面如何用Java的开发方式架构系统,当然需要用到不同的框架,有些可以自己开发。


Java SSH = Struts + Spring + Hibernate (Mybatis...及其它):

Struts控制视图层,也就是控制页面层和业务逻辑层的关联,有struts 1.x 和2.x,目前基本用2.x。

Spring俗称控制反转,或依赖注入,对对象进行托管。

Hibernate控制持久层,也就是数据库层面的数据交互问题,是ORM的一种。一般实现方式有:code first,也就是先有实体对象,然后根据实体对象生成相应的数据库和数据库表,以及表和表之间的依赖关系;还有就是一个相反的过程:先根据业务需求创建数据库,再根据数据库生成实体对象。两种方式根据需求而定,如果数据库相对非常复杂,那就比较适合后一种,因为需要专业的数据库架构才能满足要求。


以上就当科普知识,因为具体操作会涉及到非常多的配置文件来实现这种架构。


那么来对比一下.net里面有什么?

Java SE.Net Framework
web服务器:Tomcat, Jetty等IIS不同版本:express, 6.0,7.0,8.0等
Struts 1.x, 2.xasp.net mvc 1~5
Spring有一个三方的Spring.net,或自己实现
Hibernate, Mybatis, iBatis等Linq to SQL, Entity Framework,三方的Nhibernate等
Market, MavenNuGet, Packages.config







开发方式的区别:

Java各种不同框架都以XML格式文件来进行配置,SQL语句可以写在Dao对应的xml配置文件里面,或者使用HQL来进行查询,或者是JDBC。

.Net配置文件后缀为config的配置文件,xml格式,在asp.net mvc里面有不同的配置文件放在app_start文件夹里面,是cs或vb文件,其实是一个类文件,包管理的配置为packages.config。Asp.net的配置文件为web.config。Config文件可以分布在系统不同目录下面,每个配置节有不同含义,配置节点可以自己定义或扩充,还有系统级的配置文件放在.net framework安装目录下面,控制运行在机器上的所有.net系统,也称全局配置。 桌面系统为app.config。.net数据库访问是ado.net,或者linq。或者ORM技术。


对比发现其实.net framework里面没有现成的spring框架,需要自己实现,或者三方。就目前.net开发方式而言有web form和mvc两种官方解决方案,web form一直以易学易用而自豪,但也不具备mvc的优点,mvc效率高、架构清晰、耦合度低、开发起来其实更为简便。


所以就.net而言实现SSH架构不是难事儿,而且asp.net mvc4基本就能实现,目前asp.net mvc已经开源,所以可以根据需求自己扩充。下一篇博客我会逐一介绍.net现有的可以用于架构SSH架构的技术:

1. Linq to SQL

2. Entity Framework

3. Asp.net MVC 4

4. Spring在.net里面的实现思路,以及如何实现类似Java一样的xml配置文件。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值