• spring3.2.2+mybatis3.2.3+c3p0项目整合


    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html
    内部邀请码:C8E245J (不写邀请码,没有现金送)
    国内私募机构九鼎控股打造,九鼎投资是在全国股份转让系统挂牌的公众公司,股票代码为430719,为“中国PE第一股”,市值超1000亿元。 
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------

    在搭建项目之前,创建数据库,以及数据库表,我用的数据库是mysql 5.6.11

    创建数据库语句为:

    Sql代码  收藏代码
    1. CREATE TABLE `orders` (  
    2.   `id` bigint(20) NOT NULL AUTO_INCREMENT,  
    3.   `company_id` varchar(255) DEFAULT NULL,  
    4.   `charge` decimal(18,4) NOT NULL DEFAULT '0.0000',  
    5.   `state` int(11) DEFAULT '0',  
    6.   `remark` varchar(500) DEFAULT NULL,  
    7.   PRIMARY KEY (`id`)  
    8. );  

     搭建项目需要以下的包,

    mybatis-3.2.3-SNAPSHOT.jar

    mybatis-spring-1.2.0.jar

    mysql-connector-java-5.1.24-bin.jar

    c3p0-0.9.1.2.jar

    commons-logging-1.1.1.jar

    spring-aop-3.2.2.RELEASE.jar

    spring-aspects-3.2.2.RELEASE.jar

    spring-beans-3.2.2.RELEASE.jar

    spring-context-3.2.2.RELEASE.jar

    spring-context-support-3.2.2.RELEASE.jar

    spring-core-3.2.2.RELEASE.jar

    spring-expression-3.2.2.RELEASE.jar

    spring-jdbc-3.2.2.RELEASE.jar

    spring-tx-3.2.2.RELEASE.jar

    好了,简单的准备工作已经准备就绪,现在来创建一个java项目或者java web项目

    首先,创建dao接口类。

    Java代码  收藏代码
    1. package com.yunix.dao;  
    2.   
    3. public interface IOrderDao {  
    4.   
    5.     public int getOrderCount();  
    6. }  

    然后在com.yunix.dao.impl包下创建OrderDaoMapper.xml

    内容为:

    Xml代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2.   
    3. <!DOCTYPE mapper PUBLIC   
    4.     "-//mybatis.org//DTD Mapper 3.0//EN"  
    5.     "http://mybatis.org/dtd/mybatis-3-mapper.dtd">  
    6.   
    7. <mapper namespace="com.yunix.dao.IOrderDao">  
    8.     <select id="getOrderCount"  resultType="int">  
    9.     <![CDATA[ 
    10.         select count(1) from orders 
    11.     ]]>  
    12.     </select>  
    13. </mapper>  

     其中namespace为dao接口,id为dao接口中的方法。

    创建service接口:

    Java代码  收藏代码
    1. package com.yunix.service;  
    2.   
    3. public interface IOrderService {  
    4.   
    5.     public int getOrderCount();  
    6. }  

     创建service实现类:

    Java代码  收藏代码
    1. package com.yunix.service.impl;  
    2.   
    3. import org.springframework.beans.factory.annotation.Autowired;  
    4. import org.springframework.stereotype.Service;  
    5.   
    6. import com.yunix.dao.IOrderDao;  
    7. import com.yunix.service.IOrderService;  
    8.   
    9. @Service  
    10. public class OrderService implements IOrderService {  
    11.   
    12.     @Autowired  
    13.     private IOrderDao orderDao;  
    14.       
    15.     @Override  
    16.     public int getOrderCount() {  
    17.   
    18.         return orderDao.getOrderCount();  
    19.     }  
    20.   
    21. }  

     在src文件夹下创建applicationCntext.xml文件

    Xml代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <beans xmlns="http://www.springframework.org/schema/beans"    
    3.     default-autowire="byName"    
    4.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
    5.     xmlns:context="http://www.springframework.org/schema/context"   
    6.     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
    7.     http://www.springframework.org/schema/context   
    8.     http://www.springframework.org/schema/context/spring-context-3.0.xsd">    
    9.       
    10.     <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"   
    11.             destroy-method="close">  
    12.         <property name="driverClass" value="com.mysql.jdbc.Driver" />  
    13.         <property name="jdbcUrl" value="jdbc:mysql://192.168.1.5:3306/test" />  
    14.         <property name="user" value="yunix" />  
    15.         <property name="password" value="123456" />  
    16.         <property name="initialPoolSize" value="1" />  
    17.         <property name="minPoolSize" value="0" />  
    18.         <property name="maxPoolSize" value="10" />  
    19.         <property name="acquireIncrement" value="5" />  
    20.         <property name="maxIdleTime" value="10" />  
    21.         <property name="maxStatements" value="0" />  
    22.     </bean>  
    23.       
    24.     <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">    
    25.         <constructor-arg index="0" ref="sqlSessionFactory" />    
    26.     </bean>    
    27.       
    28.     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  
    29.         <property name="dataSource" ref="dataSource" />  
    30.         <property name="mapperLocations"  
    31.             value="classpath*:com/yunix/dao/impl/*Mapper.xml" />  
    32.     </bean>  
    33.   
    34.     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">  
    35.         <property name="basePackage" value="com.yunix.dao" />  
    36.     </bean>  
    37.   
    38.     <context:component-scan base-package="com.yunix.service" />  
    39.       
    40.       
    41. </beans>  

     以及log4j.properties

    Properties代码  收藏代码
    1. log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
    2. log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
    3. log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] -%m%n  
    4. log4j.logger.com.ibatis=debug  
    5. log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug  
    6. log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug  
    7. log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug  
    8. log4j.logger.java.sql.Connection=debug  
    9. log4j.logger.java.sql.Statement=debug  
    10. log4j.logger.java.sql.PreparedStatement=debug,stdout  

    至此,项目搭建完成。

    到底搭建成不成功,写一个测试类进行简单测试一下。我写的比较简单,写了个main方法进行了测试,测试代码如下:

    Java代码  收藏代码
    1. package test;  
    2.   
    3. import org.springframework.context.ApplicationContext;  
    4. import org.springframework.context.support.ClassPathXmlApplicationContext;  
    5.   
    6. import com.yunix.service.IOrderService;  
    7.   
    8. public class MyBatisTest {  
    9.   
    10.     public static void main(String[] args) {  
    11.           
    12.         @SuppressWarnings("resource")  
    13.         ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");    
    14.         IOrderService orderService = (IOrderService)context.getBean("orderService");    
    15.         int count = orderService.getOrderCount();    
    16.         System.out.println("count:" + count);    
    17.   
    18.     }  
    19.   
    20. }  

     运行结果为:

    Console代码  收藏代码
    1. count:11  
  • 相关阅读:
    ettercap 实施中间人攻击
    JS高级---逆推继承看原型
    JS高级---总结继承
    JS高级---拷贝继承:把一个对象中的属性或者方法直接复制到另一个对象中
    JS高级---借用构造函数
    JS高级---继承案例
    JS高级---继承
    JS高级---一个神奇的原型链
    JS高级---实例对象和属性重名问题
    JS高级---原型链最终的指向是Object的prototype, 而Object中的__proto__是null
  • 原文地址:https://www.cnblogs.com/AloneSword/p/3422128.html
Copyright © 2020-2023  润新知