Skip to content

Commit

Permalink
feat: samples update
Browse files Browse the repository at this point in the history
  • Loading branch information
huayanYu committed Aug 1, 2020
1 parent f7c6baa commit 2875740
Show file tree
Hide file tree
Showing 16 changed files with 128 additions and 133 deletions.
81 changes: 42 additions & 39 deletions samples/druid-sample/src/main/resources/application.yml
Expand Up @@ -5,43 +5,49 @@ spring:
enabled: true
dynamic:
p6spy: false
druid: #以下是全局默认值,可以全局更改
filters: stat
# 配置Druid全局默认值
druid:
initial-size: 5
max-active: 8
min-idle: 3
max-wait: 1000
validation-query: 'select 1'
# initial-size:
# max-active:
# min-idle:
# max-wait: 1000
# time-between-eviction-runs-millis:
# time-between-log-stats-millis:
# stat-sqlmax-size:
# min-evictable-idle-time-millis:
# max-evictable-idle-time-millis:
# test-while-idle:
# test-on-borrow:
# test-on-return:
# validation-query-timeout:
# use-global-datasource-stat:
# async-init:
# clear-filters-enable:
# reset-stat-enable:
# not-full-timeout-retry-count:
# max-wait-thread-count:
# fail-fast:
# phyTimeout-millis:
# keep-alive:
# pool-prepared-statements:
# init-variants:
# init-global-variants:
# use-unfair-lock:
# kill-when-socket-read-timeout:
# connection-properties:
# max-pool-prepared-statement-per-connection-size:
# init-connection-sqls:
# share-prepared-statements:
# connection-errorretry-attempts:
# break-after-acquire-failure:
# filters: stat,wall # 注意这个值和druid原生不一致,默认启动了stat,wall
# 以下是全局默认值,可以全局更改
# initial-size:
# max-active:
# min-idle:
# max-wait: 1000
# validation-query: 'select 1'
# time-between-eviction-runs-millis:
# time-between-log-stats-millis:
# stat-sqlmax-size:
# min-evictable-idle-time-millis:
# max-evictable-idle-time-millis:
# test-while-idle:
# test-on-borrow:
# test-on-return:
# validation-query-timeout:
# use-global-datasource-stat:
# async-init:
# clear-filters-enable:
# reset-stat-enable:
# not-full-timeout-retry-count:
# max-wait-thread-count:
# fail-fast:
# phyTimeout-millis:
# keep-alive:
# pool-prepared-statements:
# init-variants:
# init-global-variants:
# use-unfair-lock:
# kill-when-socket-read-timeout:
# connection-properties:
# max-pool-prepared-statement-per-connection-size:
# init-connection-sqls:
# share-prepared-statements:
# connection-errorretry-attempts:
# break-after-acquire-failure:
# filters: stat,wall # 注意这个值和druid原生不一致,默认启动了stat,wall
datasource:
master:
username: sa
Expand All @@ -66,9 +72,6 @@ spring:
password: "123456"
url: jdbc:h2:mem:test
driver-class-name: org.h2.Driver
# druid:
# wall:
# multi-statement-allow: true
logging:
level:
com.baomidou: debug
Expand Up @@ -10,14 +10,14 @@
*/
@Configuration
public class CustomAutoProxyCreator {

/**
* 这里为了测试多个后置处理器的情况, 实际项目中不用加这个配置
* @return
* 这里为了测试多个后置处理器的情况, 实际项目中不要加这个配置
*/
// @Bean
// public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() {
// DefaultAdvisorAutoProxyCreator proxyCreator = new DefaultAdvisorAutoProxyCreator();
// proxyCreator.setProxyTargetClass(true);
// return proxyCreator;
// }
@Bean
public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() {
DefaultAdvisorAutoProxyCreator proxyCreator = new DefaultAdvisorAutoProxyCreator();
proxyCreator.setProxyTargetClass(true);
return proxyCreator;
}
}
@@ -1,14 +1,12 @@
package com.baomidou.samples.mybatisplus3.controller;


import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.samples.mybatisplus3.entity.User;
import com.baomidou.samples.mybatisplus3.service.UserService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.List;
import java.util.Random;

