Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
MybatisTraning
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
CI / CD
CI / CD
Pipelines
Schedules
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
training
MybatisTraning
Commits
129412c4
Commit
129412c4
authored
Dec 24, 2019
by
万建斌
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
20191224 作业
parent
ac6aa30b
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
595 additions
and
0 deletions
+595
-0
Project.xml
万建斌_Mybatis2/.idea/codeStyles/Project.xml
+7
-0
codeStyleConfig.xml
万建斌_Mybatis2/.idea/codeStyles/codeStyleConfig.xml
+7
-0
encodings.xml
万建斌_Mybatis2/.idea/encodings.xml
+8
-0
Maven__com_alibaba_fastjson_1_2_54.xml
...s2/.idea/libraries/Maven__com_alibaba_fastjson_1_2_54.xml
+15
-0
Maven__com_google_protobuf_protobuf_java_3_6_1.xml
...raries/Maven__com_google_protobuf_protobuf_java_3_6_1.xml
+15
-0
Maven__junit_junit_4_12.xml
万建斌_Mybatis2/.idea/libraries/Maven__junit_junit_4_12.xml
+15
-0
Maven__mysql_mysql_connector_java_8_0_17.xml
...ea/libraries/Maven__mysql_mysql_connector_java_8_0_17.xml
+15
-0
Maven__org_hamcrest_hamcrest_core_1_3.xml
....idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml
+15
-0
Maven__org_mybatis_mybatis_3_2_8.xml
...tis2/.idea/libraries/Maven__org_mybatis_mybatis_3_2_8.xml
+15
-0
misc.xml
万建斌_Mybatis2/.idea/misc.xml
+0
-0
modules.xml
万建斌_Mybatis2/.idea/modules.xml
+10
-0
vcs.xml
万建斌_Mybatis2/.idea/vcs.xml
+8
-0
pom.xml
万建斌_Mybatis2/pom.xml
+64
-0
User.java
...2/src/main/java/com/cesgroup/mybatiswork/entity/User.java
+46
-0
MyTypeHandle.java
...in/java/com/cesgroup/mybatiswork/handle/MyTypeHandle.java
+66
-0
MyMybatisLogInterceptor.java
...roup/mybatiswork/interceptor/MyMybatisLogInterceptor.java
+103
-0
MyMapper.xml
万建斌_Mybatis2/src/main/resource/MyMapper.xml
+19
-0
db.properties
万建斌_Mybatis2/src/main/resource/db.properties
+6
-0
mybatis-config.xml
万建斌_Mybatis2/src/main/resource/mybatis-config.xml
+36
-0
mybatis.sql
万建斌_Mybatis2/src/main/resource/mybatis.sql
+32
-0
AppTest.java
...atis2/src/test/java/com/cesgroup/mybatiswork/AppTest.java
+93
-0
No files found.
万建斌_Mybatis2/.idea/codeStyles/Project.xml
0 → 100644
View file @
129412c4
<component
name=
"ProjectCodeStyleConfiguration"
>
<component
name=
"ProjectCodeStyleConfiguration"
>
<code_scheme
name=
"Project"
version=
"173"
>
<option
name=
"AUTODETECT_INDENTS"
value=
"false"
/>
</code_scheme>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/codeStyles/codeStyleConfig.xml
0 → 100644
View file @
129412c4
<component
name=
"ProjectCodeStyleConfiguration"
>
<component
name=
"ProjectCodeStyleConfiguration"
>
<state>
<option
name=
"PREFERRED_PROJECT_CODE_STYLE"
value=
"Default"
/>
</state>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/encodings.xml
0 → 100644
View file @
129412c4
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"Encoding"
>
<file
url=
"file://$PROJECT_DIR$"
charset=
"UTF-8"
/>
</component>
</project>
\ No newline at end of file
万建斌_Mybatis2/.idea/libraries/Maven__com_alibaba_fastjson_1_2_54.xml
0 → 100644
View file @
129412c4
<component
name=
"libraryTable"
>
<component
name=
"libraryTable"
>
<library
name=
"Maven: com.alibaba:fastjson:1.2.54"
>
<CLASSES>
<root
url=
"jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.54/fastjson-1.2.54.jar!/"
/>
</CLASSES>
<JAVADOC>
<root
url=
"jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.54/fastjson-1.2.54-javadoc.jar!/"
/>
</JAVADOC>
<SOURCES>
<root
url=
"jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.54/fastjson-1.2.54-sources.jar!/"
/>
</SOURCES>
</library>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/libraries/Maven__com_google_protobuf_protobuf_java_3_6_1.xml
0 → 100644
View file @
129412c4
<component
name=
"libraryTable"
>
<component
name=
"libraryTable"
>
<library
name=
"Maven: com.google.protobuf:protobuf-java:3.6.1"
>
<CLASSES>
<root
url=
"jar://$MAVEN_REPOSITORY$/com/google/protobuf/protobuf-java/3.6.1/protobuf-java-3.6.1.jar!/"
/>
</CLASSES>
<JAVADOC>
<root
url=
"jar://$MAVEN_REPOSITORY$/com/google/protobuf/protobuf-java/3.6.1/protobuf-java-3.6.1-javadoc.jar!/"
/>
</JAVADOC>
<SOURCES>
<root
url=
"jar://$MAVEN_REPOSITORY$/com/google/protobuf/protobuf-java/3.6.1/protobuf-java-3.6.1-sources.jar!/"
/>
</SOURCES>
</library>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/libraries/Maven__junit_junit_4_12.xml
0 → 100644
View file @
129412c4
<component
name=
"libraryTable"
>
<component
name=
"libraryTable"
>
<library
name=
"Maven: junit:junit:4.12"
>
<CLASSES>
<root
url=
"jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12.jar!/"
/>
</CLASSES>
<JAVADOC>
<root
url=
"jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-javadoc.jar!/"
/>
</JAVADOC>
<SOURCES>
<root
url=
"jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-sources.jar!/"
/>
</SOURCES>
</library>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/libraries/Maven__mysql_mysql_connector_java_8_0_17.xml
0 → 100644
View file @
129412c4
<component
name=
"libraryTable"
>
<component
name=
"libraryTable"
>
<library
name=
"Maven: mysql:mysql-connector-java:8.0.17"
>
<CLASSES>
<root
url=
"jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/8.0.17/mysql-connector-java-8.0.17.jar!/"
/>
</CLASSES>
<JAVADOC>
<root
url=
"jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/8.0.17/mysql-connector-java-8.0.17-javadoc.jar!/"
/>
</JAVADOC>
<SOURCES>
<root
url=
"jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/8.0.17/mysql-connector-java-8.0.17-sources.jar!/"
/>
</SOURCES>
</library>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml
0 → 100644
View file @
129412c4
<component
name=
"libraryTable"
>
<component
name=
"libraryTable"
>
<library
name=
"Maven: org.hamcrest:hamcrest-core:1.3"
>
<CLASSES>
<root
url=
"jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/"
/>
</CLASSES>
<JAVADOC>
<root
url=
"jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-javadoc.jar!/"
/>
</JAVADOC>
<SOURCES>
<root
url=
"jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-sources.jar!/"
/>
</SOURCES>
</library>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/libraries/Maven__org_mybatis_mybatis_3_2_8.xml
0 → 100644
View file @
129412c4
<component
name=
"libraryTable"
>
<component
name=
"libraryTable"
>
<library
name=
"Maven: org.mybatis:mybatis:3.2.8"
>
<CLASSES>
<root
url=
"jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis/3.2.8/mybatis-3.2.8.jar!/"
/>
</CLASSES>
<JAVADOC>
<root
url=
"jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis/3.2.8/mybatis-3.2.8-javadoc.jar!/"
/>
</JAVADOC>
<SOURCES>
<root
url=
"jar://$MAVEN_REPOSITORY$/org/mybatis/mybatis/3.2.8/mybatis-3.2.8-sources.jar!/"
/>
</SOURCES>
</library>
</component>
\ No newline at end of file
万建斌_Mybatis2/.idea/misc.xml
0 → 100644
View file @
129412c4
This diff is collapsed.
Click to expand it.
万建斌_Mybatis2/.idea/modules.xml
0 → 100644
View file @
129412c4
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectModuleManager"
>
<modules>
<module
fileurl=
"file://$PROJECT_DIR$/万建斌_Mybatis2.iml"
filepath=
"$PROJECT_DIR$/万建斌_Mybatis2.iml"
/>
</modules>
</component>
</project>
\ No newline at end of file
万建斌_Mybatis2/.idea/vcs.xml
0 → 100644
View file @
129412c4
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"VcsDirectoryMappings"
>
<mapping
directory=
"$PROJECT_DIR$/.."
vcs=
"Git"
/>
</component>
</project>
\ No newline at end of file
万建斌_Mybatis2/pom.xml
0 → 100644
View file @
129412c4
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0.0
</modelVersion>
<groupId>
com.cesgroup
</groupId>
<artifactId>
万建斌_Mybatis2
</artifactId>
<version>
0.0.1-SNAPSHOT
</version>
<packaging>
jar
</packaging>
<name>
万建斌_Mybatis2
</name>
<url>
http://maven.apache.org
</url>
<properties>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>
mysql
</groupId>
<artifactId>
mysql-connector-java
</artifactId>
<version>
8.0.17
</version>
</dependency>
<dependency>
<groupId>
org.mybatis
</groupId>
<artifactId>
mybatis
</artifactId>
<version>
3.2.8
</version>
</dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
fastjson
</artifactId>
<version>
1.2.54
</version>
</dependency>
<dependency>
<groupId>
junit
</groupId>
<artifactId>
junit
</artifactId>
<version>
4.12
</version>
<scope>
test
</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-compiler-plugin
</artifactId>
<configuration>
<source>
1.8
</source>
<target>
1.8
</target>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>
src/main/resource
</directory>
<includes>
<include>
*.*
</include>
</includes>
</resource>
</resources>
</build>
</project>
万建斌_Mybatis2/src/main/java/com/cesgroup/mybatiswork/entity/User.java
0 → 100644
View file @
129412c4
package
com
.
cesgroup
.
mybatiswork
.
entity
;
package
com
.
cesgroup
.
mybatiswork
.
entity
;
import
java.io.Serializable
;
import
com.alibaba.fastjson.JSONObject
;
/**
* @Description: 用户类
* @Param:
* @return:
* @Author: Wanjianbin
* @Date: 2019/12/10
*/
public
class
User
implements
Serializable
{
public
int
getId
()
{
return
id
;
}
public
void
setId
(
int
id
)
{
this
.
id
=
id
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
public
JSONObject
getInfo
()
{
return
info
;
}
public
void
setInfo
(
JSONObject
info
)
{
this
.
info
=
info
;
}
@Override
public
String
toString
()
{
return
"User [id="
+
id
+
", name="
+
name
+
", info="
+
JSONObject
.
toJSONString
(
info
)
+
"]"
;
}
int
id
;
String
name
;
JSONObject
info
;
}
万建斌_Mybatis2/src/main/java/com/cesgroup/mybatiswork/handle/MyTypeHandle.java
0 → 100644
View file @
129412c4
package
com
.
cesgroup
.
mybatiswork
.
handle
;
package
com
.
cesgroup
.
mybatiswork
.
handle
;
import
java.sql.CallableStatement
;
import
java.sql.PreparedStatement
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
org.apache.ibatis.type.BaseTypeHandler
;
import
org.apache.ibatis.type.JdbcType
;
import
com.alibaba.fastjson.JSONObject
;
/**
* @Description: 类型转换器
* @Param:
* @return:
* @Author: Wanjianbin
* @Date: 2019/12/10
*/
public
class
MyTypeHandle
extends
BaseTypeHandler
<
JSONObject
>{
@Override
public
JSONObject
getNullableResult
(
ResultSet
rs
,
String
cloumName
)
throws
SQLException
{
String
infoJsonString
=
rs
.
getString
(
cloumName
);
JSONObject
infObject
=
null
;
try
{
infObject
=
JSONObject
.
parseObject
(
infoJsonString
);
//System.out.println("----将json串转成json对象成功!----");
}
catch
(
Exception
e
)
{
System
.
err
.
println
(
"将json串转成json对象失败!"
);;
}
return
infObject
;
}
@Override
public
JSONObject
getNullableResult
(
CallableStatement
arg0
,
int
arg1
)
throws
SQLException
{
// TODO Auto-generated method stub
return
null
;
}
@Override
public
void
setNonNullParameter
(
PreparedStatement
statement
,
int
i
,
JSONObject
infoObject
,
JdbcType
jdbcType
)
throws
SQLException
{
// TODO Auto-generated method stub
try
{
String
userInfoString
=
JSONObject
.
toJSONString
(
infoObject
);
statement
.
setString
(
i
,
userInfoString
);
//System.out.println("----将对象转化为字符串成功!----:"+userInfoString);
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
"----将对象转化为字符串失败!----"
);
}
}
@Override
public
JSONObject
getNullableResult
(
ResultSet
arg0
,
int
arg1
)
throws
SQLException
{
// TODO Auto-generated method stub
return
null
;
}
}
万建斌_Mybatis2/src/main/java/com/cesgroup/mybatiswork/interceptor/MyMybatisLogInterceptor.java
0 → 100644
View file @
129412c4
package
com
.
cesgroup
.
mybatiswork
.
interceptor
;
package
com
.
cesgroup
.
mybatiswork
.
interceptor
;
import
com.alibaba.fastjson.JSONObject
;
import
com.cesgroup.mybatiswork.handle.MyTypeHandle
;
import
org.apache.ibatis.executor.statement.StatementHandler
;
import
org.apache.ibatis.logging.Log
;
import
org.apache.ibatis.logging.LogFactory
;
import
org.apache.ibatis.mapping.BoundSql
;
import
org.apache.ibatis.mapping.ParameterMapping
;
import
org.apache.ibatis.plugin.*
;
import
org.apache.ibatis.session.ResultHandler
;
import
java.sql.Statement
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Properties
;
/**
* @program: 万建斌_Mybatis1
* @description: 日志拦截
* @author: Wanjianbin
* @create: 2019-12-24 14:22
**/
@Intercepts
({
@Signature
(
type
=
StatementHandler
.
class
,
method
=
"query"
,
args
=
{
Statement
.
class
,
ResultHandler
.
class
}),
@Signature
(
type
=
StatementHandler
.
class
,
method
=
"update"
,
args
=
{
Statement
.
class
}),
@Signature
(
type
=
StatementHandler
.
class
,
method
=
"batch"
,
args
=
{
Statement
.
class
})
})
public
class
MyMybatisLogInterceptor
implements
Interceptor
{
final
Log
log
=
LogFactory
.
getLog
(
MyTypeHandle
.
class
);
@Override
public
Object
intercept
(
Invocation
invocation
)
throws
Throwable
{
Object
target
=
invocation
.
getTarget
();
long
startTime
=
System
.
currentTimeMillis
();
StatementHandler
statementHandler
=
(
StatementHandler
)
target
;
try
{
return
invocation
.
proceed
();
}
finally
{
long
endTime
=
System
.
currentTimeMillis
();
long
sqlCost
=
endTime
-
startTime
;
BoundSql
boundSql
=
statementHandler
.
getBoundSql
();
String
sql
=
boundSql
.
getSql
();
Object
parameterObject
=
boundSql
.
getParameterObject
();
List
<
ParameterMapping
>
parameterMappingList
=
boundSql
.
getParameterMappings
();
// 格式化Sql语句,去除换行符,替换参数
sql
=
formatSql
(
sql
,
parameterObject
,
parameterMappingList
);
log
.
warn
(
"执行耗时["
+
sqlCost
+
"ms] "
+
"SQL:"
+
sql
+
";"
);
}
}
private
String
formatSql
(
String
sql
,
Object
parameterObject
,
List
<
ParameterMapping
>
parameterMappingList
)
{
sql
=
sql
.
replaceAll
(
"\r|\n|\t"
,
" "
).
replaceAll
(
"\\s+"
,
" "
);
if
(
parameterObject
==
null
){
sql
=
sql
.
replaceAll
(
"\\?"
,
" null"
);
return
sql
;
}
if
(
Map
.
class
.
isAssignableFrom
(
parameterObject
.
getClass
())){
Map
pb
=
(
Map
)
parameterObject
;
for
(
ParameterMapping
temp:
parameterMappingList
){
if
(
pb
.
get
(
temp
.
getProperty
())
!=
null
){
if
(
pb
.
get
(
temp
.
getProperty
()).
getClass
().
isAssignableFrom
(
JSONObject
.
class
)){
JSONObject
infObject
=
(
JSONObject
)
pb
.
get
(
temp
.
getProperty
());
sql
=
sql
.
replaceFirst
(
"\\?"
,
"'"
+
infObject
.
toJSONString
()
+
"'"
);
}
else
{
sql
=
sql
.
replaceFirst
(
"\\?"
,
"'"
+
pb
.
get
(
temp
.
getProperty
())
+
"'"
);
}
}
else
{
sql
=
sql
.
replaceFirst
(
"\\?"
,
"'null'"
);
}
}
}
if
(
String
.
class
.
isAssignableFrom
(
parameterObject
.
getClass
()))
{
sql
=
sql
.
replaceFirst
(
"\\?"
,
parameterObject
==
null
?
"null"
:
"'"
+
parameterObject
+
"'"
);
}
if
(
Number
.
class
.
isAssignableFrom
(
parameterObject
.
getClass
()))
{
sql
=
sql
.
replaceFirst
(
"\\?"
,
parameterObject
==
null
?
"null"
:
parameterObject
.
toString
());
}
return
sql
;
}
@Override
public
Object
plugin
(
Object
o
)
{
return
Plugin
.
wrap
(
o
,
this
);
}
@Override
public
void
setProperties
(
Properties
properties
)
{
}
}
万建斌_Mybatis2/src/main/resource/MyMapper.xml
0 → 100644
View file @
129412c4
<?xml version="1.0" encoding="UTF-8" ?>
<?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:命名空间,随便写,一般保证命名空间唯一 -->
<mapper
namespace=
"MyMapper"
>
<!-- statement,内容:sql语句。id:唯一标识,随便写,在同一个命名空间下保持唯一
resultType:sql语句查询结果集的封装类型,tb_user即为数据库中的表
-->
<select
id=
"selectUser"
resultType=
"com.cesgroup.mybatiswork.entity.User"
>
select * from mybatis where id = #{id}
</select>
<insert
id=
"insert"
parameterType=
"com.cesgroup.mybatiswork.entity.User"
>
INSERT INTO mybatis (id, name, info)
VALUES(#{id}, #{name}, #{info})
</insert>
</mapper>
\ No newline at end of file
万建斌_Mybatis2/src/main/resource/db.properties
0 → 100644
View file @
129412c4
driver
=
com.mysql.cj.jdbc.Driver
driver
=
com.mysql.cj.jdbc.Driver
url
=
jdbc:mysql://localhost:3306/test?seUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8
username
=
root
password
=
root
\ No newline at end of file
万建斌_Mybatis2/src/main/resource/mybatis-config.xml
0 → 100644
View file @
129412c4
<?xml version="1.0" encoding="UTF-8" ?>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!-- 根标签 -->
<configuration>
<properties
resource=
"db.properties"
></properties>
<typeHandlers>
<typeHandler
handler=
"com.cesgroup.mybatiswork.handle.MyTypeHandle"
></typeHandler>
</typeHandlers>
<plugins>
<plugin
interceptor=
"com.cesgroup.mybatiswork.interceptor.MyMybatisLogInterceptor"
>
</plugin>
</plugins>
<!-- 环境,可以配置多个,default:指定采用哪个环境 -->
<environments
default=
"dev"
>
<!-- id:唯一标识 -->
<environment
id=
"dev"
>
<!-- 事务管理器,JDBC类型的事务管理器 -->
<transactionManager
type=
"JDBC"
/>
<!-- 数据源,池类型的数据源 -->
<dataSource
type=
"POOLED"
>
<property
name=
"driver"
value=
"${driver}"
/>
<!-- 配置了properties,所以可以直接引用 -->
<property
name=
"url"
value=
"${url}"
/>
<property
name=
"username"
value=
"${username}"
/>
<property
name=
"password"
value=
"${password}"
/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper
resource=
"MyMapper.xml"
/>
</mappers>
</configuration>
万建斌_Mybatis2/src/main/resource/mybatis.sql
0 → 100644
View file @
129412c4
/*
/*
Navicat Premium Data Transfer
Source Server : 本机
Source Server Type : MySQL
Source Server Version : 80015
Source Host : localhost:3306
Source Schema : test
Target Server Type : MySQL
Target Server Version : 80015
File Encoding : 65001
Date: 09/12/2019 10:25:06
*/
SET
NAMES
utf8mb4
;
SET
FOREIGN_KEY_CHECKS
=
0
;
-- ----------------------------
-- Table structure for mybatis
-- ----------------------------
DROP
TABLE
IF
EXISTS
`mybatis`
;
CREATE
TABLE
`mybatis`
(
`id`
int
(
32
)
NOT
NULL
,
`name`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_0900_ai_ci
NULL
DEFAULT
NULL
,
`info`
varchar
(
1000
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_0900_ai_ci
NULL
DEFAULT
NULL
,
PRIMARY
KEY
(
`id`
)
USING
BTREE
)
ENGINE
=
InnoDB
CHARACTER
SET
=
utf8mb4
COLLATE
=
utf8mb4_0900_ai_ci
ROW_FORMAT
=
Dynamic
;
SET
FOREIGN_KEY_CHECKS
=
1
;
万建斌_Mybatis2/src/test/java/com/cesgroup/mybatiswork/AppTest.java
0 → 100644
View file @
129412c4
package
com
.
cesgroup
.
mybatiswork
;
package
com
.
cesgroup
.
mybatiswork
;
import
java.io.InputStream
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
org.apache.ibatis.io.Resources
;
import
org.apache.ibatis.session.ExecutorType
;
import
org.apache.ibatis.session.SqlSession
;
import
org.apache.ibatis.session.SqlSessionFactory
;
import
org.apache.ibatis.session.SqlSessionFactoryBuilder
;
import
org.junit.Before
;
import
org.junit.Test
;
import
com.alibaba.fastjson.JSONObject
;
import
com.cesgroup.mybatiswork.entity.User
;
/**
* @Description: 测试类
* @Param:
* @return:
* @Author: Wanjianbin
* @Date: 2019/12/24
*/
public
class
AppTest
{
private
SqlSession
sqlSession
=
null
;
private
SqlSessionFactory
sqlSessionFactory
;
@Before
public
void
configMybatis
()
{
// 指定全局配置文件
String
resource
=
"mybatis-config.xml"
;
// 读取配置文件
InputStream
inputStream
;
try
{
inputStream
=
Resources
.
getResourceAsStream
(
resource
);
// 构建sqlSessionFactory
sqlSessionFactory
=
new
SqlSessionFactoryBuilder
().
build
(
inputStream
);
// 获取sqlSession
sqlSession
=
sqlSessionFactory
.
openSession
(
false
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
finally
{
if
(
sqlSession
!=
null
)
{
//sqlSession.close();
}
}
}
/**
*
* 自定义解析器查询测试
*
* json串字段为 info
*/
@Test
public
void
testSelectUser
()
{
User
user
=
sqlSession
.
selectOne
(
"MyMapper.selectUser"
,
2
);
System
.
out
.
println
(
user
);
sqlSession
.
close
();
}
/**
*
* 自定义类型解析器插入测试
*/
@Test
public
void
testInsertJsonObject
()
{
JSONObject
userInfObject
=
new
JSONObject
();
userInfObject
.
put
(
"address"
,
"上海市静安区"
);
userInfObject
.
put
(
"telphone"
,
"13823541230"
);
// User user = new User();
// user.setName("万建斌");
// user.setInfo(userInfObject);
Map
user
=
new
HashMap
();
user
.
put
(
"id"
,
99
);
user
.
put
(
"name"
,
"万建斌"
);
user
.
put
(
"info"
,
userInfObject
);
int
a
=
sqlSession
.
insert
(
"MyMapper.insert"
,
user
);
sqlSession
.
commit
();
System
.
out
.
println
(
"影响的行数:"
+
a
);
}
}
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