springboot+springmvc+mybatis整合demo适合入门学习示例教程

第一步    :

      idea创建一个Springboot  springMvc mybatis项目      File ->  New -> Project  ->  选择spring initializr ->  next->->next->选择web ->打勾spring web      starter->next->确认

    这样就创建好一个springboot结构项目了然后配置

第二步  :

配置依赖pom文件

          

<?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>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.5.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.1</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </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-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.10</version>
        </dependency>   <!--此处是配置lombok  让实体更方便一些吧-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.1.1</version>
        </dependency>
    </dependencies>

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

</project>

 第三步 配置application.properties

      

server.port=8080#端口号
#这里配置数据库路径注意serverTimezone这个是时区问题
spring.datasource.url=jdbc:mysql://localhost:3306/库名?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
#账号
spring.datasource.username=root
#密码
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# mybatis接口文件位置
mybatis.mapper-locations: classpath:mapper/*.xml

第四步创建包 整体结构

第五步 配置里面需要配一下DemoApplication

package com.example.demo;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan(basePackages = "com.example.demo.mapper")//扫描包
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

第六步 写POJO  

package com.example.demo.pojo;


import lombok.*;

@Data
@Builder
@AllArgsConstructor
@RequiredArgsConstructor     //这里封装用了Lombok很实用减少代码量
public class User {
    private  int userId;
    private  String userName;
}

第七步 写Mapper接口

package com.example.demo.mapper;

import com.example.demo.pojo.User;
import java.util.List;
public interface UserMapper {
    List<User> query();
}

第八步 写Mapper.xml  SQL映射userMapper接口,配置一个查询sql此id与mapper接口保持与方法名对应

<?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.mapper.UserMapper">
       <select id="query" resultType="com.example.demo.pojo.User">
            select  USER_ID as userId,USER_NAME as userName from  USER
       </select>
</mapper>

第九步 写Service     ServiceImpl

package com.example.demo.service;

import com.example.demo.pojo.User;

import java.util.List;



public interface UserService {

    List<User> query();
}

package com.example.demo.service.Impl;

import com.example.demo.mapper.UserMapper;
import com.example.demo.pojo.User;
import com.example.demo.service.UserService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;
@Service
public class UserServiceImpl implements UserService {
    @Resource
    private UserMapper UserMapper;
    @Override
    public List<User> query() {
        return UserMapper.query();
    }
}


 第十步 写controller

package com.example.demo.controller;

import com.example.demo.pojo.User;
import com.example.demo.service.UserService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.List;
@RestController
@RequestMapping("/")
public class UserController {
    @Resource
    private UserService userService;
    @RequestMapping("/user")
    @ResponseBody
    public List<User> query(){
        List<User> query = userService.query();
        System.out.println(query.size());
        for (User d:query) {
            System.out.println(  d.getUserId());
        }
        return query;
    }
}

OK结束 http://localhost:8080/user 运行浏览你可以看到你的数据了

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SpringBoot+SpringMVC+Mybatis+Thymeleaf+LayUI模板引擎可以用于开发Web应用程序,实现编辑和增加功能。下面是一个示例代码: 1. 编辑功能: ```java @Controller @RequestMapping("/edit") public class EditController { @Autowired private UserService userService; @GetMapping("/{id}") public String editUser(@PathVariable("id") int id, Model model) { User user = userService.getUserById(id); model.addAttribute("user", user); return "edit"; } @PostMapping("/{id}") public String saveUser(@PathVariable("id") int id, @ModelAttribute User user) { userService.updateUser(user); return "redirect:/user/" + id; } } ``` 2. 增加功能: ```java @Controller @RequestMapping("/add") public class AddController { @Autowired private UserService userService; @GetMapping public String addUser(Model model) { model.addAttribute("user", new User()); return "add"; } @PostMapping public String saveUser(@ModelAttribute User user) { userService.addUser(user); return "redirect:/user"; } } ``` 在Thymeleaf模板中,可以使用LayUI模板引擎来实现页面的美化和交互效果。例如,编辑页面的模板代码如下: ```html <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Edit User</title> <link rel="stylesheet" th:href="@{/layui/css/layui.css}"> </head> <body> <form class="layui-form" th:object="${user}" th:action="@{/edit/{id}(id=${user.id})}" method="post"> <div class="layui-form-item"> <label class="layui-form-label">Name</label> <div class="layui-input-block"> <input type="text" th:field="*{name}" class="layui-input"> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">Age</label> <div class="layui-input-block"> <input type="text" th:field="*{age}" class="layui-input"> </div> </div> <div class="layui-form-item"> <div class="layui-input-block"> <button class="layui-btn" lay-submit lay-filter="formDemo">Save</button> </div> </div> </form> <script src="/layui/layui.js"></script> </body> </html> ``` 在上述代码中,使用了Thymeleaf的表达式语法来绑定表单数据和提交地址。同时,引入了LayUI的样式和脚本文件,实现了表单的美化和提交按钮的交互效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值