struts2+spring+ibatis

4 篇文章 0 订阅
2 篇文章 0 订阅

文件结构

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="
http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

     
                <!-- 指定Spring配置文件 -->
                   <context-param>
                          <param-name>contextConfigLocation</param-name>
                          <param-value>
                                 classpath*:spring/applicationContext*.xml<!--spring配置文件位置-->
                          </param-value>
                    </context-param>
                   <!-- 启动Web容器时,自动装配ApplicationContext的配置信息,实例化ApplicationContext-->
                   <listener>
                         <listener-class>
                                 org.springframework.web.context.ContextLoaderListener
                         </listener-class>
                   </listener>
                   <!--配置struts-->
                  <filter>
                             <filter-name>struts-cleanup</filter-name>
                             <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
                 </filter>

                 <filter-mapping>
                            <filter-name>struts-cleanup</filter-name>
                            <url-pattern>/*</url-pattern>
                  </filter-mapping>
 
                   <filter>
                             <filter-name>struts2</filter-name>
                             <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
                  </filter>

                 <filter-mapping>
                              <filter-name>struts2</filter-name>
                              <url-pattern>/*</url-pattern>
                 </filter-mapping>
 
</web-app>

struts.xml

<struts>

      <package name="login" namespace="/login" extends="struts-default"> 
            <action>
                   <result></result>
             </action>
      </package>
</struts>

jdbc.properties

database.driver=oracle.jdbc.driver.OracleDriver

database.url=jdbc:oracle:thin:@ip:1521:orcl

database.username=scott

database.password=user

applicationContext-web.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
        "
http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
      <bean id="LoginAction" class="com.zzl.shebao.action.LoginAction">
             <property name="loginService">
                      <ref bean="loginService" />
             </property>
      </bean>
</beans>

applicationContext-service.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
        "
http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
       <bean id="loginService" class="com.zzl.shebao.service.impl.LoginServiceImpl">
              <property name="loginDao">
                      <ref bean="loginDao" />
              </property>
       </bean>

</beans>

applicationContext-dao.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
        "
http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
        <bean id="loginDao" class="com.zzl.shebao.dao.LoginDao" scope="prototype">
                   <property name="sqlMapClient">
                            <ref bean="sqlMapClient" />
                  </property>
        </bean>
 
</beans>

applicationContext-datasource

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "
http://www.springframework.org/dtd/spring-beans-2.0.dtd">

<beans>

             <bean id="propertyConfigurer"
                                    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
                        <property name="locations">
                                   <list>
                                           <value>classpath*:jdbc.properties</value>
                                    </list>
                         </property>
              </bean>

 
              <bean id="dataSource"
                         class="org.apache.commons.dbcp.BasicDataSource"
                                                                                             destroy-method="close">
                             <property name="driverClassName" value="${database.driver}" />
                             <property name="url" value="${database.url}" />
                              <property name="username" value="${database.username}" />
                              <property name="password" value="${database.password}" />
                               <property name="testOnBorrow">
                                        <value>true</value>
                               </property>
                                <property name="testWhileIdle">
                                          <value>true</value>
                                </property>
                                <property name="validationQuery">
                                             <value>SELECT 1 from dual</value>
                                  </property>
                  </bean>

                  <bean id="sqlMapClient"
                                      class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
                             <property name="configLocation">
                                              <value>classpath:ibatis/sql-map-config.xml</value>
                              </property>
                              <property name="dataSource" ref="dataSource" />
                    </bean>
</beans>

sql-map-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
    "
http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

<sqlMapConfig>
         <sqlMap resource="ibatis/user.xml" />
 </sqlMapConfig>

user.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
    "
http://ibatis.apache.org/dtd/sql-map-2.dtd">

<sqlMap namespace="User">
         <typeAlias alias="String" type="java.lang.String" />
          <typeAlias alias="user" type="com.zzl.shebao.entity.User" />

          <resultMap id="user-result" class="user">
                    <result property="id" column="ID" />
                    <result property="username" column="USERNAME" />
                    <result property="password" column="PASSWORD" />
                   <result property="permission" column="PERMISSION" />
            </resultMap>
           <select id="getUser" resultMap="user-result" parameterClass="user">
                         select id, username, password, permission from zzl_user where  username=#username#  and  
password=#password#
            </select>
            <insert id="adduser" parameterClass="user">
                       <selectKey resultClass="int" keyProperty="id">
                                select ZZL_USER_ID_SEQUENCE.nextval as id from dual
                       </selectKey>
                        insert into zzl_user(id,username,password,permission)
                                values (#id#,#username#,#password#,#permission#)
           </insert>
          <select id="check" resultMap="user-result" parameterClass="user">
                          select id, username, password, permission from zzl_user where username=#username#
          </select>

</sqlMap>

 

LoginDao.java

package com.zzl.shebao.dao;


import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

import com.zzl.shebao.entity.User;

 

public class LoginDao extends SqlMapClientDaoSupport
{

    public User getUser(User user)
    {
        return (User) this.getSqlMapClientTemplate().queryForObject("User.getUser", user);
    }
   
   
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值