请用Mybatis框架完成对寝室人员信息进行管理。其中,寝室人员的信息包括姓名、床位号(或学号)、性别、年龄、专业等基本信息。实现对人员信息的增加、删除、修改等基本操作。
时间: 2023-08-13 16:06:05 浏览: 45
好的,我可以给出一个简单的寝室人员信息管理系统的实现,基于MyBatis框架和MySQL数据库。这个系统可以实现对寝室人员信息的增加、删除、修改和查询等操作。下面是代码示例:
首先,我们需要定义一个Person实体类来表示寝室人员信息:
```java
public class Person {
private int id;
private String name;
private String bedNo;
private String gender;
private int age;
private String major;
// 省略getter和setter方法
}
```
接着,我们需要定义一个Mapper接口PersonMapper来操作Person实体类的数据:
```java
public interface PersonMapper {
// 增加寝室人员信息
int addPerson(Person person);
// 删除寝室人员信息
int deletePerson(int id);
// 修改寝室人员信息
int updatePerson(Person person);
// 查询寝室人员信息
Person getPerson(int id);
// 查询所有寝室人员信息
List<Person> getAllPersons();
}
```
然后,我们需要编写PersonMapper对应的XML文件PersonMapper.xml来定义SQL语句和结果映射关系:
```xml
<mapper namespace="com.example.mapper.PersonMapper">
<resultMap id="personResultMap" type="com.example.entity.Person">
<id property="id" column="id"/>
<result property="name" column="name"/>
<result property="bedNo" column="bed_no"/>
<result property="gender" column="gender"/>
<result property="age" column="age"/>
<result property="major" column="major"/>
</resultMap>
<insert id="addPerson" parameterType="com.example.entity.Person">
INSERT INTO person (name, bed_no, gender, age, major)
VALUES (#{name}, #{bedNo}, #{gender}, #{age}, #{major})
</insert>
<delete id="deletePerson" parameterType="int">
DELETE FROM person WHERE id = #{id}
</delete>
<update id="updatePerson" parameterType="com.example.entity.Person">
UPDATE person SET name = #{name}, bed_no = #{bedNo},
gender = #{gender}, age = #{age}, major = #{major}
WHERE id = #{id}
</update>
<select id="getPerson" resultMap="personResultMap" parameterType="int">
SELECT * FROM person WHERE id = #{id}
</select>
<select id="getAllPersons" resultMap="personResultMap">
SELECT * FROM person
</select>
</mapper>
```
最后,我们需要编写一个PersonService类来调用PersonMapper中的方法,实现对寝室人员信息的增删改查操作:
```java
public class PersonService {
private SqlSessionFactory sqlSessionFactory;
public PersonService() {
String resource = "mybatis-config.xml";
InputStream inputStream = null;
try {
inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
public int addPerson(Person person) {
try (SqlSession session = sqlSessionFactory.openSession(true)) {
PersonMapper mapper = session.getMapper(PersonMapper.class);
return mapper.addPerson(person);
}
}
public int deletePerson(int id) {
try (SqlSession session = sqlSessionFactory.openSession(true)) {
PersonMapper mapper = session.getMapper(PersonMapper.class);
return mapper.deletePerson(id);
}
}
public int updatePerson(Person person) {
try (SqlSession session = sqlSessionFactory.openSession(true)) {
PersonMapper mapper = session.getMapper(PersonMapper.class);
return mapper.updatePerson(person);
}
}
public Person getPerson(int id) {
try (SqlSession session = sqlSessionFactory.openSession()) {
PersonMapper mapper = session.getMapper(PersonMapper.class);
return mapper.getPerson(id);
}
}
public List<Person> getAllPersons() {
try (SqlSession session = sqlSessionFactory.openSession()) {
PersonMapper mapper = session.getMapper(PersonMapper.class);
return mapper.getAllPersons();
}
}
}
```
在实际应用中,我们还需要编写一个mybatis-config.xml文件来配置MyBatis框架和数据库连接等相关信息,这里就不再赘述。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)