JavaWeb基础第二章(Maven项目与MyBatis 的快速入门与配置)

简介: JavaWeb基础第二章(Maven项目与MyBatis 的快速入门与配置)

在快速迭代和竞争激烈的现代软件开发中,有效管理项目构建和依赖关系至关重要。Maven,作为一个项目管理工具,不仅提高了开发效率,还提供了一个标准化建筑的平台。在本篇博客中,我们将深入探索Maven的奥秘,从maven的总体理解到Apache Maven的项目对象模型(POM),再到具体的安装配置流程,每一步都将简化开发者对于复杂项目结构的理解与操作。此外,我们还会探讨MyBatis框架的引入及其好处,如何通过它简化JDBC开发,并使数据持久层的工作变得更加直观易懂。这些工具无疑会对你的Java开发旅程产生积极的推动效果。让我们现在就开始这场关于提高项目管理效率和简化数据库操作的精彩旅程吧。

一、Maven 概括

二、Apache Maven 简介

Apache Maven是一个项目管理和构建工具,他是基于项目对象模型(POM)的概念,通过一下段描述信息来管理项目的构建、报告、文档。

官网:https://maven.apache.org/

三、Maven 安装配置

阿里云私服于2022年换了地址所以第四步的子标签换成了如下代码:

<mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>https://maven.aliyun.com/repository/public</url>
   </mirror>

或者不用阿里云,跳过第4步。

四、Maven 基本使用

五、IDEA 配置 Maven项目

六、IDEA 导入 Maven项目

七、依赖管理

八、依赖范围

九、MyBatis概括

MyBatis是一款优秀的持久层框架,用于简化JDBC开发

官网:https://mybatis.net.cn/

持久层

负责将数据保存到数据库的那一层代码

JavaEE三层构架:表现层、业务层、持久层

框架

十、使用MyBatis的好处

MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

十一、MyBatis 的快速入门与配置

1.创建user表,添加数据

create table user
(
    id       int auto_increment,
    username VARCHAR(20) null,
    password VARCHAR(20) null,
    gender   char        null,
    addr     VARCHAR(30) null
);
insert into  user values (1,'张三','123','男','北京');
insert into  user values (2,'李四','456','女','上海');
insert into  user values (3,'王五','789','男','深圳');

2.创建模块,导入坐标

<dependencies>
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.2.1</version>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.46</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.13</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-core</artifactId>
      <version>1.2.3</version>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.2.3</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.20</version>
    </dependency>
  </dependencies>

3/4.MyBatis核心配置文件

mybatis-config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"/>
                <property name="url" value="jbdc:mysql:///mybatis?useSSL=false"/>
                <property name="username" value="${root}"/>
                <!--        密码自己写,这里我写成了********-->
                <property name="password" value="${*******}"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
<!--        加载sql的映射文件-->
        <mapper resource="UserMapper.xml"/>
    </mappers>
</configuration>

UserMapper.xml

<?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">
<!--        namespace:名称空间-->
<mapper namespace="test">
    <select id="selectAll" resultType="JavaWeb.User">
        select * from user;
    </select>
</mapper>

5.编码

package JavaWeb;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    public class MyBatisDemo {
        public static void main(String[] args) throws IOException {
            // 1.加载MyBatis配置文件
            // 2.获取SqlSessionFactory对象
            String resource = "mybatis-config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);
            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            // 3.获取SqlSession对象
            SqlSession sqlSession = sqlSessionFactory.openSession();
            // 4.执行映射文件中的SQL语句
            List<User>users = sqlSession.selectList("test.selectAll");
            System.out.println(users);
            // 5.关闭SqlSession
            sqlSession.close();
        }
}


相关文章
|
2月前
|
存储 Java Linux
【Maven】——基础入门,插件安装、配置和简单使用,Maven如何设置国内源
Maven插件安装,Maven项目构建,依赖管理,Haven Help插件,Maven仓库,Maven如何设置国内源
|
3月前
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
92 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
3月前
|
Java Maven
maven项目的pom.xml文件常用标签使用介绍
第四届人文,智慧教育与服务管理国际学术会议(HWESM 2025) 2025 4th International Conference on Humanities, Wisdom Education and Service Management
262 8
|
3月前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
335 3
|
4月前
|
缓存 IDE Java
idea的maven项目打包时没有source下的文件
【10月更文挑战第21天】idea的maven项目打包时没有source下的文件
187 1
|
4月前
|
Java API Apache
除了 Maven,还有哪些工具可以管理项目的依赖和版本冲突
除了Maven,常用的项目依赖管理和版本冲突解决工具有Gradle、Ivy、Ant+Ivy、SBT等。这些工具各有特点,适用于不同的开发环境和需求。
288 2
|
Java 数据库连接 mybatis
MyBatis-Spring配置简单了解
在基本的 MyBatis 中,session 工厂可以使用 SqlSessionFactoryBuilder 来创建。而在 MyBatis-spring 中,则使用 SqlSessionFactoryBean 来替代。
892 0
|
12天前
|
前端开发 Java 数据库连接
Java后端开发-使用springboot进行Mybatis连接数据库步骤
本文介绍了使用Java和IDEA进行数据库操作的详细步骤,涵盖从数据库准备到测试类编写及运行的全过程。主要内容包括: 1. **数据库准备**:创建数据库和表。 2. **查询数据库**:验证数据库是否可用。 3. **IDEA代码配置**:构建实体类并配置数据库连接。 4. **测试类编写**:编写并运行测试类以确保一切正常。
27 2
|
4月前
|
Java 数据库连接 Maven
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和MyBatis Generator,使用逆向工程来自动生成Java代码,包括实体类、Mapper文件和Example文件,以提高开发效率。
189 2
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
|
4月前
|
SQL JSON Java
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和PageHelper进行分页操作,并且集成Swagger2来生成API文档,同时定义了统一的数据返回格式和请求模块。
122 1
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块