怎么在springboot中集成mybatis xml方式(mybatis,springboot,xml,编程语言)

时间:2024-05-07 05:47:25 作者 : 石家庄SEO 分类 : 编程语言
  • TAG :

springboot集成mybatis

1,添加pom引用

<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.1.1</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency>

2 application.properties

mybatis.config-locations=classpath:mybatis/mybatis-config.xmlmybatis.mapper-locations=classpath:mybatis/mapper/*.xmlmybatis.type-aliases-package=com.kerry.modelspring.datasource.driverClassName=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8spring.datasource.username=rootspring.datasource.password=123456

3 在resource目录下创建mybatis目录并创建mybatis-config.xml文件

<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEconfigurationPUBLIC"-//mybatis.org//DTDConfig3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><settings><settingname="callSettersOnNulls"value="true"/><settingname="cacheEnabled"value="true"/><settingname="lazyLoadingEnabled"value="true"/><settingname="aggressiveLazyLoading"value="true"/><settingname="multipleResultSetsEnabled"value="true"/><settingname="useColumnLabel"value="true"/><settingname="useGeneratedKeys"value="false"/><settingname="autoMappingBehavior"value="PARTIAL"/><settingname="defaultExecutorType"value="SIMPLE"/><settingname="mapUnderscoreToCamelCase"value="true"/><settingname="localCacheScope"value="SESSION"/><settingname="jdbcTypeForNull"value="NULL"/></settings><typeAliases><typeAliasalias="Integer"type="java.lang.Integer"/><typeAliasalias="Long"type="java.lang.Long"/><typeAliasalias="HashMap"type="java.util.HashMap"/><typeAliasalias="LinkedHashMap"type="java.util.LinkedHashMap"/><typeAliasalias="ArrayList"type="java.util.ArrayList"/><typeAliasalias="LinkedList"type="java.util.LinkedList"/></typeAliases></configuration>

mybatis目录下创建mapper目录存放mapper类接口文件

packagecom.kerry.mapper;importjava.util.List;importcom.kerry.model.User;publicinterfaceUserMapper{List<User>getAll();UsergetOne(Integerid);voidinsert(Useruser);voidupdate(Useruser);voiddelete(Integerid);}

model类文件

packagecom.kerry.mapper;importjava.util.List;importcom.kerry.model.User;publicinterfaceUserMapper{List<User>getAll();UsergetOne(Integerid);voidinsert(Useruser);voidupdate(Useruser);voiddelete(Integerid);}

userMapper.xml

<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEmapperPUBLIC"-//mybatis.org//DTDMapper3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mappernamespace="com.kerry.mapper.UserMapper"><resultMapid="BaseResultMap"type="com.kerry.model.User"><idcolumn="id"property="id"jdbcType="INTEGER"/><resultcolumn="name"property="name"jdbcType="VARCHAR"/><resultcolumn="age"property="age"jdbcType="VARCHAR"/><resultcolumn="address"property="address"jdbcType="VARCHAR"/></resultMap><sqlid="Base_Column_List">id,name,age,address</sql><selectid="getAll"resultMap="BaseResultMap">SELECT<includerefid="Base_Column_List"/>FROMuser</select><selectid="getOne"parameterType="java.lang.Integer"resultMap="BaseResultMap">SELECT<includerefid="Base_Column_List"/>FROMuserWHEREid=#{id}</select><insertid="insert"parameterType="com.kerry.model.User">INSERTINTOuser(id,name,age,address)VALUES(#{id},#{name},#{age},#{address})</insert><updateid="update"parameterType="com.kerry.model.User">UPDATEuserSET<iftest="name!=null">name=#{name},</if><iftest="age!=null">age=#{age},</if>address=#{address}WHEREid=#{id}</update><deleteid="delete"parameterType="java.lang.Integer">DELETEFROMuserWHEREid=#{id}</delete></mapper>

controller:

packagecom.kerry.web;importjava.util.List;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.web.bind.annotation.PathVariable;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RestController;importcom.kerry.model.User;importcom.kerry.mapper.UserMapper;@RestControllerpublicclassUserController{@AutowiredprivateUserMapperuserMapper;@RequestMapping("/getUsers")publicList<User>getUsers(){List<User>users=userMapper.getAll();returnusers;}@RequestMapping("/getUser")publicUsergetUser(Integerid){Useruser=userMapper.getOne(id);returnuser;}@RequestMapping("/add")publicvoidsave(Useruser){userMapper.insert(user);}@RequestMapping(value="update")publicvoidupdate(Useruser){userMapper.update(user);}@RequestMapping(value="/delete/{id}")publicvoiddelete(@PathVariable("id")Integerid){userMapper.delete(id);}}

最后在启动类上加上 扫描maper interface注解

@SpringBootApplication@MapperScan("com.kerry.mapper")publicclassApplication{publicstaticvoidmain(String[]args){SpringApplication.run(Application.class,args);}}

或者在每个XXMapper类上加上@mapper注解也行 二选一即可

比如

packagecom.kerry.mapper;importjava.util.List;importorg.apache.ibatis.annotations.Mapper;importcom.kerry.model.User;@MapperpublicinterfaceUserMapper{List<User>getAll();UsergetOne(Integerid);voidinsert(Useruser);voidupdate(Useruser);voiddelete(Integerid);}

个人建议使用直接在启动类上application上@MapperScan方便,一次搞定,不必每写一个mapper类都加上@mapper注解

附上项目结构目录 选中的类以及文件

怎么在springboot中集成mybatis xml方式

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:怎么在springboot中集成mybatis xml方式的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:如何将springboot打包部署到linux服务器下一篇:

12 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18