Browse Source

💩 spring-boot-demo-orm-beetlsql 仍然存在问题,beetl-sql-starter 整合失败

pull/1/head
Yangkai.Shen 5 years ago
parent
commit
f6e2fe5335
13 changed files with 449 additions and 0 deletions
  1. +3
    -0
      spring-boot-demo-orm-beetlsql/README.md
  2. +28
    -0
      spring-boot-demo-orm-beetlsql/pom.xml
  3. +13
    -0
      spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/SpringBootDemoOrmBeetlsqlApplication.java
  4. +35
    -0
      spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/config/BeetlConfig.java
  5. +23
    -0
      spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/dao/UserDao.java
  6. +80
    -0
      spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/entity/User.java
  7. +66
    -0
      spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/service/UserService.java
  8. +99
    -0
      spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/service/impl/UserServiceImpl.java
  9. +0
    -0
      spring-boot-demo-orm-beetlsql/src/main/resources/application.properties
  10. +31
    -0
      spring-boot-demo-orm-beetlsql/src/main/resources/application.yml
  11. +2
    -0
      spring-boot-demo-orm-beetlsql/src/main/resources/db/data.sql
  12. +13
    -0
      spring-boot-demo-orm-beetlsql/src/main/resources/db/schema.sql
  13. +56
    -0
      spring-boot-demo-orm-beetlsql/src/test/java/com/xkcoding/orm/beetlsql/service/impl/UserServiceImplTest.java

+ 3
- 0
spring-boot-demo-orm-beetlsql/README.md View File

@@ -0,0 +1,3 @@
# spring-boot-demo-orm-beetlsql

> 此 demo 仍然存在问题

+ 28
- 0
spring-boot-demo-orm-beetlsql/pom.xml View File

@@ -20,6 +20,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<ibeetl.version>1.1.68.RELEASE</ibeetl.version>
</properties>

<dependencies>
@@ -28,11 +29,38 @@
<artifactId>spring-boot-starter</artifactId>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>

<dependency>
<groupId>com.ibeetl</groupId>
<artifactId>beetl-framework-starter</artifactId>
<version>${ibeetl.version}</version>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>

<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
</dependency>

<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>

<build>


+ 13
- 0
spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/SpringBootDemoOrmBeetlsqlApplication.java View File

