springboot+springmvc+mybatis+idea整合

这篇教程详细介绍了如何在Idea中使用Maven搭建一个SpringBoot、SpringMVC和MyBatis整合的项目。教程中提到,创建项目时无需选择archetype,然后逐步指导新建文件夹和配置文件,包括pom.xml、Mapper、Service、Controller等关键组件。同时,提到了访问路径、JDK版本要求以及作者的联系方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先我的教程非常详细安照流出配置即可本教程适合idea的maven 环境完全搭好的环境

第一步创建一个maven工程
在这里插入图片描述

新的改变

1.不用勾选Create from archetype
2.点击new
3.编写项目名
在这里插入图片描述
4.点击new

在这里插入图片描述
5.点击Finish
6.项目目录
在这里插入图片描述
2. **全新的配置设计
**1.新建文件夹
在这里插入图片描述
2.建好所有文件夹和文件

在这里插入图片描述

pom.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>cn.tx</groupId>
    <artifactId>tx_springboot_user</artifactId>
    <version>1.0-SNAPSHOT</version>
    <!--父坐标-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.5.RELEASE</version>
        <relativePath/>
    </parent>
    <dependencies>
        <!--lo4j-->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.12</version>
        </dependency>
        <!--消息转换器-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.47</version>
        </dependency>
        <!--spring整合mybatis-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>
        <!--springmvc-->
        <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>org.springframework.boot</groupId>
            <artifactId>spring-boot-detools</artifactId>
            <optional>true</optional>
        </dependency>
        <!--模块thymeleaf-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <!--Mysql连接jar-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

         <dependency>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-configuration-processor</artifactId>
              <optional>true</optional>
          </dependency>
    </dependencies>


        <build>
           <plugins>
               <plugin>
                   <groupId>org.springframework.boot</groupId>
                   <artifactId>spring-boot-maven-plugin</artifactId>
               </plugin>
           </plugins>

        </build>

所有文件配置

1.DmoController类

package cn.tx.controller;

import cn.tx.domain.Demo;
import cn.tx.service.DemoService;
import cn.tx.service.DemoServiceM;
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.RestController;

import java.util.List;

@Controller
@RequestMapping("/demo")
public class DmoController {
     @Autowired
    private DemoServiceM demoService;

     @RequestMapping("/findAll")
    public List<Demo> findAll(){
         return demoService.findAll();

     }
    @RequestMapping("/login")
    public String login(){
        return "/login";
    }

    @RequestMapping("/logins")
    public String logins(String name){
System.out.println(name+"------------------------------------");
        Demo demo=demoService.findAllLogin(name);
         if(demo !=null){
             return "/index";
         }else{
             return "/login";
         }

    }
}

2.DemoMapper类

package cn.tx.dao;

import cn.tx.domain.Demo;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper//可以扫描mapper
public interface DemoMapper {
     public List<Demo> findAll();

     public Demo findAllLogin(String name);
}

3.Demo实体类

package cn.tx.domain;

public class Demo {
    private int id;
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }
}

4.DemoService类

package cn.tx.service;

import cn.tx.domain.Demo;

import java.util.List;

public interface DemoService {
    public List<Demo> findAll();
    public Demo findAllLogin(String name);
}

5.DemoServiceM类

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.List;
@Service

@Transactional//事物的注解
public class DemoServiceM implements DemoService {
    @Resource
    private DemoMapper demoMapper;

    @Override
    public List<Demo> findAll() {
        return demoMapper.findAll();
    }

    @Override
    public Demo findAllLogin(String name) {
        return demoMapper.findAllLogin(name);
    }

6.DemoApplication类

package cn.tx;

import cn.tx.domain.Demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] arg){
        SpringApplication.run(DemoApplication.class,arg);
    }
}

7.UserMapper.xmlSQL配置

<?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="cn.tx.dao.DemoMapper">
    <select id="findAll" resultType="Demo">
         select * from demo;
    </select>
    <select id="findAllLogin" resultType="Demo" parameterType="String">
        select*from demo where  name=#{name}
    </select>
</mapper>

8.index.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>登录成功</h1>
</body>
</html>

9.login.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
 <form th:action="@{/demo/logins}" method="post">
     <table>

         <tr>
             <td>姓名:</td>
             <td><input  type="text" name="name" value=""/></td>
         </tr>

         <tr>
             <td><input type="submit"/></td>
         </tr>
     </table>
 </form>
</body>
</html>

10.success.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">

<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Title</title>
</head>
<body>
<!--<span th:text="${hello }"></span>
<span th:text="${a.getUsername() }"></span>-->

<form th:action="@{/upload}" method="post" enctype="multipart/form-data" >
    <input name="pic" type="file">
    <input type="submit" value="确定">
</form>

</body>
</html>

11.application.yml核心配置一般springboot自动帮你配置了但是数据库无法配置springboot共有3种配置文件类型可配置
核心的配置yml只是其中一种而已但是yml可读性强

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/stum
    username: root
    passwrod:
mybatis:
  mapper-locations: classpath:mappers/*.xml
  type-aliases-package: cn.tx.domain
server:
  port: 8888

需要注意的事情

1.http://localhost:8888/demo/login我的访问路径供参考
2.jdk最后1.7以上idea的11也可以反正我这没问题

个人介绍

我叫周松,各位看官叫我小周就好本人QQ1017381567,不懂的可以问我

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值