您的位置:首页 > 财经 > 产业 > 水果网页设计模板图片_东营网站设计公司_百度短链接在线生成_市场营销方案范文5篇

水果网页设计模板图片_东营网站设计公司_百度短链接在线生成_市场营销方案范文5篇

2024/12/27 7:41:12 来源:https://blog.csdn.net/for_no_what/article/details/143879621  浏览:    关键词:水果网页设计模板图片_东营网站设计公司_百度短链接在线生成_市场营销方案范文5篇
水果网页设计模板图片_东营网站设计公司_百度短链接在线生成_市场营销方案范文5篇

        写一个注册登录的小任务,为后续自写一个云盘做准备        

       先完成一个小的注册登录的内容来熟悉整个流程,使重点更突出。

前置内容:注册登录

第一步:创建项目。

        这里使用SpringBoot和Mybaties-plus完成这个任务。这两个东西是所谓的框架。简单理解的话就是它们以包、类、函数的形式提供了很多工具,使得我们可以少进行一些简单但繁琐的工作。举例来讲的话,比如我们现在要生一个火堆,如果不用框架,我们就要自己找木头木屑,想办法钻木取火;框架的作用就是给我们提供一个打火机和木头,这样我们只需要用打火机去把木头点燃就可以了。

        在网站https://start.spring.io/中创建这个项目。这个网站创建出的项目会直接帮我们导入好一些需要用的包(框架中的工具),并配置好相关的文件。(新手不建议用IDE创建这种项目,会乱会晕)。选择

  • Spring Web
  • Spring Boot DevTools
  • Spring Data JPA
  • MySQL Driver

依赖,选择Spring Boot 3.3.5。并点击generate生成一个压缩包,解压压缩包。用IDE打开这个项目。

创建完成项目之后在pom.xml文件下找到<dependencies>标签,在他下面加入

		<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-spring-boot3-starter</artifactId><version>3.5.7</version></dependency>

然后右键点击 pom.xml 文件并选择 Maven > Reload Project。这里的目的是添加mybatis-plus依赖。Spring Initializr中并不提供这个依赖,需要我们自己手动导入。

第二步:数据库设计

这这一步中,需要完成使项目可以链接到数据库和在数据库中创建一个user表两个任务

首先我们需要下载并安装mysql(网上很多教程,百度就行)然后在项目中的.properties文件下加入

# 服务器端口
server.port=8080# 数据源配置
spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver# MyBatis-Plus 配置
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

其中三个带your的变量需要自己替换:your_database_name是指数据库的名字。建议为这个小任务新建一个数据库,即在登录数据库之后CREAT一个DATABASE出来,新建的这个DATABASE的名字就是your_database_name(如何登录mysql、如何新建数据库网上都有教程)。your_username和your_password按照自己安装mysql时的设置来。

完成之后就可以在Application文件中点击运行了,正常情况下在这里运行窗口会卡住,卡主就对了。

然后再登录数据库,选中我们创建新数据库(USE your_database_name;)来进入到我们新创建的数据库,执行如下语句

CREATE TABLE user (id BIGINT AUTO_INCREMENT PRIMARY KEY, -- 用户IDusername VARCHAR(50) NOT NULL UNIQUE, -- 用户名password VARCHAR(100) NOT NULL,       -- 密码(建议加密存储)phone VARCHAR(20) UNIQUE,             -- 手机号
);

作用是创建一个表(TABLE),表中含有ID,用户名、密码和手机号四个列。

第三步:实现后端

下面在启动项目的文件所在的文件夹下新建一个User类,一个Mapper接口。目的是可以直接在这个项目中操控这个表(免去了转到mysql的麻烦)


import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;@Data
@TableName("user")
public class User {@TableIdprivate Long id;private String username;private String password;private String phone;
}
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;@Mapper
public interface UserMapper extends BaseMapper<User> {
}

这里用到了一个东西叫做注解,关于注解可以这样简单理解:注解的作用就是把一个类当做参数,给这个类加上一些额外的方法。比如@Data,他的作用就是给User类加上getset等方法。

接下来再新建两个类和一个接口:

public interface UserService {boolean registerUser(User user);User getUserById(Long id);User login(String username, String password);
}
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;@RestController
@RequestMapping("/user")
public class UserController {private final UserService userService;@Autowiredpublic UserController(UserService userService) {this.userService = userService;}@PostMapping("/register")public String register(User user){boolean res = userService.registerUser(user);if (res){return "Registration successful!";}return "Username already exists!";}@GetMapping("/login")public String login(@RequestParam String username, @RequestParam String password) {User user = userService.login(username, password);if (user != null) {return "Login successful!";}return "Invalid username or password!";}
}
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.stereotype.Service;
@Service //这个注解将UserServiceImpl类注册到Spring容器中,这样UserService在被@Autowired注解时就可以创建这个类的实例
public class UserServiceImpl implements UserService{private final UserMapper userMapper;public UserServiceImpl(UserMapper userMapper) {this.userMapper = userMapper;}@Overridepublic boolean registerUser(User user) {QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.eq("username",user.getUsername());if (userMapper.selectOne(queryWrapper) != null){return false;}return userMapper.insert(user) > 0;}@Overridepublic User getUserById(Long id) {return userMapper.selectById(id);}@Overridepublic User login(String username, String password) {QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.eq("username", username).eq("password", password);return userMapper.selectOne(queryWrapper);}
}

这样子我们这个小项目就算完成了。在浏览器中输入localhost:8080/user/login?username=testuser&password=123456

就可以查看项目是否正常运行。

这里有一些小内容解释一下:

  • User类和UserMapper接口相当于数据库,用User来实现数据存储,用UserMapper来实现增删查改等操作
  • UserService定义我们要有哪些方法(这些方法是后端服务要用的,并不是要作用于前端的)
  • UserServiceImpl对定义的方法来具体实现
  • UserController则规定后端要给前端返回什么内容。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com