使用idea快速创建springbootWeb项目(springboot+springWeb+mybatis-Plus)

惜.己 2024-08-31 09:33:04 阅读 67

idea快速创建springbootWeb项目

详细步骤如下

1)创建项目

2)选择springboot版本

3)添加web依赖

4)添加Thymeleaf

5)添加lombok依赖

然后点击create进入下一步

双击pom.xml文件

6)添加mybatis-plus依赖        

这里使用的springboot版本比较新,mybatis-plus-boot-starter 不兼容 ,需要一下导入一下依赖

<!--导入mybatis-plus-->

<dependency>

<groupId>com.baomidou</groupId>

<artifactId>mybatis-plus-boot-starter</artifactId>

<version>3.5.7</version>

<exclusions>

<exclusion>

<groupId>org.mybatis</groupId>

<artifactId>mybatis-spring</artifactId>

</exclusion>

</exclusions>

</dependency>

<!-- mybatis-spring -->

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis-spring</artifactId>

<version>3.0.3</version>

</dependency>

依赖导入成功

7)导入mysql驱动

<dependency>

   <groupId>mysql</groupId>

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

   <version>8.0.33</version>

</dependency>

8)配置application.yml文件

把applicaiton.propitious删除创建application.yml

spring:

application:

name: xiji

datasource:

url: jdbc:mysql://localhost:3306/users?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai

username: root #数据库登录名

password: root #数据库密码

driver-class-name: com.mysql.cj.jdbc.Driver

mybatis-plus:

mapper-locations: classpath:mapper/*.xml

9)在mysql中 ==》 创建数据库users==》创建表user

CREATE TABLE `user` (

`userid` int NOT NULL AUTO_INCREMENT COMMENT '用户id',

`username` varchar(255) DEFAULT NULL COMMENT '用户名字',

`userPassword` varchar(255) DEFAULT NULL COMMENT '用户密码',

PRIMARY KEY (`userid`)

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

创建完毕之后如下

10)创建包

1.创建controller包

依次创建如下包结构

2.controller包下的代码如下

<code>package com.xiji.springbootweb.controller;

import com.xiji.springbootweb.entiy.User;

import com.xiji.springbootweb.service.UserService;

import jakarta.annotation.Resource;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.Banner;

import org.springframework.stereotype.Controller;

import org.springframework.ui.Model;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@Controller

public class UserController {

@Resource

UserService userService;

@GetMapping("/")

public String index(){

return "index";

}

@GetMapping("/list")

public String list(Model model){

List<User> list = userService.list();

model.addAttribute("list", list);

return "model";

}

}

@Controller注解用来标注controller层
@Resource用来注入容器中的组件
@Autowired 这个也可以用来注入组件

3.entiy包下的代码如下

package com.xiji.springbootweb.entiy;

import com.baomidou.mybatisplus.annotation.TableField;

import com.baomidou.mybatisplus.annotation.TableName;

import lombok.AllArgsConstructor;

import lombok.Data;

import lombok.NoArgsConstructor;

@Data

@NoArgsConstructor

@AllArgsConstructor

@TableName("user")

public class User {

@TableField("userid")

private int userid;

@TableField("username")

private String username;

@TableField("userPassword")

private String userPassword;

}

@Data用来生成get,set方法
@NoArgsConstructor用来生成无参构造方法
@AllArgsContructor用来生成全参构造
@TableName() 数据库表名
@TableField() 数据表列名

4.mapper包下的代码如下

package com.xiji.springbootweb.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import com.xiji.springbootweb.entiy.User;

import org.apache.ibatis.annotations.Mapper;

@Mapper

public interface UserMapper extends BaseMapper<User> {

}

@mapper用来标注持久层

UserMapper 继承 BaseMapper<实体> 原因里面有很多已经实现的方法

5.service包下impl包的代码如下

package com.xiji.springbootweb.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

import com.xiji.springbootweb.entiy.User;

import com.xiji.springbootweb.mapper.UserMapper;

import com.xiji.springbootweb.service.UserService;

import org.springframework.stereotype.Service;

@Service

public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {

}

@service用来表组service层的
UserServiceImpl 继承Service<Mapper,实体> 实现 UserService 原因里面有很多已经实现的方法

6.service包下的代码

package com.xiji.springbootweb.service;

import com.baomidou.mybatisplus.extension.service.IService;

import com.xiji.springbootweb.entiy.User;

public interface UserService extends IService<User> {

}

UserService继承 IService 接口

7.resource下mapper代码如下 

<?xml version="1.0" encoding="UTF-8" ?>code>

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.xiji.springbootweb.mapper.UserMapper">code>

</mapper>

8.resource下templates代码如下 

<!DOCTYPE html>

<html lang="en">code>

<head>

<meta charset="UTF-8">code>

<title>Title</title>

</head>

<body >

<div class="bgStyle">code>

<h1>这是主页</h1>

</div>

</body>

</html>

9.resource下model页的代码

<html>

<head>

<meta charset="UTF-8">code>

<meta name="viewport"code>

content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">code>

<meta http-equiv="X-UA-Compatible" content="ie=edge">code>

<title>Document</title>

</head>

<body>

<div>

<h1 > 这是list页面</h1>

<h1 th:text="${list}"></h1>code>

</div>

</body>

</html>

11)点击启动

12)访问localhost:8080

13)访问localhost:8080/list

需要自己往表中添加数据



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。