1. 创建数据表 t_user(user_id,user_name,user_password,user_address,user_phone,user_card_id,user_gender,user_create_time,user_update_time) 2. entity,dao,IUserMapper.java, 实现类 UserMapper.xml 3. 完成业务: (1)根据用户名或身份证号查询用户信息 User selectUserByUsernameOrCardId(String info); (2)根据地址查询用户信息 List selectUserByAdressInfo(String keyword); (3)根据电话号查询用户名和身份证号
时间: 2023-06-23 15:08:19 浏览: 236
1. 创建数据表 t_user(user_id,user_name,user_password,user_address,user_phone,user_card_id,user_gender,user_create_time,user_update_time)
首先,我们需要在数据库中创建一个名为 t_user 的数据表,该表包含以下字段:
| 字段名 | 类型 | 描述 |
| ---------------- | --------- | ------------------- |
| user_id | int | 用户ID |
| user_name | varchar | 用户名 |
| user_password | varchar | 用户密码 |
| user_address | varchar | 用户地址 |
| user_phone | varchar | 用户电话号码 |
| user_card_id | varchar | 用户身份证号 |
| user_gender | varchar | 用户性别 |
| user_create_time | timestamp | 用户创建时间 |
| user_update_time | timestamp | 用户信息最近更新时间 |
2. entity,dao,IUserMapper.java, 实现类 UserMapper.xml
接下来,我们需要创建一个 Java 实体类 User,该类映射数据库中的 t_user 表。同时,我们还需要创建一个 DAO 层,包含 IUserMapper 接口和 UserMapper.xml 实现类。
User.java
```java
public class User {
private int userId;
private String userName;
private String userPassword;
private String userAddress;
private String userPhone;
private String userCardId;
private String userGender;
private Timestamp userCreateTime;
private Timestamp userUpdateTime;
// getters and setters
}
```
IUserMapper.java
```java
public interface IUserMapper {
User selectUserByUsernameOrCardId(String info);
List<User> selectUserByAdressInfo(String keyword);
List<Map<String, Object>> selectUsernameAndCardIdByPhone(String phone);
}
```
UserMapper.xml
```xml
<mapper namespace="com.example.mapper.IUserMapper">
<select id="selectUserByUsernameOrCardId" parameterType="string" resultType="com.example.entity.User">
SELECT * FROM t_user WHERE user_name = #{info} OR user_card_id = #{info}
</select>
<select id="selectUserByAdressInfo" parameterType="string" resultType="com.example.entity.User">
SELECT * FROM t_user WHERE user_address LIKE CONCAT('%', #{keyword}, '%')
</select>
<select id="selectUsernameAndCardIdByPhone" parameterType="string" resultType="java.util.Map">
SELECT user_name, user_card_id FROM t_user WHERE user_phone = #{phone}
</select>
</mapper>
```
3. 完成业务:
(1)根据用户名或身份证号查询用户信息
我们可以通过调用 IUserMapper 接口中的 selectUserByUsernameOrCardId 方法实现该功能。
```java
User user = userMapper.selectUserByUsernameOrCardId("张三");
```
(2)根据地址查询用户信息
我们可以通过调用 IUserMapper 接口中的 selectUserByAdressInfo 方法实现该功能。
```java
List<User> users = userMapper.selectUserByAdressInfo("北京市");
```
(3)根据电话号查询用户名和身份证号
我们可以通过调用 IUserMapper 接口中的 selectUsernameAndCardIdByPhone 方法实现该功能。
```java
List<Map<String, Object>> result = userMapper.selectUsernameAndCardIdByPhone("13888888888");
for (Map<String, Object> map : result) {
System.out.println("用户名:" + map.get("user_name") + ",身份证号:" + map.get("user_card_id"));
}
```
阅读全文