第十三周作业-1

该文详细介绍了使用Mybatis进行数据库操作的步骤,包括创建数据库和表,导入数据,建立Java项目,配置jar包,创建实体类,配置Mybatis的主配置文件和映射文件,执行SQL查询,以及实现增删查改(CRUD)操作。重点在于理解mybatis-config.xml和Category.xml的配置以及如何通过SqlSession接口进行数据库交互。
摘要由CSDN通过智能技术生成

原理示意图 

 

一)创建数据库

二)创建表

三)导入数据

四)创建java项目!! 

五)导入jar包

在项目中新建lib目录(文件夹),解压后复制到lib下

向整个java项目中导入包,右键项目,properties,在java build path中选择add external jars,导入这两个包

六)创建实体类

准备实体类Category,用于映射表category_

七)在src目录下创建mybatis的主配置文件mybatis-config.xml 

其作用主要是提供连接数据库用的驱动,数据库名称,编码方式,账号密码以及别名,自动扫描com.how2java.pojo下的类型。

使得在后续配置文件Category.xml中使用resultType的时候,可以直接使用Category,而不必写全com.how2java.pojo.Category

 映射Category.xml

<mappers>

<mapper resource="com/how2java/pojo/Category.xml"/>

</mappers>

八)配置文件 Category.xml

在包com.how2java.pojo下,新建文件Category.xml

namespace="com.how2java.pojo"


表示命名空间是com.how2java.pojo,在后续调用sql语句的时候,会用到它
里面定义了一条sql语句

select * from category_


这条sql语句用id: listCategory 进行标示以供后续代码调用。resultType="Category" 表示返回的数据和Category关联起来,这里本应该使用的是 com.how2java.pojo.Category, 但是因为上一步配置了别名,所以直接使用Category就行了

九)建一个TestMybatis类

根据配置文件mybatis-config.xml得到sqlSessionFactory 。

String resource = "mybatis-config.xml";

InputStream inputStream = Resources.getResourceAsStream(resource);

SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);


然后再根据sqlSessionFactory 得到session

SqlSession session=sqlSessionFactory.openSession();


最后通过session的selectList方法,调用sql语句listCategory。listCategory这个就是在配置文件Category.xml中那条sql语句设置的id。
执行完毕之后,得到一个Category集合,遍历即可看到数据。

List<Category> cs = session.selectList("listCategory");

for (Category c : cs) {

System.out.println(c.getName());

}

 

在此基础上 ,进行进一步的数据库增删查改操作

一)首先一次性修改配置文件Category.xml,提供CRUD对应的sql语句。

二)增加 操作

通过session.insert调用addCategory对应的SQL语句

Category c = new Category();

c.setName("新增加的Category");

session.insert("addCategory",c);

c.setName给c设置一个name属性值新增加的Category

addCategory对应的插入sql语句,#{name}会自动获取c对象的name属性值

<insert id="addCategory" parameterType="Category" >

insert into category_ ( name ) values (#{name})

</insert>

运行后结果如图: 

 

三)删除

删除id=6的对象

Category c = new Category();

c.setId(6);

session.delete("deleteCategory",c);


deleteCategory对应删除的sql语句

<delete id="deleteCategory" parameterType="Category" >

delete from category_ where id= #{id}

</delete>

 四)获取

通过session.selectOne获取id=3的记录

Category c= session.selectOne("getCategory",3);



getCategory对应的sql语句:

<select id="getCategory" parameterType="_int" resultType="Category">

select * from category_ where id= #{id}

</select>

 

五)修改

通过session.update进行修改

session.update("updateCategory",c);


updateCategory对应的sql语句:

<update id="updateCategory" parameterType="Category" >

update category_ set name=#{name} where id=#{id}

</update>

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值