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.
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('张三','zhangsan@126.com',22); insert into student(name,email,age) values('李四','lisi@126.com',21); insert into student(name,email,age) values('王五','wangwu@163.com',22); insert into student(name,email,age) values('赵六','zhaoliun@qq.com',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
3. Modify the directory
Add the missing directory , Modify directory attributes
Note here: the newly created folder should also be used as a resource, pay attention to the color of the newly added file rescoures
<!--添加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>
<!--添加资源文件的指定--> <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 <!--添加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> junit junit 4.11 test 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!

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

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

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

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

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.

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

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

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.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

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

Hot Article

Hot Tools

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
Chinese version, very easy to use

WebStorm Mac version
Useful JavaScript development tools

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver Mac version
Visual web development tools
