Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dm_project
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
姚本章
dm_project
Commits
b56526e3
Commit
b56526e3
authored
Dec 02, 2020
by
zhangc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
commit实体,xml
parent
72eb7018
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
471 additions
and
0 deletions
+471
-0
DatabaseConfig.java
...rc/main/java/com/jz/dm/gateway/config/DatabaseConfig.java
+254
-0
MybatisPlusConfig.java
...main/java/com/jz/dm/gateway/config/MybatisPlusConfig.java
+34
-0
DataGoodsApiDao.xml
...-apigateway/src/main/resources/mapper/DataGoodsApiDao.xml
+28
-0
DataGoodsApiParamsDao.xml
...teway/src/main/resources/mapper/DataGoodsApiParamsDao.xml
+20
-0
Property.java
jz-dm-apigateway/src/test/java/domian/Property.java
+34
-0
SpringTestCase.java
jz-dm-apigateway/src/test/java/domian/SpringTestCase.java
+15
-0
GatewayTest.java
...-apigateway/src/test/java/domian/TestApi/GatewayTest.java
+36
-0
TestApplicationContextInitializer.java
...c/test/java/domian/TestApplicationContextInitializer.java
+50
-0
No files found.
jz-dm-apigateway/src/main/java/com/jz/dm/gateway/config/DatabaseConfig.java
0 → 100644
View file @
b56526e3
package
com
.
jz
.
dm
.
gateway
.
config
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
org.apache.ibatis.session.SqlSessionFactory
;
import
org.mybatis.spring.SqlSessionFactoryBean
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Primary
;
import
org.springframework.core.io.support.PathMatchingResourcePatternResolver
;
import
org.springframework.jdbc.datasource.DataSourceTransactionManager
;
import
javax.sql.DataSource
;
import
java.sql.SQLException
;
/**
* @ProjectName zhaxinle
* @Author: zeroJun
* @Date: 2018/8/16 16:49
* @Description: 主数据源配置类
*/
@Configuration
// 前缀为primary.datasource.druid的配置信息
@ConfigurationProperties
(
prefix
=
"spring.datasource"
)
@MapperScan
(
basePackages
=
DatabaseConfig
.
PACKAGE
,
sqlSessionFactoryRef
=
"sqlSessionFactory"
)
public
class
DatabaseConfig
{
/**
* dao层的包路径
*/
static
final
String
PACKAGE
=
"com.jz.dm.gateway.mapper"
;
/**
* mapper文件的相对路径
*/
private
static
final
String
MAPPER_LOCATION
=
"classpath:/mapper/*.xml"
;
private
String
filters
;
private
String
url
;
private
String
username
;
private
String
password
;
private
String
driverClassName
;
private
int
initialSize
;
private
int
minIdle
;
private
int
maxActive
;
private
long
maxWait
;
private
long
timeBetweenEvictionRunsMillis
;
private
long
minEvictableIdleTimeMillis
;
private
String
validationQuery
;
private
boolean
testWhileIdle
;
private
boolean
testOnBorrow
;
private
boolean
testOnReturn
;
private
boolean
poolPreparedStatements
;
private
int
maxPoolPreparedStatementPerConnectionSize
;
// 主数据源使用@Primary注解进行标识
//@Primary
@Bean
(
name
=
"dataSource"
)
public
DataSource
dataSource
()
throws
SQLException
{
DruidDataSource
druid
=
new
DruidDataSource
();
// 监控统计拦截的filters
druid
.
setFilters
(
filters
);
// 配置基本属性
druid
.
setDriverClassName
(
driverClassName
);
druid
.
setUsername
(
username
);
druid
.
setPassword
(
password
);
druid
.
setUrl
(
url
);
//初始化时建立物理连接的个数
druid
.
setInitialSize
(
initialSize
);
//最大连接池数量
druid
.
setMaxActive
(
maxActive
);
//最小连接池数量
druid
.
setMinIdle
(
minIdle
);
//获取连接时最大等待时间,单位毫秒。
druid
.
setMaxWait
(
maxWait
);
//间隔多久进行一次检测,检测需要关闭的空闲连接
druid
.
setTimeBetweenEvictionRunsMillis
(
timeBetweenEvictionRunsMillis
);
//一个连接在池中最小生存的时间
druid
.
setMinEvictableIdleTimeMillis
(
minEvictableIdleTimeMillis
);
//用来检测连接是否有效的sql
druid
.
setValidationQuery
(
validationQuery
);
//建议配置为true,不影响性能,并且保证安全性。
druid
.
setTestWhileIdle
(
testWhileIdle
);
//申请连接时执行validationQuery检测连接是否有效
druid
.
setTestOnBorrow
(
testOnBorrow
);
druid
.
setTestOnReturn
(
testOnReturn
);
//是否缓存preparedStatement,也就是PSCache,oracle设为true,mysql设为false。分库分表较多推荐设置为false
druid
.
setPoolPreparedStatements
(
poolPreparedStatements
);
// 打开PSCache时,指定每个连接上PSCache的大小
druid
.
setMaxPoolPreparedStatementPerConnectionSize
(
maxPoolPreparedStatementPerConnectionSize
);
return
druid
;
}
// 创建该数据源的事务管理
@Primary
@Bean
(
name
=
"transactionManager"
)
public
DataSourceTransactionManager
transactionManager
()
throws
SQLException
{
return
new
DataSourceTransactionManager
(
dataSource
());
}
// 创建Mybatis的连接会话工厂实例
@Primary
@Bean
(
name
=
"sqlSessionFactory"
)
public
SqlSessionFactory
sqlSessionFactory
(
@Qualifier
(
"dataSource"
)
DataSource
dataSource
)
throws
Exception
{
final
SqlSessionFactoryBean
sessionFactory
=
new
SqlSessionFactoryBean
();
sessionFactory
.
setDataSource
(
dataSource
);
// 设置数据源bean
sessionFactory
.
setMapperLocations
(
new
PathMatchingResourcePatternResolver
()
.
getResources
(
DatabaseConfig
.
MAPPER_LOCATION
));
// 设置mapper文件路径
return
sessionFactory
.
getObject
();
}
public
String
getFilters
()
{
return
filters
;
}
public
void
setFilters
(
String
filters
)
{
this
.
filters
=
filters
;
}
public
String
getUrl
()
{
return
url
;
}
public
void
setUrl
(
String
url
)
{
this
.
url
=
url
;
}
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
String
getPassword
()
{
return
password
;
}
public
void
setPassword
(
String
password
)
{
this
.
password
=
password
;
}
public
String
getDriverClassName
()
{
return
driverClassName
;
}
public
void
setDriverClassName
(
String
driverClassName
)
{
this
.
driverClassName
=
driverClassName
;
}
public
int
getInitialSize
()
{
return
initialSize
;
}
public
void
setInitialSize
(
int
initialSize
)
{
this
.
initialSize
=
initialSize
;
}
public
int
getMinIdle
()
{
return
minIdle
;
}
public
void
setMinIdle
(
int
minIdle
)
{
this
.
minIdle
=
minIdle
;
}
public
int
getMaxActive
()
{
return
maxActive
;
}
public
void
setMaxActive
(
int
maxActive
)
{
this
.
maxActive
=
maxActive
;
}
public
long
getMaxWait
()
{
return
maxWait
;
}
public
void
setMaxWait
(
long
maxWait
)
{
this
.
maxWait
=
maxWait
;
}
public
long
getTimeBetweenEvictionRunsMillis
()
{
return
timeBetweenEvictionRunsMillis
;
}
public
void
setTimeBetweenEvictionRunsMillis
(
long
timeBetweenEvictionRunsMillis
)
{
this
.
timeBetweenEvictionRunsMillis
=
timeBetweenEvictionRunsMillis
;
}
public
long
getMinEvictableIdleTimeMillis
()
{
return
minEvictableIdleTimeMillis
;
}
public
void
setMinEvictableIdleTimeMillis
(
long
minEvictableIdleTimeMillis
)
{
this
.
minEvictableIdleTimeMillis
=
minEvictableIdleTimeMillis
;
}
public
String
getValidationQuery
()
{
return
validationQuery
;
}
public
void
setValidationQuery
(
String
validationQuery
)
{
this
.
validationQuery
=
validationQuery
;
}
public
boolean
isTestWhileIdle
()
{
return
testWhileIdle
;
}
public
void
setTestWhileIdle
(
boolean
testWhileIdle
)
{
this
.
testWhileIdle
=
testWhileIdle
;
}
public
boolean
isTestOnBorrow
()
{
return
testOnBorrow
;
}
public
void
setTestOnBorrow
(
boolean
testOnBorrow
)
{
this
.
testOnBorrow
=
testOnBorrow
;
}
public
boolean
isTestOnReturn
()
{
return
testOnReturn
;
}
public
void
setTestOnReturn
(
boolean
testOnReturn
)
{
this
.
testOnReturn
=
testOnReturn
;
}
public
boolean
isPoolPreparedStatements
()
{
return
poolPreparedStatements
;
}
public
void
setPoolPreparedStatements
(
boolean
poolPreparedStatements
)
{
this
.
poolPreparedStatements
=
poolPreparedStatements
;
}
public
int
getMaxPoolPreparedStatementPerConnectionSize
()
{
return
maxPoolPreparedStatementPerConnectionSize
;
}
public
void
setMaxPoolPreparedStatementPerConnectionSize
(
int
maxPoolPreparedStatementPerConnectionSize
)
{
this
.
maxPoolPreparedStatementPerConnectionSize
=
maxPoolPreparedStatementPerConnectionSize
;
}
}
\ No newline at end of file
jz-dm-apigateway/src/main/java/com/jz/dm/gateway/config/MybatisPlusConfig.java
0 → 100644
View file @
b56526e3
package
com
.
jz
.
dm
.
gateway
.
config
;
import
com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.optimize.JsqlParserCountOptimize
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
/**
* @ClassName: MybatisPlusConfig
* @Author Bellamy
* @Date 2020/11/27
* @Version 1.0
*/
@EnableTransactionManagement
@Configuration
@MapperScan
(
"com.jz.dm.gateway.mapper"
)
public
class
MybatisPlusConfig
{
@Bean
public
PaginationInterceptor
paginationInterceptor
()
{
PaginationInterceptor
paginationInterceptor
=
new
PaginationInterceptor
();
// 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求 默认false
// paginationInterceptor.setOverflow(false);
// 设置最大单页限制数量,默认 500 条,-1 不受限制
paginationInterceptor
.
setLimit
(
500
);
// 开启 count 的 join 优化,只针对部分 left join
paginationInterceptor
.
setCountSqlParser
(
new
JsqlParserCountOptimize
(
true
));
return
paginationInterceptor
;
}
}
jz-dm-apigateway/src/main/resources/mapper/DataGoodsApiDao.xml
0 → 100644
View file @
b56526e3
<?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.jz.dm.gateway.mapper.DataGoodsApiDao"
>
<resultMap
type=
"com.jz.common.entity.DataGoodsApi"
id=
"TDataGoodsApiMap"
>
<result
property=
"goodsApi"
column=
"goods_api"
jdbcType=
"INTEGER"
/>
<result
property=
"dataGoodsId"
column=
"data_goods_id"
jdbcType=
"INTEGER"
/>
<result
property=
"apiName"
column=
"api_name"
jdbcType=
"VARCHAR"
/>
<result
property=
"requestType"
column=
"request_type"
jdbcType=
"VARCHAR"
/>
<result
property=
"apiUrl"
column=
"api_url"
jdbcType=
"VARCHAR"
/>
<result
property=
"apiMethod"
column=
"api_method"
jdbcType=
"VARCHAR"
/>
<result
property=
"apiProtocl"
column=
"api_protocl"
jdbcType=
"VARCHAR"
/>
<result
property=
"returnDataExample"
column=
"return_data_example"
jdbcType=
"VARCHAR"
/>
<result
property=
"requestExample"
column=
"request_example"
jdbcType=
"VARCHAR"
/>
<result
property=
"returnType"
column=
"return_type"
jdbcType=
"VARCHAR"
/>
<result
property=
"apiKey"
column=
"api_key"
jdbcType=
"VARCHAR"
/>
<result
property=
"creTime"
column=
"cre_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"crePerson"
column=
"cre_person"
jdbcType=
"VARCHAR"
/>
<result
property=
"uptPerson"
column=
"upt_person"
jdbcType=
"VARCHAR"
/>
<result
property=
"uptTime"
column=
"upt_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"delFlag"
column=
"del_flag"
jdbcType=
"VARCHAR"
/>
</resultMap>
<select
id=
"findAll"
resultType=
"com.jz.common.entity.DataGoodsApi"
>
select * from t_data_goods_api
</select>
</mapper>
\ No newline at end of file
jz-dm-apigateway/src/main/resources/mapper/DataGoodsApiParamsDao.xml
0 → 100644
View file @
b56526e3
<?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.jz.dm.gateway.mapper.DataGoodsApiParamsDao"
>
<resultMap
type=
"com.jz.common.entity.DataGoodsApiParams"
id=
"TDataGoodsApiParamsMap"
>
<result
property=
"apiParamsId"
column=
"api_params_id"
jdbcType=
"INTEGER"
/>
<result
property=
"goodsApi"
column=
"goods_api"
jdbcType=
"INTEGER"
/>
<result
property=
"paramsDiff"
column=
"params_diff"
jdbcType=
"VARCHAR"
/>
<result
property=
"paramsName"
column=
"params_name"
jdbcType=
"VARCHAR"
/>
<result
property=
"paramsType"
column=
"params_type"
jdbcType=
"VARCHAR"
/>
<result
property=
"paramsDesc"
column=
"params_desc"
jdbcType=
"VARCHAR"
/>
<result
property=
"defaultValue"
column=
"default_value"
jdbcType=
"VARCHAR"
/>
<result
property=
"remark"
column=
"remark"
jdbcType=
"VARCHAR"
/>
<result
property=
"ifRequird"
column=
"if_requird"
jdbcType=
"VARCHAR"
/>
<result
property=
"delFlag"
column=
"del_flag"
jdbcType=
"VARCHAR"
/>
<result
property=
"creTime"
column=
"cre_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"uptTime"
column=
"upt_time"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
</mapper>
\ No newline at end of file
jz-dm-apigateway/src/test/java/domian/Property.java
0 → 100644
View file @
b56526e3
/**
* Copyright (c) 2011-2014 All Rights Reserved.
*/
package
domian
;
/**
*
* @author Admin
* @version $Id: Property.java 2014年8月27日 下午6:28:46 $
*/
public
class
Property
{
private
static
java
.
util
.
Properties
property
=
null
;
private
Property
()
{
}
public
static
void
init
(
java
.
util
.
Properties
props
)
{
property
=
props
;
}
public
static
void
setProperty
(
String
key
,
Object
value
)
{
property
.
put
(
key
,
value
);
}
public
static
String
getProperty
(
String
key
)
{
return
property
.
getProperty
(
key
);
}
public
static
String
getProperty
(
String
key
,
String
defaultValue
)
{
return
property
.
getProperty
(
key
,
defaultValue
);
}
}
jz-dm-apigateway/src/test/java/domian/SpringTestCase.java
0 → 100644
View file @
b56526e3
package
domian
;
import
com.jz.dm.gateway.ApiGatewayApplication
;
import
org.junit.runner.RunWith
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.ContextConfiguration
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
@RunWith
(
SpringJUnit4ClassRunner
.
class
)
@SpringBootTest
(
classes
=
ApiGatewayApplication
.
class
)
// 指定spring-boot的启动类
@ContextConfiguration
(
initializers
=
{
TestApplicationContextInitializer
.
class
})
public
abstract
class
SpringTestCase
{
}
jz-dm-apigateway/src/test/java/domian/TestApi/GatewayTest.java
0 → 100644
View file @
b56526e3
package
domian
.
TestApi
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.jz.common.entity.DataGoodsApi
;
import
com.jz.dm.gateway.mapper.DataGoodsApiDao
;
import
domian.SpringTestCase
;
import
org.junit.Test
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
java.util.Collections
;
import
java.util.List
;
/**
* @author ZC
* @PACKAGE_NAME: domian.TestApi
* @PROJECT_NAME: jz-dm-parent
* @NAME: GatewayTest
* @USER: key
* @DATE: 2020-12-2/11:53
* @DAY_NAME_SHORT: 周三
* @Description:
**/
public
class
GatewayTest
extends
SpringTestCase
{
@Autowired
private
DataGoodsApiDao
dataGoodsApiDao
;
@Test
public
void
Test
(){
//List<DataGoodsApi> list= dataGoodsApiDao.findAll();
// System.out.println(list);
QueryWrapper
<
DataGoodsApi
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
eq
(
"goods_api"
,
1
);
DataGoodsApi
dataGoodsApi
=
dataGoodsApiDao
.
selectOne
(
wrapper
);
}
}
jz-dm-apigateway/src/test/java/domian/TestApplicationContextInitializer.java
0 → 100644
View file @
b56526e3
package
domian
;
import
org.springframework.context.ApplicationContextInitializer
;
import
org.springframework.context.support.GenericApplicationContext
;
import
org.springframework.core.io.Resource
;
import
org.springframework.core.io.support.PathMatchingResourcePatternResolver
;
import
org.springframework.core.io.support.PropertiesLoaderUtils
;
import
org.springframework.core.io.support.ResourcePatternResolver
;
import
org.springframework.util.CollectionUtils
;
import
java.io.IOException
;
import
java.util.Properties
;
/**
*
*
* @author zengfan
* @version $Id: TestApplicationContextInitializer.java 2017年6月12日 下午9:30:46 $
*/
public
class
TestApplicationContextInitializer
implements
ApplicationContextInitializer
<
GenericApplicationContext
>
{
private
Properties
props
=
null
;
/**
* @see org.springframework.context.ApplicationContextInitializer#initialize(org.springframework.context.ConfigurableApplicationContext)
*/
@Override
public
void
initialize
(
GenericApplicationContext
context
)
{
if
(
null
!=
props
)
{
return
;
}
props
=
new
Properties
();
ResourcePatternResolver
resolver
=
new
PathMatchingResourcePatternResolver
();
Resource
[]
resources
=
null
;
try
{
resources
=
resolver
.
getResources
(
"classpath:properties/*.properties"
);
for
(
Resource
res
:
resources
)
{
Properties
properties
=
PropertiesLoaderUtils
.
loadProperties
(
res
);
CollectionUtils
.
mergePropertiesIntoMap
(
properties
,
props
);
}
Property
.
init
(
props
);
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment