我是靠谱客的博主 落后香氛,最近开发中收集的这篇文章主要介绍学习MyBatis.Net 之路(一),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

MyBatis.NET的前身为IBatis,是JAVA版MyBatis在.NET平台上的翻版,相对NHibernate、EntityFramework等重量级ORM框架而言,MyBatis.NET必须由开发人员手动写SQL,相对灵活性更大,更容易保证DB访问的性能,适用开发团队里有SQL熟手的场景。

下面是使用步骤:
1.到官网http://code.google.com/p/mybatisnet/ 下载相关dll和文档
这里写图片描述

2.创建一个Web程序
创建一个MVC4的Web应用程序,并引用我们下载的IBatisNet程序包中的IBatisNet.DataMapper.dllIBatisNet.Common.dll,这里我只引用了这两个,log4net我没有引用也没有配置使用,全部程序结构如下
这里写图片描述

3.添加Providers.config,并复制到项目根目录下
把下载的IBatisNet程序包打开,就能找到providers.config文件,里面定义了MyBatis.Net支持的各种数据库驱动,这里我以sqlServer为例,把其他不用的全部删除,只留下sqlServer的并且把版本号全部改为4.0,同时把enabled属性设置成true,如下:

<?xml version="1.0" encoding="utf-8"?>
<providers
xmlns="http://ibatis.apache.org/providers"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<clear/>
<!--设置enabled=true-->
<provider

name="sqlServer4.0"
enabled="true"
description="Microsoft SQL Server, provider V4.0.0.0 in framework .NET V4.0"
assemblyName="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
connectionClass="System.Data.SqlClient.SqlConnection"
commandClass="System.Data.SqlClient.SqlCommand"
parameterClass="System.Data.SqlClient.SqlParameter"
parameterDbTypeClass="System.Data.SqlDbType"
parameterDbTypeProperty="SqlDbType"
dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
commandBuilderClass=" System.Data.SqlClient.SqlCommandBuilder"
usePositionalParameters = "false"
useParameterPrefixInSql = "true"
useParameterPrefixInParameter = "true"
parameterPrefix="@"
allowMARS="false"
/>
</providers>

把这个文件复制到Web项目根目录下

4.在项目目录下添加SqlMap.config,它的作用主要是指定db连接串,告诉系统providers.config在哪? 以及db与entity的映射文件在哪?如下:

<?xml version="1.0" encoding="utf-8"?>
<sqlMapConfig

xmlns="http://ibatis.apache.org/dataMapper"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<settings>
<setting useStatementNamespaces="false"/>
<!--true表示statementName要使用Namespace-->
<setting cacheModelsEnabled="true"/>
</settings>
<providers resource="providers.config"/>
<!--指定providers.config文件的路径-->
<!-- Database connection information -->
<database>
<provider name="sqlServer4.0"/>
<!--设置数据库连接字符串-->
<dataSource name="DB" connectionString="Data Source=.;Initial Catalog=School;uid=sa;pwd=123456"/>
</database>
<!--db与Entity的映射文件-->
<sqlMaps>
<sqlMap resource="Maps/PersonAndCourse.xml"/>
<sqlMap resource="Maps/PersonMap.xml"/>
</sqlMaps>
</sqlMapConfig>

5.这里在数据库建两张表一个是个人信息还有一个是课程表,如下:
这里写图片描述
第一张表是Person表,第二张表为Cour课程表,课程表名字是错的只敲一半,大家略过,第一张表的ID和第二张表的PerID关联,建两张表是为了后面的联合查询,这里先不多说

下面为创建表的SQL语句


create database School
go
use School
go
create table Person
(
ID int not null primary key Identity(1,1),
Name nvarchar(50),
Age int ,
Sex nvarchar(50)
)
go
create table Course
(
ID int not null primary key Identity(1,1),
PerID int not null ,
CourseName nvarchar(50)
)
go
insert into Person values
('sasa',15,'女'),
('ff',20,'男')
go
insert into Course values
(1,'计算机'),
(1,'标准'),
(1,'物理')
go
--给两个表添加主外键关系
alter table Course add
Constraint FK_Curse_Per foreign key (PerId) references Person(ID)
go
select * from Person
select * from Course

6.接下来在Models文件夹里建两个实体类。一个为Person类,另一个为PersonAndCourse类. 后者只比前者多了一个课程名称的字段.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace PratiseMyBatis.Models
{
public class Person
{
public int ID { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public string Sex { get; set; }
}
public class PersonAndCourse
{
public int ID { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public string Sex { get; set; }
public string CourseName { get; set; }
}
}

博主也是才开始学这个东东的,如果大家有疑问的地方欢迎来交流。这个Demo里没有用到log4net日志。 所以我也没配置。主要讲的是MyBatis的功能。 如果大家希望学log4net配置这方面,我后面会讲到的.
好了,今天先到此为止了。 接下来看第二章

最后

以上就是落后香氛为你收集整理的学习MyBatis.Net 之路(一)的全部内容,希望文章能够帮你解决学习MyBatis.Net 之路(一)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部