Terry.Li-彬

          虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks

          package com.epeer.dao;

          public interface UserDao {
              
          public void insertUserIp(String startip, String endip);
          }




          package com.epeer.dao;
          import java.text.MessageFormat;
          import org.springframework.jdbc.core.support.JdbcDaoSupport;

          public class UserDaoImpl extends JdbcDaoSupport implements UserDao {

              
          private static final String INSERT = "insert into ipsegment(is_id, endip, startip) values(ipsegment_seq.nextval,''{0}'',''{1}'')";
              
          public void insertUserIp(String startip, String endip) {
                  getJdbcTemplate().execute(MessageFormat.format(INSERT, 
          new Object[]{startip, endip}));
              }

          }



          package com.epeer.service;

          public interface UserService {
              
          public void insertUserIp(String startip, String endip);
          }



          package com.epeer.service;

          import org.springframework.transaction.annotation.Transactional;
          import com.epeer.dao.UserDao;

          public class UserServiceImpl implements UserService {

              
          private UserDao userDao;

              
          public UserDao getUserDao() {
                  
          return userDao;
              }


              
          public void setUserDao(UserDao userDao) {
                  
          this.userDao = userDao;
              }


              
          public void insertUserIp(String startip, String endip) {
                  userDao.insertUserIp(
          "192.168.0.3""0.0.0.0");
              }

          }

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

              default-autowire
          ="byName">
              
          <!-- =========================================================================================== -->
              
          <!--                                       加載屬性文件                                          -->    
              
          <!-- =========================================================================================== -->
              
          <bean id="jdbcConfiguration"
                  class
          ="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
                  
          <property name="locations">
                      
          <list>
                          
          <value>classpath:jdbc-config.properties</value>
                      
          </list>
                  
          </property>
              
          </bean>
              
          <!-- =========================================================================================== -->
              
          <!--                                       配置數據源                                            -->
              
          <!-- =========================================================================================== -->
              
          <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
                  destroy-method
          ="close" p:driverClassName="${jdbc_driver}"
                  p:url
          ="${jdbc_url}" p:username="${username}" p:password="${password}"/>
              
          <!-- =========================================================================================== -->
              
          <!--                                       事務配置                                              -->
              
          <!-- =========================================================================================== -->
              
          <!-- Transaction manager for a single JDBC DataSource -->
              
              
          <bean id="transactionManager"
                  class
          ="org.springframework.jdbc.datasource.DataSourceTransactionManager"/>
              
          <!--                  如果采用XML配置則用下面的配置                                              -->
              
          <aop:config proxy-target-class="true">
                  
          <aop:advisor pointcut="execution(* com.epeer.service.*Impl.*(..))"
                      advice-ref
          ="txAdvice"/>
              
          </aop:config>
              
          <tx:advice id="txAdvice" transaction-manager="transactionManager">
                  
          <tx:attributes>
                      
          <tx:method name="insert*" no-rollback-for="java.lang.Throwable"/>
                      
          <tx:method name="remove*"/>
                      
          <tx:method name="add*" no-rollback-for="java.lang.Throwable"/>
                      
          <tx:method name="*" read-only="true"/>
                  
          </tx:attributes>
              
          </tx:advice>
              
          <!--                  如果采用XML配置則用上面的配置                                              -->
              
          <!--                  如果采用標注則去掉上面的配置,同時加入下面一行                             -->
              
          <!--
              <tx:annotation-driven transaction-manager="transactionManager"/>

              <!-- =========================================================================================== 
          -->
              
          <!--                                       事務配置                                              -->
              
          <!-- =========================================================================================== -->
              
          <!-- Transaction manager for a single JDBC DataSource -->
              
          <bean id="transactionManager"
                  class
          ="org.springframework.jdbc.datasource.DataSourceTransactionManager"/>
              
          <tx:annotation-driven transaction-manager="transactionManager"/>
              
          <!-- =========================================================================================== -->
              
          <!--                                       DAO配置                                               -->
              
          <!-- =========================================================================================== -->
              
          <bean id="userDao" class="com.epeer.dao.UserDaoImpl"/>
              
          <!-- =========================================================================================== -->
              
          <!--                                       Service配置                                           -->
              
          <!-- =========================================================================================== -->
              
          <bean id="userService" class="com.epeer.service.UserServiceImpl"/>

           采用標注的話UserServiceImpl如下

          package com.epeer.service;

          import org.springframework.transaction.annotation.Transactional;

          import com.epeer.dao.UserDao;

          @Transactional
          public class UserServiceImpl implements UserService {

              
          private UserDao userDao;

              
          public UserDao getUserDao() {
                  
          return userDao;
              }


              
          public void setUserDao(UserDao userDao) {
                  
          this.userDao = userDao;
              }


              @Transactional(noRollbackForClassName 
          = "java.lang.Throwable")
              
          public void insertUserIp(String startip, String endip) {
                  userDao.insertUserIp(
          "192.168.0.3""0.0.0.0");
              }

          }
          posted on 2008-10-16 20:04 禮物 閱讀(1638) 評論(0)  編輯  收藏 所屬分類: spring
          主站蜘蛛池模板: 娱乐| 桂平市| 佛冈县| 沁源县| 连江县| 许昌县| 河间市| 湖南省| 曲松县| 庄河市| 张家口市| 潮州市| 东丽区| 泗水县| 贵德县| 玉环县| 成武县| 安义县| 依兰县| 咸宁市| 荔浦县| 镇平县| 揭阳市| 都江堰市| 南安市| 克山县| 屯留县| 江川县| 陇川县| 永春县| 丰台区| 乐业县| 高密市| 灵武市| 清远市| 景泰县| 闽侯县| 仲巴县| 泊头市| 五河县| 绥阳县|