创建springboot的聚合工程(三)
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的聚合工程(三)的更多相关文章
- 创建springboot的聚合工程(二)
前篇已经成功创建了springboot的聚合工程并成功访问,下面就要开始子工程木块之间的调用: springboot项目的特点,一个工程下面的类必须要放在启动类下面的子目录下面,否则,启动的时候会报错 ...
- 创建springboot的聚合工程(一)
比起传统复杂的单体工程,使用Maven的多模块配置,可以帮助项目划分模块,鼓励重用,防止POM变得过于庞大,方便某个模块的构建,而不用每次都构建整个项目,并且使得针对某个模块的特殊控制更为方便.接下来 ...
- spring boot创建多模块聚合工程
环境:java1.8,idea 聚合工程优势: 1.统一maven操作.可以在一个maven工程管理多个子工程(每个子工程可单独打包,重启,调试.也可通过聚合工程一起管理). 2.统一管理依赖版本.可 ...
- 采用idea创建springboot mybatis web工程
idea是一款强大的利器,最近公司换成采用springboot在eclipse上开发,因为idea的强大,故而,学习一下该利器,搭建springboot的web工程,在下面练习使用. 一.创建spri ...
- IDEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在问题处理
公司新项目需使用java技术栈,便使用IDEA搭建了一个多SpringBoot项目的聚合工程,因为初次使用,遇到了很多问题,maven打包时各种报错,在网上查了好多终于解决了,为巩固记忆,特作此记录. ...
- SpringBoot(一):使用eclipse/idea创建springboot helloword工程
eclipse如何创建spring boot工程: 第一步:首先打开eclipse,找到图中的下图的中“下三角”符号,选中"working sets"(表示将会把eclipse中的 ...
- 使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化
一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...
- 【转载】使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化
一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...
- Idea多模块工程创建——继承、聚合
一.工程介绍 淘淘网上商城是一个综合性的B2C平台,类似京东商城.天猫商城.会员可以在商城浏览商品.下订单,以及参加各种活动. 管理员.运营可以在平台后台管理系统中管理商品.订单.会员等. 客服可以在 ...
随机推荐
- volatile 变量使用
1,对其它线程可见性.原理是:别的线程每次使用前都是要刷新一下值,并不是原子性同步.所有还是会出现线程不安全. 2,禁止指令重新排序.也就是会出现机器实际执行可能和代码的顺序不一样.使用volatil ...
- (转) 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文)
本文转自:http://mp.weixin.qq.com/s/aAHbybdbs_GtY8OyU6h5WA 专题 | 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文) 原创 201 ...
- Java 大数任意进制转换
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner cin = ...
- 文档对象模型DOM
文档对象模型 DOM 1 DOM概述 1.1 什么是DOM 文档对象模型 Document Object Model 提供给用户操作document obj 的标准接口 文档对象模型 是表示和操作 H ...
- HDU 5583 Kingdom of Black and White(暴力)
http://acm.hdu.edu.cn/showproblem.php?pid=5583 题意: 给出一个01串,现在对这串进行分组,连续相同的就分为一组,如果该组内有x个数,那么就对答案贡献x* ...
- js 数组、对象转json 以及 json转 数组、对象
let jsonObj = $.parseJSON(jsonStr); //json字符串转化成json对象(jq方法) var jsonObj = JSON.parse(jsonStr); //js ...
- Jenkins参数化构建(二)之 Maven command line使用Jenkins参数
安装Extened Choice Parameter插件 General模块选择‘参数化构建过程’ 3. maven command line中使用 clean test -DsuiteXmlFi ...
- JavaScript深入
BOM(浏览器对象模型)——与浏览器对话: Window对象(代表浏览器的窗口——不包括工具栏.滚动条): //所有全局对象.全局函数,均自动成为window对象的成员(document属于浏览器,所 ...
- PHPsession工作机制以及销毁session
- JS快速构建数组方法
一.常用(普通)数组的构建 1.1 直接构建 let arr = ['mock1', 'mock2', 'mock3'] 1.2 通过new Array let arr = newArray('moc ...