@@ -3,6 +3,19 @@ package com.xkcoding.orm.beetlsql;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
* <p>
* 启动类
* </p>
*
* @package: com.xkcoding.orm.beetlsql
* @description: 启动类
* @author: yangkai.shen
* @date: Created in 2018/11/14 15:47
* @copyright: Copyright (c) 2018
* @version: V1.0
* @modified: yangkai.shen
*/
@SpringBootApplication
public class SpringBootDemoOrmBeetlsqlApplication {



+ 35
- 0
spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/config/BeetlConfig.java View File

@@ -0,0 +1,35 @@
package com.xkcoding.orm.beetlsql.config;

import com.zaxxer.hikari.HikariDataSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;

import javax.sql.DataSource;

/**
* <p>
* Beetl数据源配置
* </p>
*
* @package: com.xkcoding.orm.beetlsql.config
* @description: Beetl数据源配置
* @author: yangkai.shen
* @date: Created in 2018/11/14 17:15
* @copyright: Copyright (c) 2018
* @version: V1.0
* @modified: yangkai.shen
*/
@Configuration
public class BeetlConfig {

@Bean(name = "datasource")
public DataSource getDataSource(Environment env){
HikariDataSource dataSource = new HikariDataSource();
dataSource.setDriverClassName(env.getProperty("spring.datasource.driver-class-name"));
dataSource.setJdbcUrl(env.getProperty("spring.datasource.url"));
dataSource.setUsername(env.getProperty("spring.datasource.username"));
dataSource.setPassword(env.getProperty("spring.datasource.password"));
return dataSource;
}
}

+ 23
- 0
spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/dao/UserDao.java View File

@@ -0,0 +1,23 @@
package com.xkcoding.orm.beetlsql.dao;

import com.xkcoding.orm.beetlsql.entity.User;
import org.beetl.sql.core.mapper.BaseMapper;
import org.springframework.stereotype.Component;

/**
* <p>
* UserDao
* </p>
*
* @package: com.xkcoding.orm.beetlsql.dao
* @description: UserDao
* @author: yangkai.shen
* @date: Created in 2018/11/14 16:18
* @copyright: Copyright (c) 2018
* @version: V1.0
* @modified: yangkai.shen
*/
@Component
public interface UserDao extends BaseMapper<User> {

}

+ 80
- 0
spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/entity/User.java View File

@@ -0,0 +1,80 @@
package com.xkcoding.orm.beetlsql.entity;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
* <p>
* 用户实体类
* </p>
*
* @package: com.xkcoding.orm.beetlsql.entity
* @description: 用户实体类
* @author: yangkai.shen
* @date: Created in 2018/11/14 16:06
* @copyright: Copyright (c) 2018
* @version: V1.0
* @modified: yangkai.shen
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class User implements Serializable {
private static final long serialVersionUID = -1840831686851699943L;

/**
* 主键
*/
private Long id;

/**
* 用户名
*/
private String name;

/**
* 加密后的密码
*/
private String password;

/**
* 加密使用的盐
*/
private String salt;

/**
* 邮箱
*/
private String email;

/**
* 手机号码
*/
private String phoneNumber;

/**
* 状态,-1:逻辑删除,0:禁用,1:启用
*/
private Integer status;

/**
* 创建时间
*/
private Date createTime;

/**
* 上次登录时间
*/
private Date lastLoginTime;

/**
* 上次更新时间
*/
private Date lastUpdateTime;
}

+ 66
- 0
spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/service/UserService.java View File

@@ -0,0 +1,66 @@
package com.xkcoding.orm.beetlsql.service;

import com.xkcoding.orm.beetlsql.entity.User;

import java.util.List;

/**
* <p>
* User Service
* </p>
*
* @package: com.xkcoding.orm.beetlsql.service
* @description: User Service
* @author: yangkai.shen
* @date: Created in 2018/11/14 16:18
* @copyright: Copyright (c) 2018
* @version: V1.0
* @modified: yangkai.shen
*/
public interface UserService {
/**
* 新增用户
*
* @param user 用户
*/
void saveUser(User user);

/**
* 根据主键删除用户
*
* @param id 主键
*/
void deleteUser(Long id);

/**
* 更新用户
*
* @param user 用户
* @return 更新后的用户
*/
User updateUser(User user);

/**
* 查询单个用户
*
* @param id 主键id
* @return 用户信息
*/
User getUser(Long id);

/**
* 查询用户列表
*
* @return 用户列表
*/
List<User> getUserList();

/**
* 分页查询
*
* @param currentPage 当前页
* @param pageSize 每页条数
* @return 分页用户列表
*/
List<User> getUserByPage(Integer currentPage, Integer pageSize);
}

+ 99
- 0
spring-boot-demo-orm-beetlsql/src/main/java/com/xkcoding/orm/beetlsql/service/impl/UserServiceImpl.java View File

@@ -0,0 +1,99 @@
package com.xkcoding.orm.beetlsql.service.impl;

import com.xkcoding.orm.beetlsql.dao.UserDao;
import com.xkcoding.orm.beetlsql.entity.User;
import com.xkcoding.orm.beetlsql.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
* <p>
* User Service
* </p>
*
* @package: com.xkcoding.orm.beetlsql.service.impl
* @description: User Service
* @author: yangkai.shen
* @date: Created in 2018/11/14 16:28
* @copyright: Copyright (c) 2018
* @version: V1.0
* @modified: yangkai.shen
*/
@Service
@Slf4j
public class UserServiceImpl implements UserService {

private final UserDao userDao;

@Autowired
public UserServiceImpl(UserDao userDao) {
this.userDao = userDao;
}

/**
* 新增用户
*
* @param user 用户
*/
@Override
public void saveUser(User user) {

}

/**
* 根据主键删除用户
*
* @param id 主键
*/
@Override
public void deleteUser(Long id) {

}

/**
* 更新用户
*
* @param user 用户
* @return 更新后的用户
*/
@Override
public User updateUser(User user) {
return null;
}

/**
* 查询单个用户
*
* @param id 主键id
* @return 用户信息
*/
@Override
public User getUser(Long id) {
return userDao.single(id);
}

/**
* 查询用户列表
*
* @return 用户列表
*/
@Override
public List<User> getUserList() {
return null;
}

/**
* 分页查询
*
* @param currentPage 当前页
* @param pageSize 每页条数
* @return 分页用户列表
*/
@Override
public List<User> getUserByPage(Integer currentPage, Integer pageSize) {
return null;
}
}

+ 0
- 0
spring-boot-demo-orm-beetlsql/src/main/resources/application.properties View File


+ 31
- 0
spring-boot-demo-orm-beetlsql/src/main/resources/application.yml View File

@@ -0,0 +1,31 @@
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/spring-boot-demo?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&failOverReadOnly=false&serverTimezone=GMT%2B8
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
initialization-mode: always
continue-on-error: true
schema:
- "classpath:db/schema.sql"
data:
- "classpath:db/data.sql"
hikari:
minimum-idle: 5
connection-test-query: SELECT 1 FROM DUAL
maximum-pool-size: 20
auto-commit: true
idle-timeout: 30000
pool-name: SpringBootDemoHikariCP
max-lifetime: 60000
connection-timeout: 30000
logging:
level:
com.xkcoding: debug
com.xkcoding.orm.beetlsql: trace
beetl:
enabled: false
beetlsql:
daoSuffix: Dao
basePackage: com.xkcoding.orm.beetlsql.dao

+ 2
- 0
spring-boot-demo-orm-beetlsql/src/main/resources/db/data.sql View File

@@ -0,0 +1,2 @@
INSERT INTO `orm_user`(`id`,`name`,`password`,`salt`,`email`,`phone_number`) VALUES (1, 'user_1', 'ff342e862e7c3285cdc07e56d6b8973b', '412365a109674b2dbb1981ed561a4c70', 'user1@xkcoding.com', '17300000001');
INSERT INTO `orm_user`(`id`,`name`,`password`,`salt`,`email`,`phone_number`) VALUES (2, 'user_2', '6c6bf02c8d5d3d128f34b1700cb1e32c', 'fcbdd0e8a9404a5585ea4e01d0e4d7a0', 'user2@xkcoding.com', '17300000002');

+ 13
- 0
spring-boot-demo-orm-beetlsql/src/main/resources/db/schema.sql View File

@@ -0,0 +1,13 @@
DROP TABLE IF EXISTS `orm_user`;
CREATE TABLE `orm_user` (
`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '主键',
`name` VARCHAR(32) NOT NULL UNIQUE COMMENT '用户名',
`password` VARCHAR(32) NOT NULL COMMENT '加密后的密码',
`salt` VARCHAR(32) NOT NULL COMMENT '加密使用的盐',
`email` VARCHAR(32) NOT NULL UNIQUE COMMENT '邮箱',
`phone_number` VARCHAR(15) NOT NULL UNIQUE COMMENT '手机号码',
`status` INT(2) NOT NULL DEFAULT 1 COMMENT '状态,-1:逻辑删除,0:禁用,1:启用',
`create_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '创建时间',
`last_login_time` DATETIME DEFAULT NULL COMMENT '上次登录时间',
`last_update_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '上次更新时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Spring Boot Demo Orm 系列示例表';

+ 56
- 0
spring-boot-demo-orm-beetlsql/src/test/java/com/xkcoding/orm/beetlsql/service/impl/UserServiceImplTest.java View File

@@ -0,0 +1,56 @@
package com.xkcoding.orm.beetlsql.service.impl;

import com.xkcoding.orm.beetlsql.SpringBootDemoOrmBeetlsqlApplicationTests;
import com.xkcoding.orm.beetlsql.entity.User;
import com.xkcoding.orm.beetlsql.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.beetl.sql.core.SQLManager;
import org.junit.Assert;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;

/**
* <p>
* User Service测试
* </p>
*
* @package: com.xkcoding.orm.beetlsql.service.impl
* @description: User Service测试
* @author: yangkai.shen
* @date: Created in 2018/11/14 16:30
* @copyright: Copyright (c) 2018
* @version: V1.0
* @modified: yangkai.shen
*/
@Slf4j
public class UserServiceImplTest extends SpringBootDemoOrmBeetlsqlApplicationTests {
@Autowired
private UserService userService;

@Test
public void saveUser() {
}

@Test
public void deleteUser() {
}

@Test
public void updateUser() {
}

@Test
public void getUser() {
User user = userService.getUser(1L);
Assert.assertNotNull(user);
log.debug("【user】= {}", user);
}

@Test
public void getUserList() {
}

@Test
public void getUserByPage() {
}
}

Loading…
Cancel
Save