IBatisNet -- 保护你的配置文件及映射文件信息

转载 2007年09月26日 17:33:00
 通常情况下我们在使用IBatisNet的时候,配置文件和映射文件都是暴露在外的,如果能进入到服务器,那么你的程序的操作数据库的SQL语句,数据库连接字符串等信息都将很轻松的被看到,这样是很危险的。然而IBatisnet自身也没有提供配置文件直接加密的方法,但我们可以用变通的方式来尽可能的保护这些文件中的信息。IBatisnet的映射文件等可以指定为内嵌的资源,利用这个我们可以把一些敏感信息写到另外一个配置文件中,并设置这个配置文件的Build Action为embedded Resource。具体操作如下:

一、假设我们映射文件的路径为 ~@Maps/,我们将所有的映射文件都设置为“内嵌的资源”,SqlMap.config文件直接在根目录下。

二、建立一个properties.config文件,添加一些敏感信息(即不能直接让别人看到的信息)。如下:
<?xml version="1.0" encoding="utf-8" ?>
<settings>
  
<!--   User application and configured property settings go here.-->
  
<!--   Example: <add key="settingName" value="settingValue"/> -->
  
<add key="provider" value="sqlServer1.1" />
  
<add 
        
key="connectionString" 
        value
="server=.;database=DocumentSystem;uid=sa;pwd=" />
  
<add key="root" value="TVSystem.Web._Maps." />
  
<add key="assembly" value="TVSystem.Web" />
</settings>

三、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">

  
<properties embedded="TVSystem.Web.properties.config" />
  
<settings>
        
<setting useStatementNamespaces="false"/>
    
</settings>

  
<providers resource="providers.config"/>

  
<!-- Database connection information -->
  
<database>
    
<provider name="${provider}"/>
    
<dataSource name="DocumentSystem" connectionString="${connectionString}"/>
  
</database>

    
<sqlMaps>
    
<sqlMap embedded="${root}Department.xml,${assembly}" />
    
<sqlMap embedded="${root}Stream.xml,${assembly}" />
    
<sqlMap embedded="${root}Employees.xml,${assembly}" />
    
<sqlMap embedded="${root}Relations.xml,${assembly}" />
  
</sqlMaps>
    
</sqlMapConfig>


这样发布后的代码中,只能看到SqlMap.config中的内容,映射文件和数据库连接字符串等信息就被编译到DLL中去了。  

关于hibernate5的映射文件和配置文件改变

配置文件: 改成 映射文件
  • m0_37840000
  • m0_37840000
  • 2017年12月17日 10:21
  • 101

Hibernate配置文件与映射文件详解

Hibernate是一个彻底的ORM(Object Relational Mapping,对象关系映射)开源框架。 我们先看一下官方文档所给出的,Hibernate 体系结构的高层视图: 其中PO=...
  • wangchuanqi1234
  • wangchuanqi1234
  • 2016年04月12日 10:51
  • 13735

POJO类以及映射配置文件

对持久化对象的要求 1、 提供一个无参构造器,使Hibernate可以使用Constructor.newInstace()来实例化持久化对象 2、提供一个标识属性(identifier prope...
  • u011740475
  • u011740475
  • 2014年09月22日 16:40
  • 684

Hibernate(二)

Hibernate的核心组件 在基于MVC设计模式的JAVA WEB应用中,Hibernate可以作为模型层/数据访问层。它通过配置文件(hibernate.properties或hibernate...
  • u014352356
  • u014352356
  • 2014年04月30日 14:52
  • 179

Mybatis的配置文件和映射文件详解

一、Mybatis的全局配置文件 1、SqlMapConfig.xml是mybatis的全局配置文件,配置内容如下: properties(属性) settings(全局配置参数) typeAlias...
  • xiaokang123456kao
  • xiaokang123456kao
  • 2017年03月27日 10:44
  • 7060

hibernate配置文件和映射文件

hibernate配置文件 hibernate.cfg.xml
  • zhang854429783
  • zhang854429783
  • 2011年09月25日 20:57
  • 7009

IBatisNet/IBatis动态条件查询XMl映射配置终极解决方案实例

xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">     ...
  • zfrong
  • zfrong
  • 2009年02月12日 15:50
  • 5906

Mybatis学习笔记(二)-Mybatis配置文件与映射文件详解

mybatis配置文件详解,mybatis映射 文件详解,mapper,configuration,environment
  • madman0621
  • madman0621
  • 2017年07月16日 23:24
  • 534

【Hibernate框架学习】:Hibernate进阶之详解Hibernate配置文件和对象关系映射配置文件

Hibernate核心配置文件               我们先来看一个比较常见的hibernate.cfg.xml配置文件: ...
  • erlian1992
  • erlian1992
  • 2016年12月06日 19:16
  • 1158

Spring集成Mybatis配置映射文件方法详解

Spring ORM模块集成Mybatis使用到了mybatis-spring,在配置mybatis映射文件的时候,一般不直接在Mybatis的配置文件里进行配置,而会在Spring的配置文件里使用M...
  • guoweimelon
  • guoweimelon
  • 2016年03月05日 20:35
  • 2148
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IBatisNet -- 保护你的配置文件及映射文件信息
举报原因:
原因补充:

(最多只允许输入30个字)