spring+mybatis的简单配置示例
简单代码结构:
//Book.java
package com.hts.entity;
public class Book {
private String id;
private String bookName;
private String bookAuthor;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getBookAuthor() {
return bookAuthor;
}
public void setBookAuthor(String bookAuthor) {
this.bookAuthor = bookAuthor;
}
public Book() {
}
@Override
public String toString() {
return "Book [id=" + id + ", bookName=" + bookName + ", bookAuthor=" + bookAuthor + "]";
}
}
//接口BookDao.java
package com.hts.dao;
import org.springframework.stereotype.Component;
import com.hts.entity.Book;
@Component
public interface BookDao {
public void add(Book b);
}
//TestDemo.java
package com.hts.test;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.hts.dao.BookDao;
import com.hts.entity.Book;
public class TestDemo {
@Test
public void testBookAdd(){
ApplicationContext ac= new ClassPathXmlApplicationContext("applicationContext.xml");
BookDao bd=ac.getBean("bookDao",BookDao.class);
Book b=new Book();
b.setId("3");
b.setBookName("美好的明天");
b.setBookAuthor("hts");
bd.add(b);
}
}
//db.properties,mysql数据库
user=root
password=******
url=jdbc:mysql://ip/数据库名
driver=com.mysql.jdbc.Driver//驱动
maxActive=5//连接池的最大数据库连接数
maxWait=5000//最大等待时间
①:applicationContext.xml的配置:
<?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:context="http://www.springframework.org/schema/context" xmlns:util="http://www.springframework.org/schema/util"
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:jpa="http://www.springframework.org/schema/data/jpa" xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">
<!--连入db.properties-->
<util:properties id="jdbc" location="classpath:db.properties"></util:properties>
<!--配置数据库连接池信息-->
<bean id="ds" class="org.apache.commons.dbcp.BasicDataSource">
<property name="url" value="#{jdbc.url}"></property>
<property name="driverClassName" value="#{jdbc.driver}"></property>
<property name="username" value="#{jdbc.user}"></property>
<property name="password" value="#{jdbc.password}"></property>
<property name="maxActive" value="#{jdbc.maxActive}"></property>
<property name="maxWait" value="#{jdbc.maxWait}"></property>
</bean>
<!--配置 mybatis 的session 工厂-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="ds"></property>
<property name="mapperLocations" value="classpath:com/hts/sql/*.xml"></property>//sqlMapper.xml所在的位置
</bean>
<!-- 扫描指定包下面的所有接口,匹配和映射sql数据 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.hts.dao"></property>
</bean>
<!--开启注解扫描 -->
<context:component-scan base-package="com.hts"></context:component-scan>
</beans>
②:BookDaoMapper.xml中的配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<!-- namespace必须和对应的接口想对应 ,方法名和id对应 -->
<mapper namespace="com.hts.dao.BookDao">
<insert id="add" parameterType="com.hts.entity.Book">
insert into book(id,bookName,bookAuthor) values(#{id},#{bookName},#{bookAuthor})
</insert>
</mapper>
③:数据库表的表名book,有id,bookName,bookAuthor三个字段
④:junit运行TestDemo中testBookAdd方法,发现数据已经插入数据库
spring+mybatis的简单配置示例的更多相关文章
- spring,mybatis事务管理配置与@Transactional注解使用[转]
spring,mybatis事务管理配置与@Transactional注解使用[转] spring,mybatis事务管理配置与@Transactional注解使用 概述事务管理对于企业应用来说是至关 ...
- 学习笔记_J2EE_SSM_01_spring+springMVC+Mybatis整合_XML配置示例
spring+springMVC+Mybatis整合_XML配置示例 1.概述 spring+springMVC+Mybatis整合 XML配置方式 1.1 测试环境说明 名称 版本 备注 操作系统 ...
- spring,mybatis事务管理配置与@Transactional注解使用
spring,mybatis事务管理配置与@Transactional注解使用[转] spring,mybatis事务管理配置与@Transactional注解使用 概述事务管理对于企业应用来说是 ...
- Spring+MyBatis双数据库配置
Spring+MyBatis双数据库配置 近期项目中遇到要调用其它数据库的情况.本来仅仅使用一个MySQL数据库.但随着项目内容越来越多,逻辑越来越复杂. 原来一个数据库已经不够用了,须要分库分表.所 ...
- Spring+MyBatis多数据源配置实现
最近用到了MyBatis配置多数据源,原以为简单配置下就行了,实际操作后发现还是要费些事的,这里记录下,以作备忘 不多废话,直接上代码,后面会有简单的实现介绍 jdbc和log4j的配置 #定义输出格 ...
- Spring+MyBatis实践—工程配置
初次实践:Spring+MyBatis技术搭建框架,采用Bootstrap前端开源框架. 简介: MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所 ...
- 01 Spring Boot 的简单配置和使用
Spring Boot 简介 使用 Spring Boot 可以让我们快速创建一个基于 Spring 的项目,而让这个 Spring 项目跑起来我们只需要很少的配置就可以了. 创建 Spring Bo ...
- Spring dbcp连接池简单配置 示例
一.配置db.properties属性文件 #database connection config connection.username=sa connection.password=sa conn ...
- spring+mybatis+springmvc的配置
1.web.xml的配置 <?xml version="1.0" encoding="UTF-8"?><web-app version=&qu ...
随机推荐
- JUnit4在Eclipse中的使用
测试是项目开发中很重要的一环.实际上,建议的项目前期编写过程是:构思-> 编写单元测试代码-> 编写接口->编写实现类-> 测试实现类->编写主类....JUnit是一个 ...
- 关于MDK下pack的定义方法
我们使用数据流的过程中经常会用到结构体来进行解析,这个时候就需要使用字节对齐这个概念.不同的编译器的处理方法不一样. 这里小结一下MDK里面常用的几种方法: 1. 最常见的一种 使用#pragma p ...
- 从FMDB到WCDB、微信团队怎么说?
WCDB背景 自己初次见到WCDB是微信开发团队公众号在今年五月份推送的一篇文章中(开发者团队的微信号上面图片中有,值得大家关注一下),那时候就说在筹备着WCDB的开源,觉得很是新奇,在两个多月前WC ...
- 机器学习笔记——拉格朗日乘子法和KKT条件
拉格朗日乘子法是一种寻找多元函数在一组约束下的极值方法,通过引入拉格朗日乘子,可将有m个变量和n个约束条件的最优化问题转化为具有m+n个变量的无约束优化问题.在介绍拉格朗日乘子法之前,先简要的介绍一些 ...
- mysql内连接的复杂应用
查找所有员工自入职以来的薪水涨幅情况,给出员工编号emp_noy以及其对应的薪水涨幅growth,并按照growth进行升序CREATE TABLE `employees` (`emp_no` int ...
- 大端(Big Endian)与小端(Little Endian)
1. 你从哪里来?端模式(Endian)的这个词出自Jonathan Swift书写的<格列佛游记>.这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为Big ...
- BYS推荐MS前端PhoneCall面试问题整理-2
JS:1. 如何为一个已有的对象加一个新的方法,Prototype,这个不仅要知道,还要用过,写过 2. Angular和Ember比较的优势或不同点在哪里 3. null和undefined的区别, ...
- WebApp开发总结
WebApp开发总结 框架的使用网络上都有教程,就不写了,主要记录下个人的开发总结以方便以后开发注意. css公用样式统一定义 css样式抽出复用 appearance: none; 取消系统默认样式 ...
- 开源的 Restful Api 集成测试工具 Hitchhiker
Hitchhiker 是一款开源的 Restful Api 集成测试工具,你可以在轻松部署到本地,和你的team成员一起管理Api. 先上图看看: 简单介绍 背景是Team在开发一些Api,这些Api ...
- WeQuant交易策略—网格交易
网格交易策略(Grid Trading) 策略介绍 网格策略本质上是一种低吸高抛的策略.标的物价格越低,吸纳的头寸越多:标的物价格越高,卖出的头寸越多.网格策略巧妙地借鉴了日常生活中渔翁撒网扑鱼的思路 ...