SpringBoot整合Mybatis的简单案例

使用Intellij IDEA构建Maven项目,使用SpringBoot整合Mybatis

1.新建project
file -> new ->project
2.创建maven项目,选择webapp骨架
这里写图片描述

3.填写GroupId和ArtifactId
这里写图片描述

4.展示Maven项目的摘要
这里写图片描述

5.填写项目的名称和选择项目保存的根路径
这里写图片描述

6.在src/main路径下新建Directory,命名为java
这里写图片描述

这里写图片描述

7.修改java文件的类型
这里写图片描述

按照图中1-2-3的顺序点击,即可改变java文件的类型
这里写图片描述

8.在java文件创建com.my.mybatis包,并在com.my.mybatis包的目录下创建controller,service,pojo,mapper包,在sources文件中创建mybatis文件夹和application.yml文件, 在sources/mybatis文件夹创建mappers文件夹和mybatis-config.xml文件
这里写图片描述

9.编辑mybatis-config.xml

<?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>

	<settings>
		<!-- 开启驼峰自动映射 -->
		<setting name="mapUnderscoreToCamelCase" value="true" />
	</settings>
</configuration>

10.修改pom.xml文件
a.删除原文件中的内容
b.新增如下内容

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.9.RELEASE</version>
    <relativePath/><!--lookupparentfromrepository-->
  </parent>

  <!--配置字符集都为UTF-8一般条件下不会出现中文乱码-->
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.7</java.version>
  </properties>

  <!--引入tomcat插件-->
  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

c.在标签中新增如下代码

<!--表示引入web的配置引入该jar包才能实现浏览器访问-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
    </dependency>

    <!--整合mybatis-->
    <dependency>
      <groupId>org.mybatis.spring.boot</groupId>
      <artifactId>mybatis-spring-boot-starter</artifactId>
      <version>1.3.1</version>
    </dependency>

      <!--使用Springboot默认的Tomcat-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-tomcat</artifactId>
    </dependency>

    <!-- 配置springboot jsp功能 -->
   <dependency>
  	<groupId>org.apache.tomcat.embed</groupId>
  	<artifactId>tomcat-embed-jasper</artifactId>
  	<version>8.5.6</version>
   </dependency>
   <dependency>
  	<groupId>javax.servlet.jsp.jstl</groupId>
  	<artifactId>jstl-api</artifactId>
  	<version>1.2</version>
  	<exclusions>
  		<exclusion>
  			<groupId>javax.servlet</groupId>
  			<artifactId>servlet-api</artifactId>
 		 </exclusion>
  		<exclusion>
	  		<groupId>javax.servlet.jsp</groupId>
  			<artifactId>jsp-api</artifactId>
		</exclusion>
  	</exclusions>
   </dependency>
   
   <dependency>
  	<groupId>org.glassfish.web</groupId>
  	<artifactId>jstl-impl</artifactId>
 	 <version>1.2</version>
  	<exclusions>
  		<exclusion>
  			<groupId>javax.servlet</groupId>
  			<artifactId>servlet-api</artifactId>
  		</exclusion>
  		<exclusion>
  			<groupId>javax.servlet.jsp</groupId>
  			<artifactId>jsp-api</artifactId>
  		</exclusion>
  		<exclusion>
  			<groupId>javax.servlet.jsp.jstl</groupId>
  			<artifactId>jstl-api</artifactId>
  		</exclusion>
 	 </exclusions>
   </dependency>
   <dependency>
  	<groupId>org.slf4j</groupId>
  	<artifactId>slf4j-log4j12</artifactId>
  	<scope>provided</scope>
   </dependency>
   <!-- 配置springboot jsp功能 结束 -->

11.在controller文件夹中新建UserController的Java Class文件,编写代码

@Controller //添加Controller注解
public class UserController {

    @Autowired //添加自动注入注解
    private UserService userService;

    @RequestMapping("/findUserList") //添加RequestMapping注解
    public String findUserList(Model model){

        List<User> userList = userService.findUserList();//获取userList集合
        model.addAttribute("userList",userList);//将userList保存到request域中
        //跳转回用户列表页面   
        //根据application.yml中mvc设置的前缀和后缀进行拼接
        //本例中拼接后为"/WEB-INF/findUserList.jsp"
        return "userList"; 
    }
}

