Mybatic首先需要添加各种依赖,添加好之后就可以!
多的不谈,你最少得需要有一下包:
<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.4</version> </dependency> <!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>2.1.9</version> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-autoconfigure</artifactId> <version>1.3.2</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
接下来是构件xml的代码:
依葫芦画瓢,即可实现基本所有操作
column可以理解为sql查询出来的列名,property可以理解为你的实体类里面定义的名字,一句话来说就是,通过sql的列名映射到相应的实体类定义的名字上面
依葫芦画瓢,即可实现基本所有操作
column可以理解为sql查询出来的列名,property可以理解为你的实体类里面定义的名字,一句话来说就是,通过sql的列名映射到相应的实体类定义的名字上面
<resultMap id="UserCollectConsult" type="com.example.demo.model.UserCollectConsult"> <id property="id" column="id"></id> <result property="name" column="name"></result> <result property="phone" column="phone"></result> <result property="money" column="money"></result> <result property="lawyerState" column="lawyer_state"></result> <result property="img" column="img"></result> <collection property="userConsultList" ofType="com.example.demo.model.Consult"> <id column="cousult_id" property="id"></id> <result column="title" property="title"></result> <result column="content" property="content"></result> <result column="state" property="state"></result> <result column="collect" property="collect"></result> <result column="release_time" property="releaseTime"></result> <result column="recovery_time" property="recoveryTime"></result> <result column="recovery_name" property="recoveryName"></result> <result column="recovery_content" property="recoveryContent"></result> <result column="phone" property="phone"></result> </collection> </resultMap>
这个位置就是sql的操作了,这里如果你数据库足够扎实,可以写出各种sql的语句,然后通过上面说的列名映射,可以完成基本所有的查询!这里举一个例子:
<select id="queryUserConsult" resultMap="UserCollectConsult"> select u.id, u.name, u.phone, u.money, u.lawyer_state, u.img, c.id cousult_id, c.title, c.content, c.state, c.collect, c.release_time, c.recovery_name, c.recovery_content, c.phone from user u left join collect_consult cc on u.phone = cc.phone left join consult c on cc.cousult_id = c.id </select>
OK,结束了,就这两步,接下来基本就是Spring之间的调用了,我这里也可以直接举例全部流程,如下:
mapper类
这里名字要一样,不一样有什么后果可以自己尝试!
List<UserCollectConsult> queryUserConsult();
这里其实就已经结束了,这种方式没有走那种通用的调用方式,不过不符合正规流程,不推荐,正常的流程一般是Service类调用此方法,随后写一些东西到ServiceImpl实现类里面,同理可得!下面举一个小例子!
@RequestMapping("Test6") public HashMap Test6() { List<UserCollectConsult> list = new ArrayList<>(); list = userMapper.queryUserConsult(); HashMap result = new HashMap<>(); result.put("result", "success"); result.put("code", "1"); result.put("cUserCollectConsultode", list); return result; }
本文作者为DBC,转载请注明。