搭建 SpringBoot 2.0 项目 (四) 使用 Mybatis 访问MySQL数据库

7 篇文章 0 订阅
2 篇文章 0 订阅

SpringBoot 入门系列:

搭建 SpringBoot 2.0 项目 (一) 开发环境的搭建(安装开发工具STS)

搭建 SpringBoot 2.0 项目 (二) 简单项目的搭建

搭建 SpringBoot 2.0 项目 (三) 使用 JPA 访问MySQL数据库

搭建 SpringBoot 2.0 项目 (四) 使用 Mybatis 访问MySQL数据库

搭建 SpringBoot 2.0 项目 (五) 搭建一个集成ssm的web项目

 

      在上一篇文章中讲述了通过JPA访问MySQL,这一篇讲述Mybatis访问数据库。

     Mybatis访问数据库有两种形式:1、注解方式   2、xml 。本文采用xml方式,注解方式可以参考我的下一篇博文:

     搭建 SpringBoot 2.0 项目 (五) 搭建一个集成ssm的web项目

1、使用 STS 新建一个名为demo-jpa的项目,选择MyBatis,MySQL以及Web

        创建完成后,打开 application.properties,设置数据库及MyBatis的相关属性

spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=

#mybatis.config-location=classpath:mybatis-config.xml    mybatis mapper文件的位置
mybatis.mapper-locations=classpath*:mapper/**/*.xml
#扫描pojo类的位置,在此处指明扫描实体类的包,在mapper中就可以不用写pojo类的全路径名了
mybatis.type-aliases-package=com.example.demo

2、创建 User.java 、UserDao.java 、MainController.java。如下:

              

package com.example.demo;
public class User {
    private Integer id;
    private String name;
    private String email;
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
}
package com.example.demo;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface UserDao {
        //根据姓名有条件查询
	User selectUserByName(@Param("name")String name)throws Exception;
        //插入新数据
	User insertUser(@Param("id")String id,@Param("name")String
        name,@Param("email")String email)throws Exception;
        //查询全部数据
	List<User> findAll()throws Exception;
}

 

package com.example.demo;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller 
public class MainController {	
	@Autowired	
	UserDao userDao;	
	@RequestMapping(value = "/hello")
	public @ResponseBody String hello(){
		System.out.println("Hello");
		return "hello mybatis";
	}	
	@RequestMapping(value = "/findByName")
	public @ResponseBody User findByName(String name) throws Exception{
		User user = userDao.selectUserByName(name);
		System.out.println(user);
		return  user;
	}
	@RequestMapping(value = "/all")
	public @ResponseBody List<User> all() throws Exception{
		List<User> user = userDao.findAll();
		System.out.println(user);
		return  user;
	}
	@RequestMapping(value = "/insert")
	public @ResponseBody String insertUser(String id,String name,String email) throws
        Exception{
		userDao.insertUser(id,name,email);	
		System.out.println(id+name+email);
		return  "saved";
	}
}

3、创建mapper文件夹,新建UserDaoMapper.xml

        

<?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="com.example.demo.UserDao">

<!-->根据名字有条件查询  <-->
<select id="selectUserByName" resultType="com.example.demo.User" parameterType="string">
		select * from user where name = #{name}
</select>

<!-->查询全部  <-->
<select id="findAll" resultType="com.example.demo.User" parameterType="string">
		select * from user 
</select>

<!-->插入新数据  <-->
<select id="insertUser" resultType="com.example.demo.User" parameterType="string">
		insert into user(id,name,email) value (#{id} , #{name} , #{email})
</select>
</mapper>

 4、启动项目,测试

         查询所有数据: http://localhost:8080/all

     插入新数据:  http://localhost:8080/insert?id=3&name=henry&email=12345678@qq.com

       根据名字查询:  http://localhost:8080/findByName?name=henry

      以上,就是用MyBatis访问MySQL的案例。附上参考代码:

      https://pan.baidu.com/s/16t9eGqQ_sK_5HRDsF6O99g 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值