Java开发环境(JDK) Maven构建工具 MySQL数据库
步骤1:创建Maven项目 在命令行中执行以下命令,创建一个新的Maven项目:
mvn archetype:generate -DgroupId=com.example -DartifactId=mybatis-demo -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false cd mybatis-demo 步骤2:添加依赖项 在项目的pom.xml文件中添加以下依赖项:
<dependencies> <!-- Spring MVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.12.RELEASE</version> </dependency>
<!-- MyBatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.7</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.7</version> </dependency> <!-- MySQL Connector --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.27</version> </dependency>
</dependencies>
步骤3:创建数据库表和数据 在MySQL数据库中创建一个名为users的表,并插入一些示例数据,如下所示:
CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) NOT NULL, email VARCHAR(50) NOT NULL );
INSERT INTO users (username, email) VALUES ('Alice', 'alice@example.com'); INSERT INTO users (username, email) VALUES ('Bob', 'bob@example.com');
步骤4:配置MyBatis 在src/main/resources目录下创建一个名为mybatis-config.xml的文件,并添加以下内容:
<configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatis_demo?useSSL=false&serverTimezone=UTC"/> <property name="username" value="your_username"/> <property name="password" value="your_password"/> </dataSource> </environment> </environments>
<mappers> <mapper resource="com/example/mapper/UserMapper.xml"/> </mappers>
</configuration>
请确保将your_username和your_password替换为实际的数据库用户名和密码。
步骤5:创建实体类 在src/main/java/com/example/model目录下创建一个名为User.java的文件,并添加以下内容:
package com.example.model;
public class User { private int id; private String username; private String email;
// 省略构造函数、getter和setter方法
}
步骤6:创建Mapper接口 在src/main/java/com/example/mapper目录下创建一个名为UserMapper.java的文件,并添加以下内容:
package com.example.mapper;
import com.example.model.User;
public interface UserMapper { User getUserById(int id); }
步骤7:创建Mapper XML文件 在src/main/resources/com/example/mapper目录下创建一个名为UserMapper.xml的文件,并添加以下内容:
SELECT * FROM users WHERE id = #{id}
步骤8:创建控制器 在src/main/java/com/example/controller目录下创建一个名为UserController.java的文件,并添加以下内容:
package com.example.controller;
import com.example.mapper.UserMapper; import com.example.model.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable;
@Controller public class UserController { @Autowired private UserMapper userMapper;
@GetMapping("/users/{id}") public String getUserById(@PathVariable int id, Model model) { User user = userMapper.getUserById(id); model.addAttribute("user", user); return "user"; }
}
步骤9:创建视图 在src/main/webapp/WEB-INF/views目录下创建一个名为user.jsp的文件,并添加以下内容:
User Details
- Username: ${user.username}
- Email: ${user.email}
步骤10:配置Spring MVC 在src/main/webapp/WEB-INF目录下创建一个名为web.xml的文件,并添加以下内容:
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>MyBatis Demo</display-name>
<servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
</web-app>
在src/main/webapp/WEB-INF目录下创建一个名为spring-mvc-config.xml的文件,并添加以下内容:
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<mvc:annotation-driven/> <mvc:view-resolvers> <mvc:jsp prefix="/WEB-INF/views/" suffix=".jsp"/> </mvc:view-resolvers> <bean class="com.example.mapper.UserMapper" id="userMapper"/> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.example.mapper"/> </bean> <import resource="classpath:mybatis-config.xml"/>
</beans>
步骤11:运行应用程序 在命令行中执行以下命令,启动应用程序:
mvn tomcat7:run 访问http://localhost:8080/users/1,您将看到用户的详细信息。
以上是一个简单的示例,演示了如何使用MyBatis作为持久层框架,并与Spring MVC进行集成。通过这个示例,您可以更好地理解MyBatis的实现原理,并与其他框架进行比较。当然,实际的项目中可能会更加复杂,但这个示例可以作为一个起点帮助您进一步学习和使用MyBatis。