• 创建一个springboot项目并加入mybatis


    1、创建springboot项目

     

    在这里,如果新建项目面板看不见spring initializr 选项,你可能用的是社区版本,在网上查查社区版怎么创建springboot项目吧,要下载一个插件就可以了

     创建好了:

    2、添加controller:

    1. package com.example.demos.controller;
    2. import com.alibaba.fastjson.JSONObject;
    3. import com.example.demos.service.IMainService;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Controller;
    6. import org.springframework.web.bind.annotation.*;
    7. import javax.servlet.http.HttpServletRequest;
    8. import javax.servlet.http.HttpServletResponse;
    9. import java.io.IOException;
    10. import java.util.List;
    11. import java.util.Map;
    12. @Controller
    13. @RequestMapping(value = "/main")
    14. public class MainController {
    15. @Autowired
    16. private IMainService mainService;
    17. @RequestMapping(value = "/getdatademo", method = RequestMethod.GET, produces = "application/json;charset=UTF-8")
    18. @ResponseBody
    19. public String getCode(HttpServletResponse response) throws IOException
    20. {
    21. // 返回
    22. JSONObject result = new JSONObject();
    23. result.put("msg", "ok");
    24. result.put("method", "@ResponseBody");
    25. result.put("data", "这是测试返回数据");
    26. return result.toJSONString();
    27. }
    28. //上面的返回是正常的,下面就返回mybatis从数据库里面获取的数据
    29. @RequestMapping(value = "/getdatalog", method = RequestMethod.GET, produces = "application/json;charset=UTF-8")
    30. @ResponseBody
    31. public String getdatalog(HttpServletResponse response) throws IOException
    32. {
    33. // 返回
    34. JSONObject result = new JSONObject();
    35. result.put("msg", "ok");
    36. result.put("method", "@ResponseBody");
    37. //result.put("data", "这是测试返回数据");
    38. List<Map<String,Object>> items=mainService.selectDataList();
    39. result.put("data", items);
    40. return result.toJSONString();
    41. }
    42. }

    这样就可以为前台服务了。

    3、添加service接口和实现类

    1. package com.example.demos.service;
    2. import java.util.List;
    3. import java.util.Map;
    4. public interface IMainService {
    5. //采用接口方式是有利于软件分层,协同开发。
    6. /**
    7. * 这里用map返回是暂时简化编程,不用对象,让你先看明白
    8. * @return
    9. */
    10. List<Map<String,Object>> selectDataList();
    11. }
    1. package com.example.demos.service.impl;
    2. import com.example.demos.mapper.MainMapper;
    3. import com.example.demos.service.IMainService;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Service;
    6. import java.util.List;
    7. import java.util.Map;
    8. //添加Service注解,这样@Autoware能自动找见框架创建的这个服务的实例
    9. @Service
    10. public class MainService implements IMainService {
    11. @Autowired
    12. private MainMapper mainMapper;
    13. @Override
    14. public List> selectDataList() {
    15. return mainMapper.selectDataList();
    16. }
    17. }

    3、添加mybatis接口和xml文件

    1. package com.example.demos.mapper;
    2. import org.apache.ibatis.annotations.Mapper;
    3. import java.util.List;
    4. import java.util.Map;
    5. import org.apache.ibatis.annotations.Param;
    6. @Mapper
    7. public interface MainMapper {
    8. List> selectDataList();
    9. }
    1. "1.0" encoding="UTF-8"?>
    2. mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    3. <mapper namespace="com.example.demos.mapper.MainMapper">
    4. <select id="selectDataList" resultType="java.util.Map">
    5. select * from sys_menu
    6. select>
    7. mapper>

    4、总体文件情况:

     5、配置一下配置文件application.properties

    # ???
    spring.application.name=springDemo1
    # ??
    server.port=8093
    # ?????
    spring.datasource.url=jdbc:mysql://127.0.0.1:3306/demobase20220913?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
    spring.datasource.username=root
    spring.datasource.password=123456
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    
    # ??mapper???????????????mapper???????????????mapper
    mybatis.mapperLocations=classpath:/mapper/*.xml
    mybatis.type-aliases-packsge=com.jjl.pojo
    
    # ??????
    spring.thymeleaf.prefix=classpath:/templates/

    这样,项目就可以开始运行了。前台页面我没加,现在都用vue页面,可以参考我的博文,建立vue页面来访问后台页面。

    本教程demo附件:

    https://download.csdn.net/download/axe6404/86538924

  • 相关阅读:
    2023-09-23力扣每日一题
    「视界无垠 音聚而生」2022 网易音视频技术大会成功举办,共话音视频发展的无限可能
    「架构师合集」
    【零基础学习03】嵌入式linux驱动中自旋锁功能基本实现
    多线程顺序运行的几种方法,面试可以随便问
    【python自动化】playwright长截图&切换标签页&JS注入实战
    暂停数据迁移任务
    运动耳机品牌排行榜前十名有哪些,2022年六款运动耳机值得入手
    layui在上传图片在前端处理图片压缩
    Android Studio 的六种基本布局
  • 原文地址:https://blog.csdn.net/axe6404/article/details/126838679