Expand All @@ -21,28 +19,20 @@ public class UserController {

@Autowired
private UserService userService;

@Resource(name = "userSlaveServiceImpl")
UserService userSlaveService;

@GetMapping("lambda/master/getOne")
public User lambdaMasterGetOne() {
return userService.getOne(Wrappers.<User>lambdaQuery().eq(User::getId, 1));

@GetMapping("/lambda")
public List<User> lambdaUsers() {
return userService.lambdaQuery().list();
}

@GetMapping("lambda/slave/getOne")
public User lambdaSlaveGetOne() {
return userSlaveService.getOne(Wrappers.<User>lambdaQuery().eq(User::getId, 1));
}

@GetMapping("master")
public List<User> users1() {
@GetMapping
public List<User> users() {
return userService.selectUsers();
}

@GetMapping("slave")
public List<User> users2() {
return userSlaveService.selectUsers();
@GetMapping("/slave")
public List<User> slaveUsers() {
return userService.selectSlaveUsers();
}

@PostMapping
Expand All @@ -54,9 +44,10 @@ public User addUser() {
return user;
}

@DeleteMapping("{id}")
@DeleteMapping("/{id}")
public String deleteUser(@PathVariable Long id) {
userService.deleteUserById(id);
return "成功删除用户" + id;
}

}
Expand Up @@ -13,4 +13,6 @@ public interface UserService extends IService<User> {
void addUser(User user);

void deleteUserById(Long id);

List<User> selectSlaveUsers();
}
@@ -1,28 +1,22 @@
package com.baomidou.samples.mybatisplus3.service.impl;


import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.baomidou.samples.mybatisplus3.entity.User;
import com.baomidou.samples.mybatisplus3.mapper.UserMapper;
import com.baomidou.samples.mybatisplus3.mapper.UserSlaveMapper;
import com.baomidou.samples.mybatisplus3.service.UserService;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

@DS("master")
@Primary
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {

@Resource
private UserSlaveMapper slaveMapper;

/**
* mapper 是嵌套代理.
* jdkProxyA->jdkProxyB->InvocationHandler
*
* @return
*/
@Override
public List<User> selectUsers() {
return baseMapper.selectList(null);
Expand All @@ -37,4 +31,9 @@ public void addUser(User user) {
public void deleteUserById(Long id) {
baseMapper.deleteById(id);
}

@Override
public List<User> selectSlaveUsers() {
return slaveMapper.selectList(null);
}
}

This file was deleted.

2 changes: 1 addition & 1 deletion samples/pom.xml
Expand Up @@ -74,7 +74,7 @@
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.1.1</version>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
Expand Down
Expand Up @@ -6,7 +6,7 @@
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)
@MapperScan("com.baomidou.samples.seata.dao")
@MapperScan("com.baomidou.samples.seata.mapper")
public class SeataApplication {

public static void main(String[] args) {
Expand Down
@@ -0,0 +1,25 @@
package com.baomidou.samples.seata;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerAutoConfig {

@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(ApiInfo.DEFAULT)
.select()
.apis(RequestHandlerSelectors.basePackage("com.baomidou.samples.seata.controller"))
.paths(PathSelectors.any())
.build();
}
}
@@ -1,10 +1,10 @@
package com.baomidou.samples.seata.dao;
package com.baomidou.samples.seata.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.samples.seata.entity.Account;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface AccountDao extends BaseMapper<Account> {
public interface AccountMapper extends BaseMapper<Account> {

}
@@ -1,10 +1,10 @@
package com.baomidou.samples.seata.dao;
package com.baomidou.samples.seata.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.samples.seata.entity.Order;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface OrderDao extends BaseMapper<Order> {
public interface OrderMapper extends BaseMapper<Order> {

}
@@ -1,10 +1,10 @@
package com.baomidou.samples.seata.dao;
package com.baomidou.samples.seata.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.samples.seata.entity.Product;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface ProductDao extends BaseMapper<Product> {
public interface ProductMapper extends BaseMapper<Product> {

}
@@ -1,7 +1,7 @@
package com.baomidou.samples.seata.service.impl;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.samples.seata.dao.AccountDao;
import com.baomidou.samples.seata.mapper.AccountMapper;
import com.baomidou.samples.seata.entity.Account;
import com.baomidou.samples.seata.service.AccountService;
import io.seata.core.context.RootContext;
Expand All @@ -17,7 +17,7 @@
public class AccountServiceImpl implements AccountService {

@Resource
private AccountDao accountDao;
private AccountMapper accountMapper;

/**
* 事务传播特性设置为 REQUIRES_NEW 开启新的事务
Expand All @@ -29,7 +29,7 @@ public void reduceBalance(Long userId, Double price) {
log.info("=============ACCOUNT START=================");
log.info("当前 XID: {}", RootContext.getXID());

Account account = accountDao.selectById(userId);
Account account = accountMapper.selectById(userId);
Double balance = account.getBalance();
log.info("下单用户{}余额为 {},商品总价为{}", userId, balance, price);

Expand All @@ -40,7 +40,7 @@ public void reduceBalance(Long userId, Double price) {
log.info("开始扣减用户 {} 余额", userId);
double currentBalance = account.getBalance() - price;
account.setBalance(currentBalance);
accountDao.updateById(account);
accountMapper.updateById(account);
log.info("扣减用户 {} 余额成功,扣减后用户账户余额为{}", userId, currentBalance);
log.info("=============ACCOUNT END=================");
}
Expand Down

0 comments on commit 2875740

Please sign in to comment.