Springboot集成mybatis与jsp过程详解

下面详细讲解Springboot集成mybatis与jsp的过程。

环境配置

  1. 首先需要安装Java虚拟机和Maven,可以去官网下载安装。

  2. 建立一个Springboot工程,可以使用Eclipse、IntelliJ IDEA等开发工具,也可以在https://start.spring.io/官网上生成一个基本的Springboot项目。

添加依赖包

在pom.xml文件中添加以下依赖:

<dependencies>
    <!-- Springboot web模块,包含Spring MVC等组件 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!-- Mybatis依赖 -->
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>2.2.0</version>
    </dependency>

    <!-- Mysql连接驱动 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.22</version>
    </dependency>

    <!--jsp相关的依赖-->
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <version>9.0.41</version>
    </dependency>
    <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-jasper</artifactId>
        <version>9.0.41</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
</dependencies>

数据库配置

在application.properties中添加数据库相关配置:

spring.datasource.url=jdbc:mysql://localhost:3306/test?useSSL=false&characterEncoding=utf-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root

Mapper、Entity、Service、Controller开发

Entity

在src/main/java/下创建entity包,并在其中创建一个User实体类,用于存放用户的信息。

package com.example.springbootmybatisjspdemo.entity;

public class User {

    private Long id;
    private String username;
    private String password;

    public Long getId() {
        return id;
    }

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

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

Mapper

在src/main/java/下创建mapper包,并在其中创建一个UserMapper接口,用于访问数据库中的用户信息。

package com.example.springbootmybatisjspdemo.mapper;

import com.example.springbootmybatisjspdemo.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface UserMapper {

    User findByUsernameAndPassword(@Param("username") String username, @Param("password") String password);

}

Service

在src/main/java/下创建service包,并在其中创建一个UserService接口,用于访问数据库中的用户信息。

package com.example.springbootmybatisjspdemo.service;

import com.example.springbootmybatisjspdemo.entity.User;

public interface UserService {

    User findByUsernameAndPassword(String username, String password);

}

在service包下创建一个UserServiceImpl实现类,用于具体实现UserService接口中的方法。

package com.example.springbootmybatisjspdemo.service.impl;

import com.example.springbootmybatisjspdemo.entity.User;
import com.example.springbootmybatisjspdemo.mapper.UserMapper;
import com.example.springbootmybatisjspdemo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private UserMapper userMapper;

    @Override
    public User findByUsernameAndPassword(String username, String password) {
        return userMapper.findByUsernameAndPassword(username, password);
    }
}

Controller

在src/main/java/下创建controller包,并在其中创建一个UserController类,用于接收前端的请求,并返回响应结果。

package com.example.springbootmybatisjspdemo.controller;

import com.example.springbootmybatisjspdemo.entity.User;
import com.example.springbootmybatisjspdemo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class UserController {

    @Autowired
    private UserService userService;

    @RequestMapping("/login")
    public String login(String username, String password, ModelMap modelMap) {
        User user = userService.findByUsernameAndPassword(username, password);
        if (user !=  null) {
            modelMap.put("user", user);
            return "success";
        } else {
            return "error";
        }
    }

}

JSP页面开发

在src/main/webapp/下创建jsp/login.jsp文件,用于接收用户输入的用户名和密码,并发送给后台进行验证。

<!DOCTYPE html>
<html>
<head>
  <title>Login Page</title>
</head>
<body>
  <h1>Login Page</h1>
  <form action="/login" method="post">
    <p>Username: <input type="text" name="username" /></p>
    <p>Password: <input type="password" name="password" /></p>
    <p><input type="submit" value="Login" /></p>
  </form>
</body>
</html>

在src/main/webapp/下创建jsp/error.jsp文件,用于在用户输入的用户名和密码不正确时显示错误信息。

<!DOCTYPE html>
<html>
<head>
  <title>Error</title>
</head>
<body>
  <h1>Error</h1>
  <p>Invalid username or password.</p>
</body>
</html>

在src/main/webapp/下创建jsp/success.jsp文件,用于在用户输入的用户名和密码正确时显示成功信息。

<!DOCTYPE html>
<html>
<head>
  <title>Success</title>
</head>
<body>
  <h1>Success</h1>
  <p>Welcome, ${user.username}!</p>
</body>
</html>

在application.properties中添加JSP视图解析器的相关配置:

spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp

