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. 3D场景鼠标点选择物体

    对于以下几种选择: (1)点云: (2)线框: (3)网格: 针对以上准备三个函数: (1)获取点和线段最短距离函数: (2)获取线段和线段最短距离函数: (3)获取三角面片和线段最短距离函数: 算法 ...

  2. 1、iptables-netfilter基础

    .iptables: 包过滤型防火墙功能.四表五链 .iptables规则.规则管理工具.iptables命令 .iptables链管理.规则管理.查看等 .iptables匹配条件.目标.显式扩展. ...

  3. 【Ruby】【目录 & 引用 & 文件 】

    [[目录]] 当前文件在根目录下一个文件夹下 引用当前文件所在目录上一级目录下某.rb文件 方法一 require File.join(File.dirname(FILE),'..','test_on ...

  4. 【Python】一些练习代码用的图片

  5. Intellij idea创建maven项目并配置tomcat

    今天刷知乎的时候刷到这么一句话 我觉得还是蛮有趣的,形容的也比较到位,正好最近新建maven项目进行了thrift数据的传输,在此做一个记录 首先idea整合了maven,不需要单独下载 新建一个Pr ...

  6. python 安装pip

    https://pip.pypa.io/en/stable/installing/

  7. 性能测试 Performance Test Report

    时间隔了很久,两年左右了吧,最近打开原来的测试报告,测试数据还是很漂亮的.TPS比我记忆中的要高很多. 数据中有些是定死了的(当时的要求),并发不是计算的,是用几个值跑起来试试看的.因为后期我们会用S ...

  8. Python统计list中各个元素出现的次数

    来自:天蝎圣诞结 利用Python字典统计 利用Python的collection包下Counter类统计 利用Python的pandas包下的value_counts类统计 字典统计 a = [1, ...

  9. N的阶乘(10000) 51 nod——1057 (大数)

    像这些大整数加法或者乘法什么的思想都一样,就是截位存取,累积进位,最后逆序输出就可以啦 PS:小生是用10000来存取的,300MS就能A,如果单个存取有点危险,题目时间限制好像是1000ms,大家可 ...

  10. php CLI SAPI 内置Web Server

    PHP 5.4.0起, CLI SAPI 提供了一个内置的Web服务器. 这个内置的Web服务器主要用于本地开发使用,不可用于线上产品环境. URI请求会被发送到PHP所在的的工作目录(Working ...