Terry.Li-彬

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            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>
              
          <!-- =========================================================================================== -->
              
          <!--                                       配置數(shù)據(jù)源                                            -->
              
          <!-- =========================================================================================== -->
              
          <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}"/>
              
          <!-- =========================================================================================== -->
              
          <!--                                       事務(wù)配置                                              -->
              
          <!-- =========================================================================================== -->
              
          <!-- 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"/>

              <!-- =========================================================================================== 
          -->
              
          <!--                                       事務(wù)配置                                              -->
              
          <!-- =========================================================================================== -->
              
          <!-- 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 禮物 閱讀(1630) 評論(0)  編輯  收藏 所屬分類: spring
          主站蜘蛛池模板: 偏关县| 孟津县| 蓝山县| 嘉定区| 潞城市| 桂林市| 怀仁县| 桦南县| 万山特区| 邻水| 阿拉尔市| 漳浦县| 松溪县| 芦溪县| 开远市| 麟游县| 萨迦县| 隆林| 延长县| 大冶市| 周宁县| 伊通| 色达县| 漳浦县| 镇原县| 荣成市| 梨树县| 惠东县| 维西| 丹巴县| 元江| 莆田市| 会泽县| 浦江县| 巴塘县| 丰宁| 永清县| 光泽县| 衢州市| 莲花县| 上蔡县|