• CentOS6


    第一次使用VmWare和CentOS6,中间遇到不少问题,记性不好,还是记下来留作以后查看,也方便遇到这些问题的朋友能做个参考:),我的操作系统是WIN7旗舰版,VMware版本是VMware-workstation-full-7.1.0,CentOS的版本是CentOS-6.0-i386,32位的(注意如果Windows本身是32位的,CentOS版本也应该选择32位的,否则会提示不支持,也可能装上也能用,但为了不引起不必要的麻烦,就装32位的了)

    一 先安装VMware。

    双击安装文件出现欢迎界面:

    然后点Next:

    image

    这里选择Typical,继续Next,接下来选择安装目的路径,直到完成即可,中间有一步要输入序列号,网上搜一个即可,比较简单,就不介绍了,安装后要重启电脑。

    二 VMware中安装CentOS

    重启后打开安装好的VMware,选择File-New-Virtual Machine,如图:

    image

    这里选择Custom,Next:

    image

    选择Workstation6.5-7.x, Next:

    image

    这里选择第三项,以后安装,方便进行配置。选择I will install the operating system later,Next:

    image

    这里选择Linux,Version里选择CentOS,因为是32位的,所以不要选择CentOS-64bit,next:

    image

    镜像文件存放路径的选择,这里输入虚拟机名称和安装路径,Next:

    image

    选择给虚拟机分配的cpu核的数量,如果为虚拟机选择的cpu数超过本机实际cpu数量,vmware会给出警告。Next:

    image

    虚拟内存分配,一般选默认的1024MB就行,Next:

    image

    这里是网络类型分配,网络类型分配分为三种,Bridge,NAT和Host-Only,大概区别是

    1 BRIDGE:相当于主机和虚拟机连接到同一个hub上,虚拟机要和主机配置到同一网段上

    2 NAT:使用vmnet8,主机开启必要的vmware服务,如vmvare dhcp,虚拟机设置成dhcp方式即可,当然也可以手工设置成vmnet1同一网段,比较麻烦

    3 HOST-ONLY:使用vmnet1,直接和主机互联,可以使用ifconfig查看配置情况

    这里选择NAT,Next:

    image

    选择io控制器类型,选择默认的即可,Next:

    image

    选择虚拟硬盘类型,这里选择创建一个,Next:

    image

    选择要创建的磁盘的类型,选择默认的即可,Next:

    image

    选择磁盘空间大小,默认即可

    image

    设置虚拟镜像文件名称,默认即可,Next:

    创建完成,确认虚拟机信息,点finish即可。

    接下来在VMware上刚才创建的虚拟机上,右键选择Settings

    image

    点击”CD/DVD(IDE)”,打开虚拟机光盘设置页面,点击”Use ISO image file”, 再点击”Browse”,选择待安装镜像ISO文件。

    然后点击”Power on this virtual machine“,启动虚拟机。

    image

    这里选择第二个,然后回车,开始安装

    image

    检查DISC的,选择SKIP就可以

    image

    选择安装语言,这里选简体中文

    image

    选择键盘,选择美国,Next

    image

    选择默认即可,下一步

    image

    这里是格式化刚才设定的虚拟磁盘,放心选择“重新初始化所有”即可,其他文件不会丢失

    image

    输入主机名,下一步:

    image

    选择时区,默认即可

    image

    输入密码,下一步:

    image

    然后出现

    image

    这里选择Minimal,选择现在自定义,添加一些必要的组件,注意如果选择以后自定义,虚拟机可能因为缺少组件上不了网,虽然后期可设置,但对于菜鸟来说,想配置好有点麻烦,因此这里选择自定义,添加一些必要的组件。

    image

    Perl是必选的,否则无法安装VMWare Tools,system managerment tools,network tools必选的,否则无法上网,其他的看着选吧。image

    官方下载地址:http://www.mybatis.org/

    IBatis.net作用是把数据库查询与对象的属性间建立映射关系。但它并不是一个实体关系映射工具,仅用于帮助程序人员建立实体和SQL语句或者存储过程间的映射。因此只能叫半自动OR/M工具。

    IBatis.net的配置:

    一、引用几个DLL,注意在数据层引用即可。

    image

    单独使用映射的情况下,只需要引用IBatisNet.DataMapper.dll就可以了

    其中IBatisNet.Common.dll和Castle.DynamicProxy.dll是必须的

    COMMON是我自己的,不用管它

    IBatisNet.DataAccess.dll是可选的,如果使用Data Access组件,则还需要添加对IBatisNet.DataAccess.dll的引用。

    二、完成对组件的添加后,还需要添加三个XML文档

    1 providers.config ----DataMapper根据这个确定是什么类型数据库(放在数据层)

    2 SqlMap.xml  ----数据映射文档,里面包含了SQL语句(放在数据层)

    3 SqlMap.config ----DataMapper的配置文档,它详细描述了工程中SqlMap.XML和providers.config文档的位置,以及其他配置项(必须放在Web跟目录下)。

    先看SqlMap.config

    <?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="true"/>//如果是true,那么写数据查询时,查询语句的名称前要添加它的完整命名空间
        <setting cacheModelsEnabled="true"/>//全局化配置DataMapper客户能否启用cache,默认是true
      </settings>  
      <providers embedded="DAL.providers.config, DAL"/>    //指定providers.config的位置

    <database>
        <provider name="sqlServer2.0"/>   //如果使用默认的数据提供者,这句可以不要,如果系统中使用多个数据库,需要配置provider的内容
        <dataSource name="ConnStr" connectionString="Data Source=.;Database=Test;User ID=sa;Password=123456;Connection Lifetime=3;Min Pool Size=1;Max Pool Size=50;MultipleActiveResultSets=true;"/>    //数据库链接字符串,
    </database>    

    <sqlMaps>
            <sqlMap embedded="DAL.Maps.UserInfo.xml, DAL"/>    //程序的数据映射文件的位置,如果有多个XML,就写多行,如果比较多,也可以当一个单独的XML中去写,比如<sqlMap resource=”Maps/All.XML”/>,然后在ALL.xml再添加数据映射文件,这样就实现了加载一组数据映射文件
        
    </sqlMaps>    
    </sqlMapConfig>

    具体文档配置可在附件的DEMO中下载查看。

    三、创建SqlMapper实例,这个是单例模式,文件名SqlMapper.CS,放在数据层中。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using IBatisNet.Common.Utilities;
    using IBatisNet.DataMapper;
    using IBatisNet.DataMapper.Configuration;
    using IBatisNet.DataMapper.SessionStore;
    namespace DAL
    {
        public class SqlMapper
        {
            private static volatile ISqlMapper _mapper = null;

            protected static void Configure(object obj)
            {
                _mapper = null;
            }

            protected static void InitMapper()
            {
                ConfigureHandler handler = new ConfigureHandler(Configure);
                DomSqlMapBuilder builder = new DomSqlMapBuilder();
                _mapper = builder.ConfigureAndWatch("SqlMap.config", handler);
                _mapper.SessionStore = new HybridWebThreadSessionStore(_mapper.Id);
            }

            public static ISqlMapper Instance()
            {
                if (_mapper == null)
                {
                    lock (typeof(SqlMapper))
                    {
                        if (_mapper == null// double-check
                        {
                            InitMapper();
                        }
                    }
                }
                return _mapper;
            }

            public static ISqlMapper Get()
            {
                return Instance();
            }
        }
    }

    外界调用方法:

    IList list = SqlMapper.Instance().QueryForObject<list>("UserInfo.GetCount", param);

    因为是单例的,第一次调用时,DomSqlMapBuilder对象会通过查询SqlMap.config来创建一个sqlMapper实例,以后调用就直接从缓存读取了。

    DomSqlMapBuilder.ConfigureAndWatch()方法负责监视配置文件的更新情况,如果配置或者映射文件有更新,SqlMapper对象会重新载入并不重启系统

    整个配置已经结束,具体可参考DEMO:DEMO下载

  • 相关阅读:
    Mac sublime text3 安装插件
    趣题记录
    Shadow DOM及自定义标签
    JavaScript 对象部署 Iterator 接口
    JavaScript实现循环链表
    使用JavaScript实现单向链表
    nodejs深入浅出读书笔记(三)
    nodejs深入浅出读书笔记(一)
    nodejs深入浅出读书笔记(二)
    为什么要了解Event loop?(二)
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2378746.html
Copyright © 2020-2023  润新知