酒店客房管理系统 MyBatis 映射文件示例
<?xml version='1.0' encoding='utf-8' ?>
<!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN'
'http://mybatis.org/dtd/mybatis-3-mapper.dtd' >
<mapper namespace='cn.smbms.dao.ClientDao'>
<resultMap id='baseResultMap' type='cn.smbms.pojo.Client'>
<result column='id' jdbcType='INTEGER' property='id' />
<result column='roomId' jdbcType='INTEGER' property='roomId' />
<result column='name' jdbcType='VARCHAR' property='name' />
<result column='sex' jdbcType='VARCHAR' property='sex' />
<result column='phone' jdbcType='VARCHAR' property='phone' />
<result column='age' jdbcType='VARCHAR' property='age' />
<result column='addr' jdbcType='VARCHAR' property='addr' />
<association property='room' javaType='cn.smbms.pojo.Room'>
<result column='roomId' property='roomId' />
<result column='price' property='price' />
<result column='type' property='type' />
<result column='area' property='area' />
<result column='total' property='total' />
<result column='address' property='address' />
<result column='roomDescribe' property='roomDescribe' />
<result column='categoryId' property='categoryId' />
</association>
</resultMap>
<!-- 查询所有 客户-->
<select id='selectAllClient' resultMap='baseResultMap'>
select * from client a left join room b on a.roomId=b.roomId
</select>
<!--id查询-->
<select id='selectById' resultType='cn.smbms.pojo.Client'>
select * from client where id=#{id}
</select>
<!--更新-->
<update id='updClientById' parameterType='cn.smbms.pojo.Client'>
update client set roomId=#{roomId},name=#{name},sex=#{sex},age=#{age},phone=#{phone},addr=#{addr} where id=#{id}
</update>
<!--新增-->
<insert id='insertClient' parameterType='cn.smbms.pojo.Client'>
INSERT INTO client(roomId,name,sex,age,phone,addr)
VALUES (#{roomId},#{name},#{sex},#{age},#{phone},#{addr})
</insert>
<!--前台登录-->
<select id='LoginClient' parameterType='Client' resultType='cn.smbms.pojo.Client'>
select *
from users
where userId=#{userId}
and passWord =#{passWord}
</select>
<!--前台注册-->
<insert id='RegisterClient' parameterType='Client'>
INSERT INTO users(userId,passWord)
VALUES (#{userId},#{passWord})
</insert>
</mapper>
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd'>
<mapper namespace='cn.smbms.dao.InformationsDao'>
<!--查询-->
<select id='findInformations' resultType='cn.smbms.pojo.Informations'>
select * from smbms_provider
</select>
</mapper>
<?xml version='1.0' encoding='utf-8' ?>
<!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd' >
<mapper namespace='cn.smbms.dao.MyFileDao'>
<insert id='insertFile' parameterType='cn.smbms.pojo.MyFile'>
INSERT INTO myfile(fileTitle,fileUrl)
VALUES (#{fileTitle},#{fileUrl})
</insert>
</mapper>
<?xml version='1.0' encoding='utf-8' ?>
<!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd' >
<mapper namespace='cn.smbms.dao.RoomDao'>
<resultMap id='baseResultMap' type='cn.smbms.pojo.Room'>
<result column='roomId' jdbcType='INTEGER' property='roomId' />
<result column='price' jdbcType='VARCHAR' property='price' />
<result column='type' jdbcType='VARCHAR' property='type' />
<result column='area' jdbcType='VARCHAR' property='area' />
<result column='address' jdbcType='VARCHAR' property='address' />
<result column='total' jdbcType='VARCHAR' property='total' />
<result column='roomDescribe' jdbcType='VARCHAR' property='roomDescribe' />
<result column='categoryId' jdbcType='INTEGER' property='categoryId' />
<association property='category' javaType='cn.smbms.pojo.Category'>
<result column='categoryId' property='categoryId' />
<result column='categoryName' property='categoryName' />
</association>
</resultMap>
<!-- 查询所有 房型-->
<select id='selectAllRoom' resultMap='baseResultMap'>
select * from room a left join category b on a.categoryId=b.categoryId
</select>
<!--删除-->
<delete id='deleteRoom' parameterType='Integer'>
delete from room where roomId = #{roomId}
</delete>
<!--更新-->
<update id='updRoomById' parameterType='cn.smbms.pojo.Room'>
update room set price=#{price},type=#{type},area=#{area},total=#{total},address=#{address},roomDescribe=#{roomDescribe} where roomId=#{roomId}
</update>
<!--id查询-->
<select id='selectByIdOfVue' resultType='cn.smbms.pojo.Room' parameterType='String'>
select * from room where roomId=#{roomId}
</select>
<!--id查询-->
<select id='selectById' resultType='cn.smbms.pojo.Room'>
select * from room where roomId=#{roomId}
</select>
<!--新增房型-->
<insert id='insertRoom' parameterType='cn.smbms.pojo.Room'>
INSERT INTO room(roomId,type,area,price,total,address,roomDescribe)
VALUES (#{roomId},#{type},#{area},#{price},#{total},#{address},#{roomDescribe})
</insert>
<!-- 查询所有房型前端接口-->
<select id='findAllRoomVue' resultMap='baseResultMap'>
select * from room a left join category b on a.categoryId=b.categoryId
</select>
<select id='findRoomVue1' resultType='cn.smbms.pojo.Room'>
select * from room where categoryId=#{categoryId}
</select>
<select id='findRoomVue2' resultType='cn.smbms.pojo.Room'>
select * from room where categoryId=#{categoryId}
</select>
<select id='findRoomVue3' resultType='cn.smbms.pojo.Room'>
select * from room where categoryId=#{categoryId}
</select>
<select id='findRoomVue4' resultType='cn.smbms.pojo.Room'>
select * from room where categoryId=#{categoryId}
</select>
<select id='findRoomVue5' resultType='cn.smbms.pojo.Room'>
select * from room where categoryId=#{categoryId}
</select>
</mapper>
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd'>
<mapper namespace='cn.smbms.dao.UserDao'>
<!-- 登录-->
<select id='findUser' parameterType='String' resultType='cn.smbms.pojo.User'>
select *
from user
where userName=#{userName}
and userPassword =#{userPassword}
</select>
<!--判断管理员是否存在-->
<select id='findUsersByUsername' resultType='cn.smbms.pojo.User'>
select * from user
where userName=#{userName}
</select>
<!--修改密码-->
<update id='updateUser' parameterType='cn.smbms.pojo.User' >
update user set userPassword=#{userPassword} where userName=#{userName}
</update>
</mapper>
根据代码分析,可以得到以下数据库逻辑设计:
* 用户基本信息表 (client):
* id (主键): 用户编号
* roomId: 房屋编号(外键关联 room 表的 roomId)
* name: 用户姓名
* sex: 性别
* phone: 手机号码
* age: 年龄
* addr: 地址
* 房屋信息表 (room):
* roomId (主键): 房屋编号
* price: 房价
* type: 房型
* area: 面积
* total: 总数量
* address: 地址
* roomDescribe: 房屋描述
* categoryId: 类别编号(外键关联 category 表的 categoryId)
* 类别信息表 (category):
* categoryId (主键): 类别编号
* categoryName: 类别名称
* 文件信息表 (myfile):
* fileTitle: 文件标题
* fileUrl: 文件路径
* 用户表 (users):
* userId: 用户编号
* passWord: 密码
* 管理员表 (user):
* userName: 用户名
* userPassword: 密码
**外键关系**
* client 表的 roomId 关联 room 表的 roomId
* room 表的 categoryId 关联 category 表的 categoryId
**补充说明**
* 代码中还有一些表如 `smbms_provider`,但根据代码内容无法确定其结构和与其他表的关联关系。
* 代码中使用 `Client` 和 `User` 两种类型来表示用户,可能存在不同的用户角色,需要根据具体业务需求进行区分。
* 代码中 `LoginClient` 和 `RegisterClient` 用于实现用户登录和注册功能,需要根据具体需求选择合适的数据库操作方式。
以上分析仅根据代码信息进行推断,实际数据库逻辑设计可能会有所不同,需要根据具体项目需求进行调整。', 'url':
原文地址: https://www.cveoy.top/t/topic/lBpM 著作权归作者所有。请勿转载和采集!