[ 登录 ][ 注册 ] 天极传媒: 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
您现在的位置: IT专家网 > 安全子站 > 安全技巧

基于Spring+Ibatis的安全线程实现

作者: 佚名,  出处:CSDN, 责任编辑: 张帅, 
2008-07-04 13:22
  过去做过一些基于spring、hibernate整合应用的实例,本人感觉spring与hibernate最好的结合就是泛型Dao的实现,代码量节省了一半,而且业务逻辑一目了然。

  过去做过一些基于spring、hibernate整合应用的实例,本人感觉spring与hibernate最好的结合就是泛型Dao的实现,代码量节省了一半,而且业务逻辑一目了然。

  后来做别的系统时候考虑过这样的框架,但是数据库结构如果不固定,动态生成的东西比较多这个时候只好放弃了hibernate而选择了同样具有orm性能的ibatis,下面就spring与ibatis的结合相关配置做下说明(如有不同意见,希望交流)

  首先spring和ibatis具体下载和安装就不多说了。直接切入正题

  Spring框架下的ibatis应用,特别是在容器事务管理模式下的ibatis应用开发

  部署如下:

  首先spring配置文件:

    Spring_base.xml 
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
    <beans default-lazy-init="true">
           <!-- 配置数据源 -->
           <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
                  <property name="driverClassName">
                         <value>net.sourceforge.jtds.jdbc.Driver</value>
                  </property>
                  <property name="url">
                         <value>jdbc:jtds:sqlserver://localhost:1433/test</value>
                  </property>
                  <property name="username">
                         <value>sa</value>
                  </property>
                  <property name="password">
                         <value>sa</value>
                  </property>
                  <property name="maxActive">
                         <value>10</value>
                  </property>
                  <property name="maxIdle">
                         <value>2</value>
                  </property>
                  <property name="maxWait">
                         <value>300</value>
                  </property>
           </bean>
    /////////////////// dataSource:配置你的数据源连接
           <bean id="sqlMapClient"
                  class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
                  <property name="configLocation">
                         <value>SqlMap_config.xml</value>
                  </property>
                  <property name="dataSource"><!-- 从指定dataSource中获取数据源 亦可把该定义放到每个自定义Dao中-->
                         <ref bean="dataSource" />
                  </property>
           </bean>
    //////////////////// sqlMapClient:集成ibatis配置文件和把数据源与ibatis相关联
           <!-- 配置事务管理 -->
           <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
                  <property name="dataSource">
                         <ref local="dataSource" />
                  </property>
           </bean>
    ///////////////// transactionManager:配置事务管理
           <!--公共组件-->
           <import resource="spring_other.xml" />
    ////////////把用户自定义Bean与基本bean分开,集成进去spring_other.xml文件
    </beans>

  以上是spring 把一些ibatis相关配置集成到自己的配置文件里面

    Spring_other.xml 
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
    <beans>
        <bean id="userService" class="com.user.UserServiceImpl">
           <property name="transactionManager">
               <ref bean="transactionManager" />
           </property>
           <property name="userDao">
               <ref local="userDao" />
           </property>
        </bean>
    ////////////////////////使用service管理所有用户自定义bean和Dao操作,用来设置事务回滚,线程安全等。
        <bean id="userDao" class="com.user.dao.UserDaoImpl">
            <property name="sqlMapClient" ref="sqlMapClient"/>
        </bean>
    ///////////////用户自定义Dao操作,因spring_base.xml中sqlMapClient已经把dataSource包含,故dataSource不再声明,如果该操作需要别的数据连接,可加入例如:
    ////////<property name=”dataSource1” ref=”dataSource1”/>//////////
    </beans>
共3页。 1 2 3 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。

邮件订阅


    • 解析Windows密码安全问题(第三部分)评论
      在前两部分文章中,我们讨论了Windows密码政策的问题以及它是如何在Active Directory环境被控制等问题,大家应该还记得在默认情况下密码政策和相关的设置位于默认域策略中(Default Domain Policy)。另外同样探讨了可以使用哪些技术破获windows密码,以及每种攻击方式的限制问题。那么,在本文中,我们将讨论如何让windows密码变得更加安全,以及如何能够解决在前两部分文章中出现的所有问题。本文将涉及Windows2002/2003/2008Active Directory默认安装带来的可能性以及其他能够整体提高密码安全的技术。
    • IDC创新和安全白皮书:合作或竞争评论
      业务创新是业务发展战略非常重要的一部分,并而日益成为公司保持竞争优势的决定性因素。由于创新的战略重要性,导致了我们越来越关注信息安全机制在抑制甚至扼杀业务创新方面起到的作用。IDC认为公司不仅是需要找到业务创新和有可能扼杀这种创新的信息安全机制,而且需要在这两者之间找到一个简洁的平衡来满足自己的业务需求。成功的企业能够在商业竞争中占有优势,是因为他们懂得去合理的利用两者使之成为一种具有杠杆作用的机制,而其它的企业只是单单强调其中的一个。
    • 预防企业数据丢失的6种最佳实践评论
      根据“私有权清算中心”(一家非赢利性消费者信息和倡导组织)的统计,自2005年1月以来,有将近2200万条记录遭到破坏。数据失窃和丢失案件数量惊人,这不仅是因为安全入侵事件正在以惊人的速度持续增长,数据丢失引发的财产损失事件也同样在飞速增加。根据美国政府的估计,所谓的“企业数据丢失”在去年使商业界损失了近1050亿美元。根据波尼蒙研究所(Ponemon Institute)的统计,仅仅内部人士导致的数据受损一项,每年给商业界造成的损失为平均每家公司3-4百万美元。产业分析公司Gartner集团估计,恢复数据的开销可以达到每条破坏记录150美元之高——这一数字还没有包括重拾客户信任和重建品牌价值、可能的罚款以及法律诉讼代理费的资金投入。在企业数据丢失案件有增无减的同时,公司也正在不断搜集更多数据,以求优化商业流程,改善客户服务,以及提升与合作伙伴的关系。更多的数据转化为相关数据在整个企业中数量不断增多的信息系统之间更广泛的传播。其结果就是——随着公司内外越来越多的用户获得接入系统的权限,敏感数据遭到破坏的风险也在不断增大。
    • RSA白皮书:管理银行的信息风险评论
      信息是银行的基础,但直到现在,金融机构还往往满足于以业务封闭式的方式管理风险。然而,行业的压力促使银行开始对这种战略展开思考。