用mybatis做一个简单的查询
时间: 2023-12-26 10:06:30 浏览: 54
假设有一个用户表user,包含字段id、name、age、gender,使用Mybatis查询所有用户信息的示例代码如下:
1. 定义User类
```java
public class User {
private int id;
private String name;
private int age;
private String gender;
// 省略getter和setter方法
}
```
2. 编写Mapper接口
```java
public interface UserMapper {
List<User> findAll();
}
```
3. 编写Mapper.xml文件
```xml
<!-- 定义Mapper接口所对应的xml文件 -->
<mapper namespace="com.example.mapper.UserMapper">
<!-- 定义查询语句 -->
<select id="findAll" resultType="com.example.model.User">
SELECT * FROM user
</select>
</mapper>
```
4. 编写Mybatis配置文件
```xml
<configuration>
<!-- 数据库连接信息 -->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="password"/>
</dataSource>
<!-- Mapper文件位置 -->
<mappers>
<mapper resource="com/example/mapper/UserMapper.xml"/>
</mappers>
</configuration>
```
5. 编写测试代码
```java
public class Test {
public static void main(String[] args) {
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(Test.class.getResourceAsStream("/mybatis-config.xml"));
SqlSession sqlSession = sessionFactory.openSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List<User> userList = userMapper.findAll();
for (User user : userList) {
System.out.println(user.getName() + " " + user.getAge() + " " + user.getGender());
}
sqlSession.close();
}
}
```
以上是一个简单的Mybatis查询示例。通过定义Mapper接口和Mapper.xml文件,Mybatis可以自动生成SQL语句并执行查询操作,最终将结果映射为Java对象返回。
阅读全文