Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
晶之木
miaosha
提交
ee5ee5a5
M
miaosha
项目概览
晶之木
/
miaosha
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
miaosha
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
ee5ee5a5
编写于
1月 21, 2019
作者:
Q
qiurunze
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
提交
上级
07c30f03
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
70 addition
and
14 deletion
+70
-14
README.md
README.md
+2
-6
docs/mybatis-code.md
docs/mybatis-code.md
+7
-1
src/main/java/com/geekq/miaosha/mybatis/Mapper/UserMapper.java
...ain/java/com/geekq/miaosha/mybatis/Mapper/UserMapper.java
+3
-0
src/main/java/com/geekq/miaosha/mybatis/controller/UbatisController.java
...om/geekq/miaosha/mybatis/controller/UbatisController.java
+13
-1
src/main/java/com/geekq/miaosha/mybatis/vo/TeacherListVo.java
...main/java/com/geekq/miaosha/mybatis/vo/TeacherListVo.java
+32
-0
src/main/resources/application.properties
src/main/resources/application.properties
+2
-2
src/main/resources/mybatis/mapper/userMapper.xml
src/main/resources/mybatis/mapper/userMapper.xml
+11
-4
未找到文件。
README.md
浏览文件 @
ee5ee5a5
...
...
@@ -44,7 +44,7 @@
### 以下所有内容都已完成,但是因内容多需逐渐整理上传! 专题的部分也会尽快上传更新! 立个flag 半年内吧争取全部更新完!各位稍安勿躁!
### [如要提交代码请先看--提交合并代码规范](/docs/code-criterion.md)
### [如要提交代码请先看--提交合并代码规范
提交者的后面都会有署名方面大家问问题
](/docs/code-criterion.md)
| ID | Problem | Article |
| --- | --- | :--- |
...
...
@@ -101,9 +101,6 @@
#### Get Start
下载项目, 切换的项目根目录
```
bash
Linux/Mac:
...
...
@@ -116,7 +113,6 @@
```
运行以上命令相关依赖便会安装完毕
启动GeekQMainApplication主类即可
若有对于./mvnw 不了解的请点击下方链接介绍
###### [maven-wrapper介绍](/docs/maven-wrapper.md)
###### [maven-wrapper介绍
(add by zhangkai)
](/docs/maven-wrapper.md)
docs/mybatis-code.md
浏览文件 @
ee5ee5a5
...
...
@@ -88,4 +88,10 @@
### generatorConfig.xml 内容解析?
已在其中备注,详细内容请见generatorConfig.xml
### generatorConfig.xml 内容解析?
\ No newline at end of file
### xml映射文件都会有一个dao接口,工作原理?
Dao接口里的方法,是不能重载的,因为是全限名+方法名的保存和寻找策略。
Dao接口的工作原理是JDK动态代理,Mybatis运行时会使用JDK动态代理为Dao接口生成代理proxy对象,
代理对象proxy会拦截接口方法,转而执行MappedStatement所代表的sql,然后将sql执行结果返回。
###
\ No newline at end of file
src/main/java/com/geekq/miaosha/mybatis/Mapper/UserMapper.java
浏览文件 @
ee5ee5a5
...
...
@@ -2,6 +2,7 @@ package com.geekq.miaosha.mybatis.Mapper;
import
com.geekq.miaosha.mybatis.entity.User
;
import
com.geekq.miaosha.mybatis.vo.TeacherListVo
;
import
com.geekq.miaosha.mybatis.vo.TeacherVo
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -41,4 +42,6 @@ public interface UserMapper {
public
List
<
TeacherVo
>
getTeacherAndUserList
(
@Param
(
"uId"
)
List
<
Integer
>
uId
);
public
List
<
TeacherListVo
>
getTeacherAndUserListVo
(
@Param
(
"uId"
)
Integer
uId
);
}
src/main/java/com/geekq/miaosha/mybatis/controller/UbatisController.java
浏览文件 @
ee5ee5a5
...
...
@@ -3,6 +3,7 @@ package com.geekq.miaosha.mybatis.controller;
import
com.geekq.miaosha.access.AccessLimit
;
import
com.geekq.miaosha.mybatis.Mapper.UserMapper
;
import
com.geekq.miaosha.mybatis.entity.User
;
import
com.geekq.miaosha.mybatis.vo.TeacherListVo
;
import
com.geekq.miaosha.mybatis.vo.TeacherVo
;
import
com.geekq.miaosha.redis.KeyPrefix
;
import
com.geekq.miaosha.redis.RedisService
;
...
...
@@ -98,7 +99,18 @@ public class UbatisController {
list
.
add
(
1
);
list
.
add
(
2
);
List
<
TeacherVo
>
teacherAndUser
=
userMapper
.
getTeacherAndUserList
(
list
);
List
<
TeacherVo
>
teacherAndUser
=
userMapper
.
getTeacherAndUserList
(
list
);
System
.
out
.
println
(
teacherAndUser
.
size
());
}
/**
* 测试多表联合查询 in
*/
@RequestMapping
(
value
=
"/testAssc"
,
produces
=
"text/html"
)
@ResponseBody
public
void
testAssc
(){
List
<
TeacherListVo
>
teacherAndUser
=
userMapper
.
getTeacherAndUserListVo
(
1
);
System
.
out
.
println
(
teacherAndUser
.
toString
());
}
}
src/main/java/com/geekq/miaosha/mybatis/vo/TeacherListVo.java
0 → 100644
浏览文件 @
ee5ee5a5
package
com.geekq.miaosha.mybatis.vo
;
import
com.geekq.miaosha.mybatis.entity.User
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.io.Serializable
;
import
java.util.List
;
@Setter
@Getter
public
class
TeacherListVo
implements
Serializable
{
private
String
tId
;
private
Integer
uId
;
private
String
tName
;
private
User
userList
;
@Override
public
String
toString
()
{
return
"TeacherListVo{"
+
"tId='"
+
tId
+
'\''
+
", uId="
+
uId
+
", tName='"
+
tName
+
'\''
+
", userList="
+
userList
+
'}'
;
}
}
src/main/resources/application.properties
浏览文件 @
ee5ee5a5
...
...
@@ -23,12 +23,12 @@ log4j.logger.java.sql.PreparedStatement=DEBUG
#mybatis
mybatis.type-aliases-package
=
com.geekq.miaosha.domain
#开启驼峰转换 configuration config-location 不能同時存在 如果要走流程 请 放开注释
mybatis.configuration.map-underscore-to-camel-case
=
true
#
mybatis.configuration.map-underscore-to-camel-case=true
#mybatis.mapperLocations = classpath:com/geekq/miaosha/dao/*.xml
mybatis.mapperLocations
=
classpath:mybatis/mapper/*.xml
#配置xml方式 因为与 mybatis.configuration.map-underscore-to-camel-case 仅用于测试
#
mybatis.config-location=classpath:mybatis/mybatis-config.xml
mybatis.config-location
=
classpath:mybatis/mybatis-config.xml
#add mybatis
mybatis.
...
...
src/main/resources/mybatis/mapper/userMapper.xml
浏览文件 @
ee5ee5a5
...
...
@@ -32,7 +32,7 @@ userMapper(userMapper.xml文件去除后缀)保证唯一性
</resultMap>
<resultMap
type=
"com.geekq.miaosha.mybatis.vo.TeacherVo"
id=
"TandUResultMap"
>
<resultMap
type=
"com.geekq.miaosha.mybatis.vo.Teacher
List
Vo"
id=
"TandUResultMap"
>
<!-- id表示查询结果集中唯一标识
column:查询出的列名
property:type所指定的POJO中的属性名
...
...
@@ -42,9 +42,12 @@ userMapper(userMapper.xml文件去除后缀)保证唯一性
<!-- 对普通列的映射定义 -->
<result
column=
"t_id"
property=
"tId"
/>
<result
column=
"t_name"
property=
"tName"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"age"
property=
"age"
/>
<result
column=
"_address"
property=
"address"
/>
<!--property="supervisor"表明这是为了映射学生实体的
supervisor属性。javaType="Teacher"用到了Teacher这个
别名定义,并指出了supervisor属性的java类型-->
<association
property=
"userList"
javaType=
"com.geekq.miaosha.mybatis.entity.User"
column=
"u_id"
select=
"com.geekq.miaosha.mybatis.Mapper.getUser"
>
</association>
</resultMap>
<sql
id=
"base_column"
>
...
...
@@ -95,6 +98,10 @@ userMapper(userMapper.xml文件去除后缀)保证唯一性
</select>
<select
id=
"getTeacherAndUserListVo"
resultMap=
"TandUResultMap"
>
select * from teacher t where t.u_id = #{uId}
</select>
<!-- 插入自动递增-->
<insert
id=
"insert"
parameterType=
"com.geekq.miaosha.mybatis.entity.User"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录