diff --git a/README.md b/README.md index 74c5ab0..f54b3f9 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,7 @@ [13、SpringBoot2 整合 ClickHouse数据库,实现数据高性能查询分析](https://mp.weixin.qq.com/s?__biz=MzU4Njg0MzYwNw==&mid=2247484121&idx=1&sn=29cc633facbbb2c69afa4e6472fb93e8&chksm=fdf45661ca83df77879cbea0e0e3b445a5972a9fc0f84ae25c6882e60e4bed3dc2a68338fa2a&token=1150397377&lang=zh_CN#rd)
[14、SpringBoot2 整合 Drools规则引擎,实现高效的业务规则](https://mp.weixin.qq.com/s?__biz=MzU4Njg0MzYwNw==&mid=2247484126&idx=1&sn=480ca951cb6a4da92f7e153ecc6f5161&chksm=fdf45666ca83df70d4cd84be8712e15b192ee0ec4a9aed9c537e13d23bf534afaa7c1712f5b3&token=1150397377&lang=zh_CN#rd)
+[15、SpringBoot2 配置多数据源,整合MybatisPlus增强插件](https://mp.weixin.qq.com/s?__biz=MzU4Njg0MzYwNw==&mid=2247484131&idx=1&sn=f96cc6dc29ed8c2f5823183775726733&chksm=fdf4565bca83df4dd23fa2672303c331ded0fab9534e8ae2d529cd61262dcce399d2b0642f8e&token=1909713327&lang=zh_CN#rd)
持续更新中... diff --git a/ware-plus-batis/pom.xml b/ware-plus-batis/pom.xml new file mode 100644 index 0000000..405d383 --- /dev/null +++ b/ware-plus-batis/pom.xml @@ -0,0 +1,97 @@ + + + + org.springframework.boot + spring-boot-starters + 2.1.3.RELEASE + + 4.0.0 + com.plus.batis + ware-plus-batis + jar + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-aop + + + org.springframework.boot + spring-boot-starter-test + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + 1.3.2 + + + + com.baomidou + mybatis-plus-boot-starter + 3.0.7.1 + + + com.baomidou + mybatis-plus-generator + + + + + com.baomidou + mybatis-plus + 3.0.7.1 + + + mysql + mysql-connector-java + 5.1.38 + + + com.alibaba + druid-spring-boot-starter + 1.1.13 + + + com.alibaba + druid + 1.1.10 + + + commons-lang + commons-lang + 2.6 + + + com.github.pagehelper + pagehelper-spring-boot-starter + 1.2.3 + + + + + ${project.artifactId} + + + src/main/resources + true + + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.8 + 1.8 + + + + + + \ No newline at end of file diff --git a/ware-plus-batis/src/main/java/com/plus/batis/Application7014.java b/ware-plus-batis/src/main/java/com/plus/batis/Application7014.java new file mode 100644 index 0000000..ec734a8 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/Application7014.java @@ -0,0 +1,13 @@ +package com.plus.batis; + +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +@MapperScan(basePackages = {"com.plus.batis.mapper"}) +public class Application7014 { + public static void main(String[] args) { + SpringApplication.run(Application7014.class,args) ; + } +} diff --git a/ware-plus-batis/src/main/java/com/plus/batis/config/DruidConfig.java b/ware-plus-batis/src/main/java/com/plus/batis/config/DruidConfig.java new file mode 100644 index 0000000..9dfdff8 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/config/DruidConfig.java @@ -0,0 +1,108 @@ +package com.plus.batis.config; + +import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.support.http.StatViewServlet; +import com.alibaba.druid.support.http.WebStatFilter; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.web.servlet.FilterRegistrationBean; +import org.springframework.boot.web.servlet.ServletRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import javax.sql.DataSource; + +@Configuration +public class DruidConfig { + private static final Logger logger = LoggerFactory.getLogger(DruidConfig.class); + @Value("${spring.datasource.druid.url}") + private String dbUrl; + @Value("${spring.datasource.druid.username}") + private String username; + @Value("${spring.datasource.druid.password}") + private String password; + @Value("${spring.datasource.druid.driverClassName}") + private String driverClassName; + @Value("${spring.datasource.druid.initial-size}") + private int initialSize; + @Value("${spring.datasource.druid.max-active}") + private int maxActive; + @Value("${spring.datasource.druid.min-idle}") + private int minIdle; + @Value("${spring.datasource.druid.max-wait}") + private int maxWait; + @Value("${spring.datasource.druid.pool-prepared-statements}") + private boolean poolPreparedStatements; + @Value("${spring.datasource.druid.max-pool-prepared-statement-per-connection-size}") + private int maxPoolPreparedStatementPerConnectionSize; + @Value("${spring.datasource.druid.time-between-eviction-runs-millis}") + private int timeBetweenEvictionRunsMillis; + @Value("${spring.datasource.druid.min-evictable-idle-time-millis}") + private int minEvictableIdleTimeMillis; + @Value("${spring.datasource.druid.max-evictable-idle-time-millis}") + private int maxEvictableIdleTimeMillis; + @Value("${spring.datasource.druid.validation-query}") + private String validationQuery; + @Value("${spring.datasource.druid.test-while-idle}") + private boolean testWhileIdle; + @Value("${spring.datasource.druid.test-on-borrow}") + private boolean testOnBorrow; + @Value("${spring.datasource.druid.test-on-return}") + private boolean testOnReturn; + @Value("${spring.datasource.druid.filters}") + private String filters; + @Value("{spring.datasource.druid.connection-properties}") + private String connectionProperties; + @Bean + public DataSource dataSource() { + DruidDataSource datasource = new DruidDataSource(); + datasource.setUrl(dbUrl); + datasource.setUsername(username); + datasource.setPassword(password); + datasource.setDriverClassName(driverClassName); + datasource.setInitialSize(initialSize); + datasource.setMinIdle(minIdle); + datasource.setMaxActive(maxActive); + datasource.setMaxWait(maxWait); + datasource.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRunsMillis); + datasource.setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis); + datasource.setMaxEvictableIdleTimeMillis(maxEvictableIdleTimeMillis); + datasource.setValidationQuery(validationQuery); + datasource.setTestWhileIdle(testWhileIdle); + datasource.setTestOnBorrow(testOnBorrow); + datasource.setTestOnReturn(testOnReturn); + datasource.setPoolPreparedStatements(poolPreparedStatements); + datasource.setMaxPoolPreparedStatementPerConnectionSize(maxPoolPreparedStatementPerConnectionSize); + try { + datasource.setFilters(filters); + } catch (Exception e) { + logger.error("druid configuration initialization filter", e); + } + datasource.setConnectionProperties(connectionProperties); + return datasource; + } + @Bean + public ServletRegistrationBean statViewServlet(){ + ServletRegistrationBean srb = + new ServletRegistrationBean(new StatViewServlet(),"/druid/*"); + //设置控制台管理用户 + srb.addInitParameter("loginUsername","root"); + srb.addInitParameter("loginPassword","root"); + //是否可以重置数据 + srb.addInitParameter("resetEnable","false"); + return srb; + } + @Bean + public FilterRegistrationBean statFilter(){ + //创建过滤器 + FilterRegistrationBean frb = + new FilterRegistrationBean(new WebStatFilter()); + //设置过滤器过滤路径 + frb.addUrlPatterns("/*"); + //忽略过滤的形式 + frb.addInitParameter("exclusions", + "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"); + return frb; + } +} diff --git a/ware-plus-batis/src/main/java/com/plus/batis/controller/UserBaseController.java b/ware-plus-batis/src/main/java/com/plus/batis/controller/UserBaseController.java new file mode 100644 index 0000000..8cad66d --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/controller/UserBaseController.java @@ -0,0 +1,73 @@ +package com.plus.batis.controller; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.pagehelper.PageInfo; +import com.plus.batis.entity.QueryParam; +import com.plus.batis.entity.UserBase; +import com.plus.batis.service.UserBaseService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import javax.annotation.Resource; +import java.util.Collection; +import java.util.HashMap; +import java.util.Map; + +@RestController +@RequestMapping("/user") +public class UserBaseController { + + private static final Logger LOGGER = LoggerFactory.getLogger(UserBaseController.class) ; + + @Resource + private UserBaseService userBaseService ; + + @RequestMapping("/info") + public UserBase getUserBase (){ + return userBaseService.getById(1) ; + } + + @RequestMapping("/queryInfo") + public String queryInfo (){ + + UserBase userBase1 = userBaseService.getOne(new QueryWrapper().orderByDesc("create_time")) ; + LOGGER.info("倒叙取值:{}",userBase1.getUserName()); + + Integer count = userBaseService.count() ; + LOGGER.info("查询总数:{}",count); + + UserBase userBase2 = new UserBase() ; + userBase2.setId(1); + userBase2.setUserName("spring"); + boolean resFlag = userBaseService.saveOrUpdate(userBase2) ; + LOGGER.info("保存更新:{}",resFlag); + + Map listByMap = new HashMap<>() ; + listByMap.put("state","0") ; + Collection listMap = userBaseService.listByMap(listByMap) ; + LOGGER.info("ListByMap查询:{}",listMap); + + boolean removeFlag = userBaseService.removeById(3) ; + LOGGER.info("删除数据:{}",removeFlag); + + return "success" ; + } + + @RequestMapping("/queryPage") + public IPage queryPage (){ + QueryParam param = new QueryParam() ; + param.setPage(1); + param.setPageSize(10); + param.setUserName("cicada"); + param.setState(0); + return userBaseService.queryPage(param) ; + } + + @RequestMapping("/pageHelper") + public PageInfo pageHelper (){ + return userBaseService.pageHelper(new QueryParam()) ; + } + +} diff --git a/ware-plus-batis/src/main/java/com/plus/batis/entity/BaseParam.java b/ware-plus-batis/src/main/java/com/plus/batis/entity/BaseParam.java new file mode 100644 index 0000000..bced1e1 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/entity/BaseParam.java @@ -0,0 +1,22 @@ +package com.plus.batis.entity; + +public class BaseParam { + private long page ; + private long pageSize ; + + public long getPage() { + return page; + } + + public void setPage(long page) { + this.page = page; + } + + public long getPageSize() { + return pageSize; + } + + public void setPageSize(long pageSize) { + this.pageSize = pageSize; + } +} diff --git a/ware-plus-batis/src/main/java/com/plus/batis/entity/QueryParam.java b/ware-plus-batis/src/main/java/com/plus/batis/entity/QueryParam.java new file mode 100644 index 0000000..666b926 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/entity/QueryParam.java @@ -0,0 +1,18 @@ +package com.plus.batis.entity; + +public class QueryParam extends BaseParam { + private String userName ; + private Integer state ; + public String getUserName() { + return userName; + } + public void setUserName(String userName) { + this.userName = userName; + } + public Integer getState() { + return state; + } + public void setState(Integer state) { + this.state = state; + } +} diff --git a/ware-plus-batis/src/main/java/com/plus/batis/entity/UserBase.java b/ware-plus-batis/src/main/java/com/plus/batis/entity/UserBase.java new file mode 100644 index 0000000..84d4a35 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/entity/UserBase.java @@ -0,0 +1,91 @@ +package com.plus.batis.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.util.Date; + +@TableName("hc_user_base") +public class UserBase { + + @TableId + private Integer id; + + private String userName; + + private String passWord; + + private String phone; + + private String email; + + private Date createTime; + + private Date updateTime; + + private Integer state; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName == null ? null : userName.trim(); + } + + public String getPassWord() { + return passWord; + } + + public void setPassWord(String passWord) { + this.passWord = passWord == null ? null : passWord.trim(); + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone == null ? null : phone.trim(); + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email == null ? null : email.trim(); + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public Integer getState() { + return state; + } + + public void setState(Integer state) { + this.state = state; + } +} \ No newline at end of file diff --git a/ware-plus-batis/src/main/java/com/plus/batis/entity/UserBaseExample.java b/ware-plus-batis/src/main/java/com/plus/batis/entity/UserBaseExample.java new file mode 100644 index 0000000..f9cf4ac --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/entity/UserBaseExample.java @@ -0,0 +1,721 @@ +package com.plus.batis.entity; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +public class UserBaseExample { + protected String orderByClause; + + protected boolean distinct; + + protected List oredCriteria; + + public UserBaseExample() { + oredCriteria = new ArrayList(); + } + + public void setOrderByClause(String orderByClause) { + this.orderByClause = orderByClause; + } + + public String getOrderByClause() { + return orderByClause; + } + + public void setDistinct(boolean distinct) { + this.distinct = distinct; + } + + public boolean isDistinct() { + return distinct; + } + + public List getOredCriteria() { + return oredCriteria; + } + + public void or(Criteria criteria) { + oredCriteria.add(criteria); + } + + public Criteria or() { + Criteria criteria = createCriteriaInternal(); + oredCriteria.add(criteria); + return criteria; + } + + public Criteria createCriteria() { + Criteria criteria = createCriteriaInternal(); + if (oredCriteria.size() == 0) { + oredCriteria.add(criteria); + } + return criteria; + } + + protected Criteria createCriteriaInternal() { + Criteria criteria = new Criteria(); + return criteria; + } + + public void clear() { + oredCriteria.clear(); + orderByClause = null; + distinct = false; + } + + protected abstract static class GeneratedCriteria { + protected List criteria; + + protected GeneratedCriteria() { + super(); + criteria = new ArrayList(); + } + + public boolean isValid() { + return criteria.size() > 0; + } + + public List getAllCriteria() { + return criteria; + } + + public List getCriteria() { + return criteria; + } + + protected void addCriterion(String condition) { + if (condition == null) { + throw new RuntimeException("Value for condition cannot be null"); + } + criteria.add(new Criterion(condition)); + } + + protected void addCriterion(String condition, Object value, String property) { + if (value == null) { + throw new RuntimeException("Value for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value)); + } + + protected void addCriterion(String condition, Object value1, Object value2, String property) { + if (value1 == null || value2 == null) { + throw new RuntimeException("Between values for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value1, value2)); + } + + public Criteria andIdIsNull() { + addCriterion("id is null"); + return (Criteria) this; + } + + public Criteria andIdIsNotNull() { + addCriterion("id is not null"); + return (Criteria) this; + } + + public Criteria andIdEqualTo(Integer value) { + addCriterion("id =", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotEqualTo(Integer value) { + addCriterion("id <>", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThan(Integer value) { + addCriterion("id >", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThanOrEqualTo(Integer value) { + addCriterion("id >=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThan(Integer value) { + addCriterion("id <", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThanOrEqualTo(Integer value) { + addCriterion("id <=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdIn(List values) { + addCriterion("id in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdNotIn(List values) { + addCriterion("id not in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdBetween(Integer value1, Integer value2) { + addCriterion("id between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andIdNotBetween(Integer value1, Integer value2) { + addCriterion("id not between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andUserNameIsNull() { + addCriterion("user_name is null"); + return (Criteria) this; + } + + public Criteria andUserNameIsNotNull() { + addCriterion("user_name is not null"); + return (Criteria) this; + } + + public Criteria andUserNameEqualTo(String value) { + addCriterion("user_name =", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameNotEqualTo(String value) { + addCriterion("user_name <>", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameGreaterThan(String value) { + addCriterion("user_name >", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameGreaterThanOrEqualTo(String value) { + addCriterion("user_name >=", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameLessThan(String value) { + addCriterion("user_name <", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameLessThanOrEqualTo(String value) { + addCriterion("user_name <=", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameLike(String value) { + addCriterion("user_name like", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameNotLike(String value) { + addCriterion("user_name not like", value, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameIn(List values) { + addCriterion("user_name in", values, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameNotIn(List values) { + addCriterion("user_name not in", values, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameBetween(String value1, String value2) { + addCriterion("user_name between", value1, value2, "userName"); + return (Criteria) this; + } + + public Criteria andUserNameNotBetween(String value1, String value2) { + addCriterion("user_name not between", value1, value2, "userName"); + return (Criteria) this; + } + + public Criteria andPassWordIsNull() { + addCriterion("pass_word is null"); + return (Criteria) this; + } + + public Criteria andPassWordIsNotNull() { + addCriterion("pass_word is not null"); + return (Criteria) this; + } + + public Criteria andPassWordEqualTo(String value) { + addCriterion("pass_word =", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordNotEqualTo(String value) { + addCriterion("pass_word <>", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordGreaterThan(String value) { + addCriterion("pass_word >", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordGreaterThanOrEqualTo(String value) { + addCriterion("pass_word >=", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordLessThan(String value) { + addCriterion("pass_word <", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordLessThanOrEqualTo(String value) { + addCriterion("pass_word <=", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordLike(String value) { + addCriterion("pass_word like", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordNotLike(String value) { + addCriterion("pass_word not like", value, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordIn(List values) { + addCriterion("pass_word in", values, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordNotIn(List values) { + addCriterion("pass_word not in", values, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordBetween(String value1, String value2) { + addCriterion("pass_word between", value1, value2, "passWord"); + return (Criteria) this; + } + + public Criteria andPassWordNotBetween(String value1, String value2) { + addCriterion("pass_word not between", value1, value2, "passWord"); + return (Criteria) this; + } + + public Criteria andPhoneIsNull() { + addCriterion("phone is null"); + return (Criteria) this; + } + + public Criteria andPhoneIsNotNull() { + addCriterion("phone is not null"); + return (Criteria) this; + } + + public Criteria andPhoneEqualTo(String value) { + addCriterion("phone =", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneNotEqualTo(String value) { + addCriterion("phone <>", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneGreaterThan(String value) { + addCriterion("phone >", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneGreaterThanOrEqualTo(String value) { + addCriterion("phone >=", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneLessThan(String value) { + addCriterion("phone <", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneLessThanOrEqualTo(String value) { + addCriterion("phone <=", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneLike(String value) { + addCriterion("phone like", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneNotLike(String value) { + addCriterion("phone not like", value, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneIn(List values) { + addCriterion("phone in", values, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneNotIn(List values) { + addCriterion("phone not in", values, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneBetween(String value1, String value2) { + addCriterion("phone between", value1, value2, "phone"); + return (Criteria) this; + } + + public Criteria andPhoneNotBetween(String value1, String value2) { + addCriterion("phone not between", value1, value2, "phone"); + return (Criteria) this; + } + + public Criteria andEmailIsNull() { + addCriterion("email is null"); + return (Criteria) this; + } + + public Criteria andEmailIsNotNull() { + addCriterion("email is not null"); + return (Criteria) this; + } + + public Criteria andEmailEqualTo(String value) { + addCriterion("email =", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailNotEqualTo(String value) { + addCriterion("email <>", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailGreaterThan(String value) { + addCriterion("email >", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailGreaterThanOrEqualTo(String value) { + addCriterion("email >=", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailLessThan(String value) { + addCriterion("email <", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailLessThanOrEqualTo(String value) { + addCriterion("email <=", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailLike(String value) { + addCriterion("email like", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailNotLike(String value) { + addCriterion("email not like", value, "email"); + return (Criteria) this; + } + + public Criteria andEmailIn(List values) { + addCriterion("email in", values, "email"); + return (Criteria) this; + } + + public Criteria andEmailNotIn(List values) { + addCriterion("email not in", values, "email"); + return (Criteria) this; + } + + public Criteria andEmailBetween(String value1, String value2) { + addCriterion("email between", value1, value2, "email"); + return (Criteria) this; + } + + public Criteria andEmailNotBetween(String value1, String value2) { + addCriterion("email not between", value1, value2, "email"); + return (Criteria) this; + } + + public Criteria andCreateTimeIsNull() { + addCriterion("create_time is null"); + return (Criteria) this; + } + + public Criteria andCreateTimeIsNotNull() { + addCriterion("create_time is not null"); + return (Criteria) this; + } + + public Criteria andCreateTimeEqualTo(Date value) { + addCriterion("create_time =", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotEqualTo(Date value) { + addCriterion("create_time <>", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeGreaterThan(Date value) { + addCriterion("create_time >", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) { + addCriterion("create_time >=", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeLessThan(Date value) { + addCriterion("create_time <", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeLessThanOrEqualTo(Date value) { + addCriterion("create_time <=", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeIn(List values) { + addCriterion("create_time in", values, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotIn(List values) { + addCriterion("create_time not in", values, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeBetween(Date value1, Date value2) { + addCriterion("create_time between", value1, value2, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotBetween(Date value1, Date value2) { + addCriterion("create_time not between", value1, value2, "createTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIsNull() { + addCriterion("update_time is null"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIsNotNull() { + addCriterion("update_time is not null"); + return (Criteria) this; + } + + public Criteria andUpdateTimeEqualTo(Date value) { + addCriterion("update_time =", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotEqualTo(Date value) { + addCriterion("update_time <>", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeGreaterThan(Date value) { + addCriterion("update_time >", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) { + addCriterion("update_time >=", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeLessThan(Date value) { + addCriterion("update_time <", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeLessThanOrEqualTo(Date value) { + addCriterion("update_time <=", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIn(List values) { + addCriterion("update_time in", values, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotIn(List values) { + addCriterion("update_time not in", values, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeBetween(Date value1, Date value2) { + addCriterion("update_time between", value1, value2, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotBetween(Date value1, Date value2) { + addCriterion("update_time not between", value1, value2, "updateTime"); + return (Criteria) this; + } + + public Criteria andStateIsNull() { + addCriterion("state is null"); + return (Criteria) this; + } + + public Criteria andStateIsNotNull() { + addCriterion("state is not null"); + return (Criteria) this; + } + + public Criteria andStateEqualTo(Integer value) { + addCriterion("state =", value, "state"); + return (Criteria) this; + } + + public Criteria andStateNotEqualTo(Integer value) { + addCriterion("state <>", value, "state"); + return (Criteria) this; + } + + public Criteria andStateGreaterThan(Integer value) { + addCriterion("state >", value, "state"); + return (Criteria) this; + } + + public Criteria andStateGreaterThanOrEqualTo(Integer value) { + addCriterion("state >=", value, "state"); + return (Criteria) this; + } + + public Criteria andStateLessThan(Integer value) { + addCriterion("state <", value, "state"); + return (Criteria) this; + } + + public Criteria andStateLessThanOrEqualTo(Integer value) { + addCriterion("state <=", value, "state"); + return (Criteria) this; + } + + public Criteria andStateIn(List values) { + addCriterion("state in", values, "state"); + return (Criteria) this; + } + + public Criteria andStateNotIn(List values) { + addCriterion("state not in", values, "state"); + return (Criteria) this; + } + + public Criteria andStateBetween(Integer value1, Integer value2) { + addCriterion("state between", value1, value2, "state"); + return (Criteria) this; + } + + public Criteria andStateNotBetween(Integer value1, Integer value2) { + addCriterion("state not between", value1, value2, "state"); + return (Criteria) this; + } + } + + public static class Criteria extends GeneratedCriteria { + + protected Criteria() { + super(); + } + } + + public static class Criterion { + private String condition; + + private Object value; + + private Object secondValue; + + private boolean noValue; + + private boolean singleValue; + + private boolean betweenValue; + + private boolean listValue; + + private String typeHandler; + + public String getCondition() { + return condition; + } + + public Object getValue() { + return value; + } + + public Object getSecondValue() { + return secondValue; + } + + public boolean isNoValue() { + return noValue; + } + + public boolean isSingleValue() { + return singleValue; + } + + public boolean isBetweenValue() { + return betweenValue; + } + + public boolean isListValue() { + return listValue; + } + + public String getTypeHandler() { + return typeHandler; + } + + protected Criterion(String condition) { + super(); + this.condition = condition; + this.typeHandler = null; + this.noValue = true; + } + + protected Criterion(String condition, Object value, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.typeHandler = typeHandler; + if (value instanceof List) { + this.listValue = true; + } else { + this.singleValue = true; + } + } + + protected Criterion(String condition, Object value) { + this(condition, value, null); + } + + protected Criterion(String condition, Object value, Object secondValue, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.secondValue = secondValue; + this.typeHandler = typeHandler; + this.betweenValue = true; + } + + protected Criterion(String condition, Object value, Object secondValue) { + this(condition, value, secondValue, null); + } + } +} \ No newline at end of file diff --git a/ware-plus-batis/src/main/java/com/plus/batis/mapper/UserBaseMapper.java b/ware-plus-batis/src/main/java/com/plus/batis/mapper/UserBaseMapper.java new file mode 100644 index 0000000..09acba8 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/mapper/UserBaseMapper.java @@ -0,0 +1,12 @@ +package com.plus.batis.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.plus.batis.entity.QueryParam; +import com.plus.batis.entity.UserBase; +import java.util.List; + +public interface UserBaseMapper extends BaseMapper { + + List selectByParam (QueryParam param) ; + +} \ No newline at end of file diff --git a/ware-plus-batis/src/main/java/com/plus/batis/service/UserBaseService.java b/ware-plus-batis/src/main/java/com/plus/batis/service/UserBaseService.java new file mode 100644 index 0000000..9352f43 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/service/UserBaseService.java @@ -0,0 +1,13 @@ +package com.plus.batis.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.github.pagehelper.PageInfo; +import com.plus.batis.entity.QueryParam; +import com.plus.batis.entity.UserBase; + +public interface UserBaseService extends IService { + IPage queryPage(QueryParam param) ; + + PageInfo pageHelper (QueryParam param) ; +} diff --git a/ware-plus-batis/src/main/java/com/plus/batis/service/impl/UserBaseServiceImpl.java b/ware-plus-batis/src/main/java/com/plus/batis/service/impl/UserBaseServiceImpl.java new file mode 100644 index 0000000..2c2af99 --- /dev/null +++ b/ware-plus-batis/src/main/java/com/plus/batis/service/impl/UserBaseServiceImpl.java @@ -0,0 +1,45 @@ +package com.plus.batis.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.plus.batis.entity.QueryParam; +import com.plus.batis.entity.UserBase; +import com.plus.batis.mapper.UserBaseMapper; +import com.plus.batis.service.UserBaseService; +import org.apache.commons.lang.StringUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class UserBaseServiceImpl extends ServiceImpl implements UserBaseService { + + @Resource + private UserBaseMapper userBaseMapper ; + + @Override + public IPage queryPage(QueryParam param) { + + IPage pageData = this.page( + new Page<>(param.getPage(),param.getPageSize()), + new QueryWrapper() + .like(StringUtils.isNotBlank(param.getUserName()),"user_name", param.getUserName()) + .eq(param.getState() != null,"state",param.getState()) + ); + + return pageData ; + } + + @Override + public PageInfo pageHelper(QueryParam param) { + PageHelper.startPage(1,2) ; + List userBaseList = userBaseMapper.selectByParam(param) ; + PageInfo pageInfo = new PageInfo<>(userBaseList) ; + return pageInfo ; + } +} diff --git a/ware-plus-batis/src/main/resources/application-dev.yml b/ware-plus-batis/src/main/resources/application-dev.yml new file mode 100644 index 0000000..5e1190d --- /dev/null +++ b/ware-plus-batis/src/main/resources/application-dev.yml @@ -0,0 +1,29 @@ +spring: + # 数据源配置 + datasource: + type: com.alibaba.druid.pool.DruidDataSource + druid: + driverClassName: com.mysql.jdbc.Driver + url: jdbc:mysql://127.0.0.1:3306/cloud-user-data?useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&useSSL=false + username: root + password: 123 + initial-size: 10 + max-active: 100 + min-idle: 10 + max-wait: 60000 + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 20 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 30000 + max-evictable-idle-time-millis: 60000 + validation-query: SELECT 1 FROM DUAL + # validation-query-timeout: 5000 + test-on-borrow: false + test-on-return: false + test-while-idle: true + connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 + #filters: #配置多个英文逗号分隔(统计,sql注入,log4j过滤) + filters: stat,wall + stat-view-servlet: + enabled: true + url-pattern: /druid/* \ No newline at end of file diff --git a/ware-plus-batis/src/main/resources/application.yml b/ware-plus-batis/src/main/resources/application.yml new file mode 100644 index 0000000..e7e1497 --- /dev/null +++ b/ware-plus-batis/src/main/resources/application.yml @@ -0,0 +1,31 @@ +server: + tomcat: + uri-encoding: UTF-8 + port: 7014 +spring: + profiles: + active: dev + application: + name: ware-source-data + http: + encoding: + charset: UTF-8 + force: true + enabled: true + +mybatis-plus: + mapper-locations: classpath*:/mapper/*.xml + typeAliasesPackage: com.digital.market.*.entity + global-config: + db-config: + id-type: AUTO + field-strategy: NOT_NULL + logic-delete-value: -1 + logic-not-delete-value: 0 + banner: false + configuration: + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + map-underscore-to-camel-case: true + cache-enabled: false + call-setters-on-nulls: true + jdbc-type-for-null: 'null' \ No newline at end of file diff --git a/ware-plus-batis/src/main/resources/mapper/UserBaseMapper.xml b/ware-plus-batis/src/main/resources/mapper/UserBaseMapper.xml new file mode 100644 index 0000000..04feb0c --- /dev/null +++ b/ware-plus-batis/src/main/resources/mapper/UserBaseMapper.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + id, user_name, pass_word, phone, email, create_time, update_time, state + + + + + \ No newline at end of file