12.在service包中创建UserService的java class文件,"Kind"属性选择Interface
这里写图片描述
编写代码

public interface UserService {
    public List<User> findUserList();
}

13.在service包中创建UserServiceImpl的java class文件,"Kind"属性选择Class,编写代码

@Service //添加Service注解
public class UserServiceImpl implements UserService{//实现UserService接口

    @Autowired //添加自动注入注解
    private UserMapper userMapper;

    @Override
    public List<User> findUserList() {
        return userMapper.findUserList(); //获取userList
    }
}

14.在mapper包中创建UserMapper的Java Class文件,“Kind”属性选择Interfaces,编写代码

public interface UserMapper {
    public List<User> findUserList();
}

15.在src/main/resources/mybatis/mappers文件中创建UserMapper.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.my.mapper.UserMapper">
	<!--namespce中值为序号14中创建的UserMapper文件在当前项目中路径 -->

    <!--配置别名包 否则不生效-->
    <select id="findUserList" resultType="User">
	    <!-- id的值与mapper包中的UserMapper方法名一致 -->
        select * from user
    </select>
</mapper>

16.在pojo中创建User的Java Class文件,编写代码

public class User {
	//根据数据库中user表中的列名创建User的属性,并添加set和get方法
    private Integer id; 
    private String name;
    private Integer age;
    private String sex;

    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 Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }
}

17.编辑src/main/resources/application.yml文件

server:
  port: 8090          #tomcat的运行端口号
  context-path: /     #匹配规则
spring:
  datasource:         #设置数据库连接池
    driver-class-name: com.mysql.jdbc.Driver       #mysql数据库的驱动
    url: jdbc:mysql://localhost:3306/springboot    #连接本地mysql数据库中springboot数据库
    username: root                                 #数据库的连接名称
    password: root                                 #与连接名称对应的密码
  mvc:               #设置mvc
    view:
      prefix: /WEB-INF/  #前缀
      suffix: .jsp       #后缀
mybatis:
  config-location: classpath:/mybatis/mybatis-config.xml
  mapper-locations: classpath:/mybatis/mappers/*.xml
  type-aliases-package: com.my.pojo 

18.在src/main/webapp/WEB-INF中创建userList.jsp,编写代码

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>您好</title>
</head>
<body>
	<table border="1px" width="65%" align="center">
		<tr>
			<td colspan="6" align="center"><h3>用户信息</h3></td>
		</tr>
		<tr>
			<th>编号</th>
			<th>姓名</th>
			<th>年龄</th>
			<th>性别</th>
			<th></th>
		</tr>
		
		<c:forEach items="${userList}" var="u">
			<tr>
				<th>${u.id}</th>
				<th>${u.name}</th>
				<th>${u.age}</th>
				<th>${u.sex}</th>
				<th>
					<a href="${pageContext.request.contextPath}/toUpdateUser?id=${u.id}"><button>修改</button></a>
					<a href="${pageContext.request.contextPath}/deleteUser?id=${u.id}"><button>删除</button></a>
				</th>
			</tr>
		</c:forEach>
		<tr align="center">
			<td></td>
			<td></td>
			<td><a href="${pageContext.request.contextPath}/toAddUser"><button>添加用户</button></a></td>
			<td><input type="button" id="delUser" value="删除选中用户"/></td>
			<td></td>
		</tr>
	</table>
</body>
</html>

19.配置并启动tomcat
a.点击图中框中下三角
这里写图片描述
b.点出弹出的Edit……
这里写图片描述
c.点出左上角中的绿色“+”号,在弹出的下拉框中选择Spring Boot
这里写图片描述
d.弹出窗口中填写名称和选择入口程序
这里写图片描述
e.点出图中绿色三角图标,启动tomcat
这里写图片描述

20.在浏览器中输入localhost:8090/findUserList,显示如下页面,显示内容与数据库中内容一致,说明整合SpringBoot整合mybatis成功
这里写图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值