search
HomeJavajavaTutorialJava Mybatis framework application example analysis

    What is the three-tier architecture

    In project development, a formal pattern is followed and is divided into three layers.

    Interface layer: Used to receive input from the client, call the business logic layer for function processing, and return the results to the client. In the past, servlets were the functions of the interface layer.

    **Business logic layer :** Used to process the business logic of the entire project, provide processing results to the interface layer upwards, and ask the data access layer downwards for data.

    Data access layer: specially used to perform addition, deletion, modification and query operations of the database , providing data upward to the business logic layer.

    Strictly comply with:

    The calling sequence between each layer is fixed, and cross-layer access is not allowed.

    Interface layer< ;------->Business logic layerData access layer

    Give a simple example: If you go to a restaurant to eat, then the first person you see Yours must be the waiter. After you order the food, the waiter goes to the chef. Before the chef cooks, he first goes to the warehouse to find materials and asks the buyer. After finding all the ingredients, the chef starts cooking, and finally the waiter will give the meal to you. What needs to be strictly observed is that customers cannot go directly to the chef, nor can they go directly to the purchaser, so the waiter, chef, and purchaser are these three layers, which correspond to the interface layer, business logic layer, and data access layer of the project development respectively.

    Java Mybatis framework application example analysis

    Commonly used SSM framework (understand)

    • Spring: It is a framework that integrates other frameworks. Its core is IOC and AOP. It consists of more than 20 modules. It provides good solutions in many fields. It is a boss-level existence.

    • SpringMVC: It is a part of the Spring family Member. Specifically used to optimize the controller (Servlet). Provides extremely simple data submission, data carrying, page jump and other functions.

    • MyBatis: is a framework of the persistence layer .Used to optimize database access. Focus on sql statements. Greatly simplify JDBC access.

    What is the framework

    It is a semi-finished software.

    Resolve all common and repetitive functions to help the program develop quickly and efficiently.

    It is reusable and extensible.

    It allows Our development is simpler and faster, focusing only on the development of main logic

    What is the Mybatis framework

    MyBatis is originally an open source project iBatis of apache. In 2010, this project was moved from the apache software foundation to google code and renamed it MyBatis. Migrated to Github in November 2013, the latest version is MyBatis 3.5.7, and its release time is April 7, 2021.

    (Key point, you may ask in the interview!!!) MyBatis has completed the optimization of the data access layer. It focuses on sql statements. It simplifies the cumbersome access mechanism of JDBC in the past.

    Add framework Steps

    • Add dependencies

    • Add configuration file: The pom.xml file is the core configuration file of Mybatis

    Specific steps:

    1. Create a new database and create a table

    #创建数据库ssm
    CREATE DATABASE ssm DEFAULT CHARSET utf8;
    #使用(打开)ssm数据库
    use ssm;
    #创建表student
    CREATE TABLE `student` (
    `id` int(11)  AUTO_INCREMENT primary key ,
    `name` varchar(255) DEFAULT NULL,
    `email` varchar(255) DEFAULT NULL,
    `age` int(11) DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    insert into student(name,email,age) values(&#39;张三&#39;,&#39;zhangsan@126.com&#39;,22);
    insert into student(name,email,age) values(&#39;李四&#39;,&#39;lisi@126.com&#39;,21);
    insert into student(name,email,age) values(&#39;王五&#39;,&#39;wangwu@163.com&#39;,22);
    insert into student(name,email,age) values(&#39;赵六&#39;,&#39;zhaoliun@qq.com&#39;,24);
    select * from student;

    2. Create a new maven project

    Select the quickstart template

    Create a new empty project, To create a module, select the maven project, select the quicstart template to create a java project

    Java Mybatis framework application example analysis

    Java Mybatis framework application example analysis

    3. Modify the directory

    Add the missing directory , Modify directory attributes

    Java Mybatis framework application example analysis

    Note here: the newly created folder should also be used as a resource, pay attention to the color of the newly added file rescoures

    Java Mybatis framework application example analysis

    Java Mybatis framework application example analysis

    ##4. Modify the pom.xml file

    Add MyBatis dependencies, add mysql dependencies

    The version selected here is not the latest. But learning is enough, and it is also relatively stable

    <!--添加MyBatis框架的依赖-->
        <dependency>
          <groupId>org.mybatis</groupId>
          <artifactId>mybatis</artifactId>
          <version>3.5.6</version>
        </dependency>
        <!--添加mysql依赖-->
        <dependency>
          <groupId>mysql</groupId>
          <artifactId>mysql-connector-java</artifactId>
          <version>5.1.32</version>
        </dependency>

    Java Mybatis framework application example analysis

    Remember to refresh after modification. Although IDEA will automatically detect the refresh, it is good to develop good habits

    5 .Modify the pom.xml file

    Add resource file specification

     <!--添加资源文件的指定-->
      <build>
        <resources>
          <resource>
            <directory>src/main/java</directory>
            <includes>
              <include>**/*.xml</include>
              <include>**/*.properties</include>
            </includes>
          </resource>
    
          <resource>
            <directory>src/main/resources</directory>
            <includes>
              <include>**/*.xml</include>
              <include>**/*.properties</include>
            </includes>
          </resource>
        </resources>
      </build>

    At this point we have completely settled the dependencies and configuration. The following is the complete pom.xml file

    
    
      4.0.0
      com.longlong
      mybatis
      1.0-SNAPSHOT
      
        UTF-8
        1.7
        1.7
      
      
        
          junit
          junit
          4.11
          test
        
        <!--添加MyBatis框架的依赖-->
        <dependency>
          <groupId>org.mybatis</groupId>
          <artifactId>mybatis</artifactId>
          <version>3.5.6</version>
        </dependency>
        <!--添加mysql依赖-->
        <dependency>
          <groupId>mysql</groupId>
          <artifactId>mysql-connector-java</artifactId>
          <version>5.1.32</version>
        </dependency>
      
      
      
        
          
            src/main/java
            
              **/*.xml
              **/*.properties
            
          
          
            src/main/resources
            
              **/*.xml
              **/*.properties
            
          
        
      
    

    The above is the detailed content of Java Mybatis framework application example analysis. For more information, please follow other related articles on the PHP Chinese website!

    Statement
    This article is reproduced at:亿速云. If there is any infringement, please contact admin@php.cn delete
    JVM performance vs other languagesJVM performance vs other languagesMay 14, 2025 am 12:16 AM

    JVM'sperformanceiscompetitivewithotherruntimes,offeringabalanceofspeed,safety,andproductivity.1)JVMusesJITcompilationfordynamicoptimizations.2)C offersnativeperformancebutlacksJVM'ssafetyfeatures.3)Pythonisslowerbuteasiertouse.4)JavaScript'sJITisles

    Java Platform Independence: Examples of useJava Platform Independence: Examples of useMay 14, 2025 am 12:14 AM

    JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunonanyplatformwithaJVM.1)Codeiscompiledintobytecode,notmachine-specificcode.2)BytecodeisinterpretedbytheJVM,enablingcross-platformexecution.3)Developersshouldtestacross

    JVM Architecture: A Deep Dive into the Java Virtual MachineJVM Architecture: A Deep Dive into the Java Virtual MachineMay 14, 2025 am 12:12 AM

    TheJVMisanabstractcomputingmachinecrucialforrunningJavaprogramsduetoitsplatform-independentarchitecture.Itincludes:1)ClassLoaderforloadingclasses,2)RuntimeDataAreafordatastorage,3)ExecutionEnginewithInterpreter,JITCompiler,andGarbageCollectorforbytec

    JVM: Is JVM related to the OS?JVM: Is JVM related to the OS?May 14, 2025 am 12:11 AM

    JVMhasacloserelationshipwiththeOSasittranslatesJavabytecodeintomachine-specificinstructions,managesmemory,andhandlesgarbagecollection.ThisrelationshipallowsJavatorunonvariousOSenvironments,butitalsopresentschallengeslikedifferentJVMbehaviorsandOS-spe

    Java: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceJava: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceMay 14, 2025 am 12:05 AM

    Java implementation "write once, run everywhere" is compiled into bytecode and run on a Java virtual machine (JVM). 1) Write Java code and compile it into bytecode. 2) Bytecode runs on any platform with JVM installed. 3) Use Java native interface (JNI) to handle platform-specific functions. Despite challenges such as JVM consistency and the use of platform-specific libraries, WORA greatly improves development efficiency and deployment flexibility.

    Java Platform Independence: Compatibility with different OSJava Platform Independence: Compatibility with different OSMay 13, 2025 am 12:11 AM

    JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunondifferentoperatingsystemswithoutmodification.TheJVMcompilesJavacodeintoplatform-independentbytecode,whichittheninterpretsandexecutesonthespecificOS,abstractingawayOS

    What features make java still powerfulWhat features make java still powerfulMay 13, 2025 am 12:05 AM

    Javaispowerfulduetoitsplatformindependence,object-orientednature,richstandardlibrary,performancecapabilities,andstrongsecurityfeatures.1)PlatformindependenceallowsapplicationstorunonanydevicesupportingJava.2)Object-orientedprogrammingpromotesmodulara

    Top Java Features: A Comprehensive Guide for DevelopersTop Java Features: A Comprehensive Guide for DevelopersMay 13, 2025 am 12:04 AM

    The top Java functions include: 1) object-oriented programming, supporting polymorphism, improving code flexibility and maintainability; 2) exception handling mechanism, improving code robustness through try-catch-finally blocks; 3) garbage collection, simplifying memory management; 4) generics, enhancing type safety; 5) ambda expressions and functional programming to make the code more concise and expressive; 6) rich standard libraries, providing optimized data structures and algorithms.

    See all articles

    Hot AI Tools

    Undresser.AI Undress

    Undresser.AI Undress

    AI-powered app for creating realistic nude photos

    AI Clothes Remover

    AI Clothes Remover

    Online AI tool for removing clothes from photos.

    Undress AI Tool

    Undress AI Tool

    Undress images for free

    Clothoff.io

    Clothoff.io

    AI clothes remover

    Video Face Swap

    Video Face Swap

    Swap faces in any video effortlessly with our completely free AI face swap tool!

    Hot Article

    Hot Tools

    mPDF

    mPDF

    mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

    SublimeText3 Chinese version

    SublimeText3 Chinese version

    Chinese version, very easy to use

    WebStorm Mac version

    WebStorm Mac version

    Useful JavaScript development tools

    Zend Studio 13.0.1

    Zend Studio 13.0.1

    Powerful PHP integrated development environment

    Dreamweaver Mac version

    Dreamweaver Mac version

    Visual web development tools