Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
guns-vip
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
chenjunxiong
guns-vip
Commits
8f53b91a
Commit
8f53b91a
authored
Apr 27, 2017
by
fsn
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
数据源事务失效的bug修改
parent
60b3e185
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
44 additions
and
76 deletions
+44
-76
src/main/java/project/config/datasource/DataSourceConfig.java
+32
-15
src/main/java/project/config/datasource/DataSourceConfigTemplate.java
+8
-29
src/main/resources/dev/jdbc.properties
+2
-16
src/main/resources/produce/jdbc.properties
+2
-16
No files found.
src/main/java/project/config/datasource/DataSourceConfig.java
View file @
8f53b91a
package
project
.
config
.
datasource
;
package
project
.
config
.
datasource
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
com.baomidou.mybatisplus.entity.GlobalConfiguration
;
import
com.baomidou.mybatisplus.entity.GlobalConfiguration
;
import
com.baomidou.mybatisplus.plugins.PaginationInterceptor
;
import
com.baomidou.mybatisplus.plugins.PaginationInterceptor
;
import
com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean
;
import
com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean
;
import
com.stylefeng.guns.core.util.ResKit
;
import
com.stylefeng.guns.core.util.ResKit
;
import
org.apache.ibatis.plugin.Interceptor
;
import
org.apache.ibatis.plugin.Interceptor
;
import
org.mybatis.spring.mapper.MapperScannerConfigurer
;
import
org.mybatis.spring.mapper.MapperScannerConfigurer
;
import
org.springframework.context.EnvironmentAware
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Import
;
import
org.springframework.context.annotation.PropertySource
;
import
org.springframework.core.env.Environment
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.core.io.Resource
;
import
org.springframework.core.io.Resource
;
import
org.springframework.jdbc.datasource.DataSourceTransactionManager
;
import
org.springframework.jdbc.datasource.DataSourceTransactionManager
;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
import
javax.sql.DataSource
;
import
javax.sql.DataSource
;
...
@@ -22,8 +26,11 @@ import javax.sql.DataSource;
...
@@ -22,8 +26,11 @@ import javax.sql.DataSource;
* @date 2016年11月12日 下午4:55:09
* @date 2016年11月12日 下午4:55:09
*/
*/
@Configuration
@Configuration
@Import
(
value
=
DruidPoolConfig
.
class
)
@EnableTransactionManagement
public
class
DataSourceConfig
{
@PropertySource
(
"classpath:jdbc.properties"
)
public
class
DataSourceConfig
implements
EnvironmentAware
{
private
Environment
em
;
/**
/**
* 扫描所有mybatis的接口
* 扫描所有mybatis的接口
...
@@ -75,18 +82,6 @@ public class DataSourceConfig {
...
@@ -75,18 +82,6 @@ public class DataSourceConfig {
* UUID->`3`("全局唯一ID")
* UUID->`3`("全局唯一ID")
*/
*/
globalConfig
.
setIdType
(
1
);
globalConfig
.
setIdType
(
1
);
/**
* MYSQL->`mysql`
* ORACLE->`oracle`
* DB2->`db2`
* H2->`h2`
* HSQL->`hsql`
* SQLITE->`sqlite`
* POSTGRE->`postgresql`
* SQLSERVER2005->`sqlserver2005`
* SQLSERVER->`sqlserver`
*/
globalConfig
.
setDbType
(
"mysql"
);
globalConfig
.
setDbType
(
"mysql"
);
/**
/**
...
@@ -109,4 +104,26 @@ public class DataSourceConfig {
...
@@ -109,4 +104,26 @@ public class DataSourceConfig {
return
manager
;
return
manager
;
}
}
/**
* 第三方数据库连接池的配置
*
* @author fengshuonan
* @Date 2017/4/27 17:24
*/
@Bean
(
initMethod
=
"init"
)
public
DruidDataSource
dataSource
()
{
DruidDataSource
dataSource
=
new
DruidDataSource
();
dataSource
.
setUrl
(
em
.
getProperty
(
"jdbc.url"
).
trim
());
dataSource
.
setUsername
(
em
.
getProperty
(
"jdbc.username"
).
trim
());
dataSource
.
setPassword
(
em
.
getProperty
(
"jdbc.password"
).
trim
());
DataSourceConfigTemplate
.
config
(
dataSource
);
return
dataSource
;
}
@Override
public
void
setEnvironment
(
Environment
environment
)
{
this
.
em
=
environment
;
}
}
}
src/main/java/project/config/datasource/D
ruidPoolConfig
.java
→
src/main/java/project/config/datasource/D
ataSourceConfigTemplate
.java
View file @
8f53b91a
package
project
.
config
.
datasource
;
package
project
.
config
.
datasource
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
org.springframework.context.EnvironmentAware
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.PropertySource
;
import
org.springframework.core.env.Environment
;
import
java.sql.SQLException
;
import
java.sql.SQLException
;
/**
/**
*
第三方数据库连接池的配置
*
数据源配置模板
*
*
* @author fengshuonan
* @author fengshuonan
* @date 2016年11月12日 下午4:59:30
* @date 2016年11月12日 下午4:59:30
*/
*/
@Configuration
public
class
DataSourceConfigTemplate
{
@PropertySource
(
"classpath:jdbc.properties"
)
public
class
DruidPoolConfig
implements
EnvironmentAware
{
p
rivate
Environment
em
;
p
ublic
static
void
config
(
DruidDataSource
dataSource
)
{
@Bean
(
initMethod
=
"init"
)
dataSource
.
setDriverClassName
(
"com.mysql.jdbc.Driver"
);
public
DruidDataSource
dataSource
()
{
dataSource
.
setInitialSize
(
2
);
//定义初始连接数
dataSource
.
setMinIdle
(
1
);
//最小空闲
DruidDataSource
dataSource
=
new
DruidDataSource
();
dataSource
.
setMaxActive
(
20
);
//定义最大连接数
dataSource
.
setDriverClassName
(
em
.
getProperty
(
"jdbc.driver"
).
trim
());
dataSource
.
setMaxWait
(
60000
);
//最长等待时间
dataSource
.
setInitialSize
(
em
.
getProperty
(
"jdbc.initialSize"
,
Integer
.
class
));
dataSource
.
setMinIdle
(
em
.
getProperty
(
"jdbc.minIdle"
,
Integer
.
class
));
dataSource
.
setMaxActive
(
em
.
getProperty
(
"jdbc.maxActive"
,
Integer
.
class
));
dataSource
.
setMaxWait
(
em
.
getProperty
(
"jdbc.maxWait"
,
Long
.
class
));
// 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
// 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
dataSource
.
setTimeBetweenEvictionRunsMillis
(
60000
);
dataSource
.
setTimeBetweenEvictionRunsMillis
(
60000
);
...
@@ -50,16 +39,6 @@ public class DruidPoolConfig implements EnvironmentAware {
...
@@ -50,16 +39,6 @@ public class DruidPoolConfig implements EnvironmentAware {
}
catch
(
SQLException
e
)
{
}
catch
(
SQLException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
dataSource
.
setUrl
(
em
.
getProperty
(
"jdbc.url"
).
trim
());
dataSource
.
setUsername
(
em
.
getProperty
(
"jdbc.username"
).
trim
());
dataSource
.
setPassword
(
em
.
getProperty
(
"jdbc.password"
).
trim
());
return
dataSource
;
}
}
@Override
public
void
setEnvironment
(
Environment
environment
)
{
this
.
em
=
environment
;
}
}
}
src/main/resources/dev/jdbc.properties
View file @
8f53b91a
jdbc.driver
=
com.mysql.jdbc.Driver
# 管理系统的数据库
jdbc.url
=
jdbc:mysql://127.0.0.1:3306/guns?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
jdbc.url
=
jdbc:mysql://127.0.0.1:3306/guns?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
jdbc.username
=
root
jdbc.username
=
root
jdbc.password
=
root
jdbc.password
=
root
\ No newline at end of file
#定义初始连接数
jdbc.initialSize
=
2
#定义最大连接数
jdbc.maxActive
=
20
#定义最大空闲
jdbc.maxIdle
=
20
#定义最小空闲
jdbc.minIdle
=
1
#定义最长等待时间
jdbc.maxWait
=
60000
\ No newline at end of file
src/main/resources/produce/jdbc.properties
View file @
8f53b91a
jdbc.driver
=
com.mysql.jdbc.Driver
# 管理系统的数据库
jdbc.url
=
jdbc:mysql://127.0.0.1:3306/filco?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
jdbc.url
=
jdbc:mysql://127.0.0.1:3306/filco?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
jdbc.username
=
root
jdbc.username
=
root
jdbc.password
=
root
jdbc.password
=
root
\ No newline at end of file
#定义初始连接数
jdbc.initialSize
=
2
#定义最大连接数
jdbc.maxActive
=
20
#定义最大空闲
jdbc.maxIdle
=
20
#定义最小空闲
jdbc.minIdle
=
1
#定义最长等待时间
jdbc.maxWait
=
60000
\ No newline at end of file
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