ssm框架使用resultful_ssm框架的小总结

一、mybatis框架

mybatis框架主要就是完成持久层的实现,简化了持久层的开发,

1.首先是配置文件的编写,我们这里就命名为mybatis-config.xml,先配置文件头,然后加载连接数据库的配置propersties文件,为实体类取别名省的后续在返回值的时候仍使用包名.类名的方式,下边可以设置映射级别,然后再配置数据库的连接,下边的mappers的标签中配置每一个dao接口的对应的mapper文件(注意这里使用有三种方式 class、resource)package标签的name的属性配置指定文件包下的映射文件,

/p>

PUBLIC"-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

2.映射文件,这里一般命名为***mapper.xml文件,再idea的位置是resource文件目录下,创建于dao接口同名同级的文件目录,然后导入文件头(文件约束),mapper标签中的namespace属性填写上其对应dao接口的路径,下边写每一个查询语句,select 返回数据类型可以是全限定的实体类名,也可以是前边配置的别名,这里如果是数据库的列名和实体类的字段名一致,mybatis就可以为你进行自动的映射,如果有 一对一,一对多,多对多的映射关系,就需要手动的去指定其对应关系,resultmap标签,collection一对多  association标签 多对多关系映射  ,传入的参数的属性可以不写,但是返回的值的类型就必须要写上,dml语句的返回就是int类型,所以他没有返回值的属性,这里要说下复杂的动态的SQL语句,需要用到where标签,if标签,拼接字符串用concat(‘%‘,#{id},'%')foreach遍历等

select * fromadmin

select * from admin whereusername=#{name}

select * from admin where username=#{username} and

id=#{id}

select * fromadminwhere username=#{username} and id=#{id}

select * fromadminwhere username like CONCAT('%',#{pname},'%')

select * from admin where id in

#{idarr}

select * from admin where id in

#{idList}

select * from admin where username=#{username} and password=#{password}

insert into admin (username,password)values(#{username},#{password})

deletefrom admin where id=#{id}

update adminset username =#{username} where id=#{id}

select * fromadmin

and username=#{username}

and password=#{password}

select * fromadmin

and username=#{username}

and password=#{password}

3.关于dao的接口,因为mybatis框架,所以我们不用再写复杂的实现类,只需要编写接口就行了,再向mapper文件传参数的时候,如果只有一个参数就和占位符中的名称相同就可以了,多个参数的话,就需要用到对象,集合或者map来传输数据,数组,此时需要遍历取值的就要使用  如:foreach collection="array" 这样的指定容器的类型,然后遍历。如果多个不同的参数可以使用map来指定,只要将他的键指定成占位符中的名称一致就行了,如果传入不同的参数也可以,再dao的接口传参的地方用@parma()注解指定每一个参数,但这样太麻烦,还是用map集合吧,

//根据id和name来查询对象

public Admin getAdminByNameAndId(@Param("username") String name, @Param("id") intid);//模糊查询

publicAdmin getAdminWithPnameLike(String pname);//传入数组作为参数来查询

public List getAdminWithArray(int[] idarr);//传入集合作为参数来查询

public List getAdminWithIdList(ListidList);// public Admin getAdminWithMap(Mapidmap);public intaddAdmin(Admin admin);public int delAdminById(intid);//修改用户

public int UpdateAdmin(@Param("username")String username, @Param("id")Integer id);//模糊多条件查询

public List getAllAdminInfoByFazzy(@Param("username")String username,@Param("password")Integer password);//Switch

public List getAllAdminInfoBySwitch(@Param("username")String username,@Param("password")Integer password);

4.导入依赖,mybatis用到的jar包不多

org.mybatis

mybatis

3.4.6

mysql

mysql-connector-java

8.0.15

这基本是就是mybatis的框架的基本书写流程了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值