ibatis+spring+struts spring 外部注入 SqlMapClientTemplate

applicationContext.xml配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

// 数据库的配置信息

   <bean id="dataSource"
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost:3306/testdata?useUnicode=true&amp;charactorEncodering=UTF-8"/>
        <property name="username" value="root"></property>
        <property name="password" value="123"></property>
    </bean>
    <!--
    <bean id="loginService" class="com.lxitedu.bullet.service.impl.LoginServiceImpl">
        <constructor-arg index="0" type="com.lxitedu.bullet.model.LoginDAO" ref="loginDAO"/>
    </bean>
    -->

// loginService  set 注入 loginDAO
    <bean id="loginService" class="com.lxitedu.bullet.service.impl.LoginServiceImpl">
        <property name="loginDAO" ref="loginDAOA"/>
    </bean>

// loginDAOImpl set 注入 sqlMapClientTemplate
    <bean id="loginDAOA" class="com.lxitedu.bullet.model.impl.LoginDAOImpl">
        <property name="sqlMapClientTemplate" ref="sqlMapClientTemplate"/>
    </bean>

//sqlMapClientTemplate  set 注入 sqlMapClient
    <bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
       <property name="sqlMapClient">
           <ref bean="sqlMapClient"/>
       </property>
 </bean>

// sqlMapClient 初始化 sql-map-config.xml文件
    <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
        <property name="configLocation" value="WEB-INF/sql-map-config.xml" />
        <property name="dataSource" ref="dataSource" />
    </bean>
</beans>

sql-map-config.xml配置文件:

<sqlMapConfig>
    <sqlMap resource="com/lxitedu/bullet/model/impl/ibatis/Login.xml"/>
</sqlMapConfig>


Login.xml:文件:

// 主要就是一些sql 语句

<sqlMap namespace="Account">
    <resultMap class="com.lxitedu.bullet.model.bean.User" id="result">
        <result property="userID" column="userID" columnIndex="1" />
        <result property="userName" column="userName" columnIndex="2" />
        <result property="userPassword" column="userPassword"
            columnIndex="3" />
        <result property="userSex" column="userSex" columnIndex="4" />
        <result property="userAge" column="userAge" columnIndex="5" />
        <result property="userEmail" column="userEmail" columnIndex="6" />
        <result property="userPhone" column="userPhone" columnIndex="7" />
        <result property="userCreateTime" column="userCreateTime"
            columnIndex="8" />
        <result property="userStatus" column="userStatus" columnIndex="9" />
        <result property="userLoginTime" column="userLoginTime"
            columnIndex="10" />
        <result property="team" column="userTeam" columnIndex="11" />
    </resultMap>

    <select id="getLoginInfo" resultMap="result">
        SELECT
        userID,userName,userPassword,userSex,userAge,userEmail,userPhone,userCreateTime,userStatus,userLoginTime,userTeam
        FROM user WHERE userName = #userName# AND userPassword =
        #userPassword#
    </select>
</sqlMap>

/*-------------------------------------java 代码--------------------------------------*/

// ioc 中拿 实例  然后掉service 层

public void setServlet(ActionServlet actionServlet){
        super.setServlet(actionServlet);
        if(actionServlet != null){
            ServletContext servletContext = actionServlet.getServletContext();
            WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);
            object = wac.getBean(className);
        }
}

// model 层 (持久层) 拿值

public  SqlMapClientTemplate sqlMapClientTemplate;
    public SqlMapClientTemplate getSqlMapClientTemplate() {
        return sqlMapClientTemplate;
    }

    public void setSqlMapClientTemplate(SqlMapClientTemplate sqlMapClientTemplate) {
        this.sqlMapClientTemplate = sqlMapClientTemplate;
    }

    public User getValue(User user) {
        List<User> userList = getSqlMapClientTemplate().queryForList("getLoginInfo", user);





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值