springboot聚合工程之添加mybatis数据库持久化操作

在boot-polymer-repository工程添加mybatis的相关依赖

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.polymer</groupId>
<artifactId>boot-polymer</artifactId>
<version>1.0.0.RELEASE</version>
</parent>
<artifactId>boot-polymer-repository</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- mybaits配置 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.2.0</version>
</dependency>
<!-- 添加druid使用阿里巴巴druid连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.28</version>
</dependency>
<!-- 添加mysql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!--dbutils -->
<dependency>
<groupId>commons-dbutils</groupId>
<artifactId>commons-dbutils</artifactId>
<version>1.7</version>
</dependency>
</dependencies>
</project>

添加application配置本项目使用的是yml文件

spring:
datasource:
name: test
url: jdbc:mysql://localhost:3306/epay?characterEncoding=UTF-8
username: root
password: 123
# 使用druid数据源
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20 mybatis:
mapperLocations: classpath:mapper/*.xml
typeAliasesPackage: com.polymer.app.entity

第三步:使用mybatis自动生成工具将表生成mapper文件

CREATE TABLE `bussiness_param` (
`PARAM_TYPE` varchar(20) NOT NULL DEFAULT '' COMMENT '类型',
`PARAM_VALUE` varchar(255) NOT NULL COMMENT '值',
`DESCR` varchar(255) DEFAULT NULL COMMENT '说明',
`REMARK` varchar(255) DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`PARAM_TYPE`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

package com.polymer.app.entity;

public class BussinessDO {
private String paramType; private String paramValue; private String descr; private String remark; public String getParamType() {
return paramType;
} public void setParamType(String paramType) {
this.paramType = paramType;
} public String getParamValue() {
return paramValue;
} public void setParamValue(String paramValue) {
this.paramValue = paramValue;
} public String getDescr() {
return descr;
} public void setDescr(String descr) {
this.descr = descr;
} public String getRemark() {
return remark;
} public void setRemark(String remark) {
this.remark = remark;
}
}
package com.polymer.app.mapper;

import org.apache.ibatis.annotations.Mapper;

import com.polymer.app.entity.BussinessDO;
@Mapper
public interface BussinessMapper {
int deleteByPrimaryKey(String paramType); int insert(BussinessDO record); int insertSelective(BussinessDO record); BussinessDO selectByPrimaryKey(String paramType); int updateByPrimaryKeySelective(BussinessDO record); int updateByPrimaryKey(BussinessDO record);
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.polymer.app.mapper.BussinessMapper">
<resultMap id="BaseResultMap" type="com.polymer.app.entity.BussinessDO">
<id column="PARAM_TYPE" jdbcType="VARCHAR" property="paramType" />
<result column="PARAM_VALUE" jdbcType="VARCHAR" property="paramValue" />
<result column="DESCR" jdbcType="VARCHAR" property="descr" />
<result column="REMARK" jdbcType="VARCHAR" property="remark" />
</resultMap>
<sql id="Base_Column_List">
PARAM_TYPE, PARAM_VALUE, DESCR, REMARK
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from bussiness_param
where PARAM_TYPE = #{paramType,jdbcType=VARCHAR}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
delete from bussiness_param
where PARAM_TYPE = #{paramType,jdbcType=VARCHAR}
</delete>
<insert id="insert" parameterType="com.polymer.app.entity.BussinessDO">
insert into bussiness_param (PARAM_TYPE, PARAM_VALUE, DESCR,
REMARK)
values (#{paramType,jdbcType=VARCHAR}, #{paramValue,jdbcType=VARCHAR}, #{descr,jdbcType=VARCHAR},
#{remark,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.polymer.app.entity.BussinessDO">
insert into bussiness_param
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="paramType != null">
PARAM_TYPE,
</if>
<if test="paramValue != null">
PARAM_VALUE,
</if>
<if test="descr != null">
DESCR,
</if>
<if test="remark != null">
REMARK,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="paramType != null">
#{paramType,jdbcType=VARCHAR},
</if>
<if test="paramValue != null">
#{paramValue,jdbcType=VARCHAR},
</if>
<if test="descr != null">
#{descr,jdbcType=VARCHAR},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.polymer.app.entity.BussinessDO">
update bussiness_param
<set>
<if test="paramValue != null">
PARAM_VALUE = #{paramValue,jdbcType=VARCHAR},
</if>
<if test="descr != null">
DESCR = #{descr,jdbcType=VARCHAR},
</if>
<if test="remark != null">
REMARK = #{remark,jdbcType=VARCHAR},
</if>
</set>
where PARAM_TYPE = #{paramType,jdbcType=VARCHAR}
</update>
<update id="updateByPrimaryKey" parameterType="com.polymer.app.entity.BussinessDO">
update bussiness_param
set PARAM_VALUE = #{paramValue,jdbcType=VARCHAR},
DESCR = #{descr,jdbcType=VARCHAR},
REMARK = #{remark,jdbcType=VARCHAR}
where PARAM_TYPE = #{paramType,jdbcType=VARCHAR}
</update>
</mapper>

把文件放到以下目录:

后面就可以试着调方法了。注意要把mapper放在对应位置,否则yml配置的路径就找不到了

外贴一个我的项目地址,有兴趣去看一下,后面会陆续完善:https://gitee.com/zyf6303/boot-ployer

创建springboot的聚合工程(三)的更多相关文章

  1. 创建springboot的聚合工程(二)

    前篇已经成功创建了springboot的聚合工程并成功访问,下面就要开始子工程木块之间的调用: springboot项目的特点,一个工程下面的类必须要放在启动类下面的子目录下面,否则,启动的时候会报错 ...

  2. 创建springboot的聚合工程(一)

    比起传统复杂的单体工程,使用Maven的多模块配置,可以帮助项目划分模块,鼓励重用,防止POM变得过于庞大,方便某个模块的构建,而不用每次都构建整个项目,并且使得针对某个模块的特殊控制更为方便.接下来 ...

  3. spring boot创建多模块聚合工程

    环境:java1.8,idea 聚合工程优势: 1.统一maven操作.可以在一个maven工程管理多个子工程(每个子工程可单独打包,重启,调试.也可通过聚合工程一起管理). 2.统一管理依赖版本.可 ...

  4. 采用idea创建springboot mybatis web工程

    idea是一款强大的利器,最近公司换成采用springboot在eclipse上开发,因为idea的强大,故而,学习一下该利器,搭建springboot的web工程,在下面练习使用. 一.创建spri ...

  5. IDEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在问题处理

    公司新项目需使用java技术栈,便使用IDEA搭建了一个多SpringBoot项目的聚合工程,因为初次使用,遇到了很多问题,maven打包时各种报错,在网上查了好多终于解决了,为巩固记忆,特作此记录. ...

  6. SpringBoot(一):使用eclipse/idea创建springboot helloword工程

    eclipse如何创建spring boot工程: 第一步:首先打开eclipse,找到图中的下图的中“下三角”符号,选中"working sets"(表示将会把eclipse中的 ...

  7. 使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化

    一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...

  8. 【转载】使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化

    一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...

  9. Idea多模块工程创建——继承、聚合

    一.工程介绍 淘淘网上商城是一个综合性的B2C平台,类似京东商城.天猫商城.会员可以在商城浏览商品.下订单,以及参加各种活动. 管理员.运营可以在平台后台管理系统中管理商品.订单.会员等. 客服可以在 ...

随机推荐

  1. JS获取节点的兄弟,父级,子级元素

    https://blog.csdn.net/duanshuyong/article/details/7562423 先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的方法作 ...

  2. facebook api之Access and Authentication

    Access and Authentication There are three access levels to the Marketing APIs. You can upgrade acces ...

  3. facebook api之Business Manager API

    Business-scoped Users - The new user is tied to a particular business and has permissions scoped to ...

  4. 前端UI框架总结

    H-ui 前端框架 架起设计与后端的桥梁轻量级前端框架,简单免费,兼容性好,服务中国网站. 官网:http://www.h-ui.net/H-ui.admin.shtml github下载:https ...

  5. 【五】php 面向对象

    面向对象 概念:按类进行分类,类是表示彼此之间可能互不相同,但是具有一些共同点的对象集合 多态性:不同的类对同一操作可以有不同的行为 继承:允许我们使用子类在类之间创建层次关系 类 关键字:class ...

  6. isnull和sum的关系

    这是我刚刚写存储过程的时候意识到的一个问题!!! 先问大家这样一个问题,print 100+null  等于多少? 在一组数据统计的过程中,只要使用到sum函数,就必须使用isnull函数包含起来,因 ...

  7. 牛客练习赛26 xor序列

    xor序列 思路:线性基 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #include< ...

  8. Django 基础介绍

    Django 介绍 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由 ...

  9. Linux下python默认版本切换成替代版本

    本文链接自http://www.myhack58.com/Article/48/66/2016/71806.htm 当你安装 Debian Linux 时,安装过程有可能同时为你提供多个可用的 Pyt ...

  10. 虚拟机vmnet0、vmnet1和vmnet8的区别

    vmnet0,实际上就是一个虚拟的网桥 vmnet0,实际上就是一个虚拟的网桥,这个网桥有很若干个端口,一个端口用于连接你的Host,一个端口用于连接你的虚拟机,他们的位置是对等的,谁也不是谁的网关. ...