运行程序

  1. 在命令行中进入到项目的根目录中。

  2. 执行以下命令进行项目的打包:

mvn package

  1. 打包完成后,执行以下命令启动Springboot应用程序:

java -jar target/springboot-mybatis-jsp-demo-0.0.1-SNAPSHOT.jar

  1. 在浏览器中输入http://localhost:8080/login,即可看到登录页面。

示例1:使用IntelliJ IDEA中的Springboot插件进行项目的启动。

示例2:使用Maven命令进行项目的启动。

以上就是Springboot集成mybatis与jsp过程的详细攻略,希望能够对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Springboot集成mybatis与jsp过程详解 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • Spring Data Jpa框架最佳实践示例

    下面是针对“Spring Data JPA框架最佳实践示例”的详细攻略。 1. 简介 Spring Data JPA 旨在为JPA 提供更加方便的数据访问和处理方式。通过Spring Data JPA,我们可以减少很多代码量,这部分代码通常是模板式重复的。这样我们的代码可以更加专注于业务逻辑的实现。通过以下示例,了解如何使用Spring Data JPA 完…

    Java 2023年6月2日
    00
  • java spring mvc处理器映射器介绍

    Java Spring MVC是一个非常流行的入门级Java Web框架,其最大的特点就是提供了高度的可配置性和灵活性,使得开发者可以很容易地使用IoC和AOP等高级技术。处理器映射器是Spring MVC的一部分,它充当了客户端请求和处理器的“中间人”,负责将请求映射到合适的处理器方法上。 以下是详细的“Java Spring MVC处理器映射器介绍”的攻…

    Java 2023年5月16日
    00
  • 匹配form表单中所有内容的正则表达式

    下面我就来详细讲解匹配form表单中所有内容的正则表达式攻略。 步骤一:理解需求 首先需要理解问题的需求,即需要匹配form表单中所有内容的正则表达式。这里的“所有内容”包括form标签及其所有属性,包括每一个input标签及其属性等等。 步骤二:编写匹配表单标签的正则表达式 首先需要匹配form标签,可以使用以下正则表达式: /<form.*?&gt…

    Java 2023年6月15日
    00
  • Java如何执行cmd命令

    Java可以通过Runtime类或ProcessBuilder类来执行cmd命令。 使用Runtime类执行cmd命令 Runtime类提供了用于与运行时环境进行交互的方法。通过它的exec方法可以执行给定的字符串命令,并返回表示进程的Process对象。 以下为示例代码: import java.io.*; public class CmdDemo { p…

    Java 2023年5月26日
    00
  • jsp实现文件上传下载的程序示例

    让我们来详细讲解一下“JSP实现文件上传下载的程序示例”的完整攻略。 1. 简介 JSP(Java Server Pages)是一种动态网页技术,用于在网页上生成动态内容。实现文件上传和下载是 JSP 开发中非常常见的操作,本文将详细介绍如何使用 JSP 实现文件上传和下载的功能。 2. 文件上传 文件上传是将本地文件上传到服务器的过程。 2.1. 上传表单…

    Java 2023年6月15日
    00
  • java结束进程的实例代码

    下面是“Java结束进程的实例代码”完整攻略。 标题:Java结束进程的实例代码 介绍 有时候,在Java应用程序中,我们需要结束一个进程。一种常见的情况是,当我们在一个死循环中运行代码时,我们需要手动中断程序。本文将介绍如何在Java中结束进程,并提供一些实例代码以帮助您更好地理解。 使用System.exit(int status)方法结束进程 Java…

    Java 2023年5月23日
    00
  • JSP入门教程(3)

    JSP入门教程(3)主要讲解了如何使用JSP标准标签库(JSTL)进行数据的展示和处理。具体来说,本教程包括以下几个部分: 1. 引入JSTL库 要使用JSTL库,首先需要在JSP页面中引入JSTL的标签库。代码如下: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/j…

    Java 2023年6月15日
    00
  • Spring rest接口中的LocalDateTime日期类型转时间戳

    当在Spring REST接口中使用LocalDateTime类型表示日期时,有时需要将其转换为时间戳格式(即Unix时间戳)。下面是一些步骤和示例,以帮助你完成这项任务: 1. 添加Joda-Time依赖 为了处理日期和时间,我们将使用Joda-Time库。要将其添加到Maven项目中,请将以下依赖项添加到pom.xml文件中: <dependenc…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部