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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私募机构九鼎控股打造,九鼎投资是在全国股份转让系统挂牌的公众公司,股票代码为430719,为“中国PE第一股”,市值超1000亿元。
国内私募机构九鼎控股打造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  
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
18天前
|
缓存 Java 数据库连接
深入探讨:Spring与MyBatis中的连接池与缓存机制
Spring 与 MyBatis 提供了强大的连接池和缓存机制,通过合理配置和使用这些机制,可以显著提升应用的性能和可扩展性。连接池通过复用数据库连接减少了连接创建和销毁的开销,而 MyBatis 的一级缓存和二级缓存则通过缓存查询结果减少了数据库访问次数。在实际应用中,结合具体的业务需求和系统架构,优化连接池和缓存的配置,是提升系统性能的重要手段。
35 4
|
18天前
|
SQL Java 数据库连接
spring和Mybatis的各种查询
Spring 和 MyBatis 的结合使得数据访问层的开发变得更加简洁和高效。通过以上各种查询操作的详细讲解,我们可以看到 MyBatis 在处理简单查询、条件查询、分页查询、联合查询和动态 SQL 查询方面的强大功能。熟练掌握这些操作,可以极大提升开发效率和代码质量。
31 3
|
23天前
|
Java 数据库连接 数据库
spring和Mybatis的逆向工程
通过本文的介绍,我们了解了如何使用Spring和MyBatis进行逆向工程,包括环境配置、MyBatis Generator配置、Spring和MyBatis整合以及业务逻辑的编写。逆向工程极大地提高了开发效率,减少了重复劳动,保证了代码的一致性和可维护性。希望这篇文章能帮助你在项目中高效地使用Spring和MyBatis。
15 1
|
1月前
|
存储 运维 安全
Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制
通过以上措施,可以保证Spring Boot项目的配置管理在专业水准上,并且易于维护和管理,符合搜索引擎收录标准。
42 2
|
2月前
|
设计模式 前端开发 Java
Spring MVC——项目创建和建立请求连接
MVC是一种软件架构设计模式,将应用分为模型、视图和控制器三部分。Spring MVC是基于MVC模式的Web框架,通过`@RequestMapping`等注解实现URL路由映射,支持GET和POST请求,并可传递参数。创建Spring MVC项目与Spring Boot类似,使用`@RestController`注解标记控制器类。
39 1
Spring MVC——项目创建和建立请求连接
|
2月前
|
Java 关系型数据库 MySQL
Maven——创建 Spring Boot项目
Maven 是一个项目管理工具,通过配置 `pom.xml` 文件自动获取所需的 jar 包,简化了项目的构建和管理过程。其核心功能包括项目构建和依赖管理,支持创建、编译、测试、打包和发布项目。Maven 仓库分为本地仓库和远程仓库,远程仓库包括中央仓库、私服和其他公共库。此外,文档还介绍了如何创建第一个 SpringBoot 项目并实现简单的 HTTP 请求响应。
163 1
Maven——创建 Spring Boot项目
|
2月前
|
Java 关系型数据库 MySQL
如何使用 maven 创建一个 Spring Boot项目
Maven 是一个强大的项目管理工具,通过配置 `pom.xml` 文件自动获取所需的 jar 包,提高开发效率。其核心功能包括项目构建和依赖管理。项目构建支持编译、测试、打包和发布等流程,而依赖管理则通过中央仓库、本地仓库和私有服务器获取和管理项目依赖。示例中展示了如何创建第一个 SpringBoot 项目并实现简单接口。
47 1
如何使用 maven 创建一个 Spring Boot项目
|
2月前
|
Java 应用服务中间件 Android开发
Eclipse创建Spring项目
本文介绍了在Eclipse中创建Spring项目的步骤,包括如何配置Tomcat服务器、创建项目、部署项目到Tomcat以及添加Spring框架所需的JAR包。
77 1
Eclipse创建Spring项目
|
2月前
|
Java Apache Maven
Java/Spring项目的包开头为什么是com?
本文介绍了 Maven 项目的初始结构,并详细解释了 Java 包命名惯例中的域名反转规则。通过域名反转(如 `com.example`),可以确保包名的唯一性,避免命名冲突,提高代码的可读性和逻辑分层。文章还讨论了域名反转的好处,包括避免命名冲突、全球唯一性、提高代码可读性和逻辑分层。最后,作者提出了一个关于包名的问题,引发读者思考。
Java/Spring项目的包开头为什么是com?
|
2月前
|
Java 关系型数据库 MySQL
springboot学习五:springboot整合Mybatis 连接 mysql数据库
这篇文章是关于如何使用Spring Boot整合MyBatis来连接MySQL数据库,并进行基本的增删改查操作的教程。
190 0
springboot学习五:springboot整合Mybatis 连接 mysql数据库