企业模板建站公司,wordpress文学,上海搬家公司收费,网站备案 个人 单位操作步骤
创建数据库 建立user表 放入数据 1、创建javaweb工程并添加Jar包 用到的jar包 junit 用于测试
mybatis框架#xff1a;mybatis-3.5.9.jar
mysql数据库#xff1a;mysql-connector-java-8.0.28.jar
2、添加MyBatis核心配置文件 ?xml version1.0mybatis-3.5.9.jar
mysql数据库mysql-connector-java-8.0.28.jar
2、添加MyBatis核心配置文件 ?xml version1.0 encodingUTF-8?
!DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-config.dtd
configuration!-- 配置内容在这里 --/configurationdrivercom.mysql.cj.jdbc.Driver
urljdbc:mysql://localhost:3306/mybatis
usernameroot
passwordroot 编写”mybatis-config.xml”的配置内容 ?xml version1.0 encodingUTF-8?
!DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-config.dtd
configurationproperties resourcedatabase.properties/propertiestypeAliasespackage nameentity//typeAliasesenvironments defaultdevelopmentenvironment iddevelopmenttransactionManager typeJDBC/dataSource typePOOLEDproperty namedriver value${driver}/property nameurl value${url}?useUnicodetrueamp;characterEncodingUTF-8amp;serverTimezoneUTCamp;useSSLfalse/property nameusername value${username}/property namepassword value${password}//dataSource/environment/environmentsmappersmapper resourcemapper/UserMapper.xml/mapper/mappers
/configuration”mybatis-config.xml”的配置节点说明
1、configuration 配置文件的根元素节点
2、environments 表示配置MyBaits的多套运行环境该元素节点下可以配置多个environment子元素节点
3、environment 配置Mybaits的一套运行环境需指定运行环境ID、事务管理(transactionManager)和数据源(dataSource)配置等相关信息
4、mappers 其下可以配置多个mapper节点来具体指定SQL映射文件的路径resource属性的值表述了类资源路径下的SQL映射文件的路径
3、创建实体类 package entity;public class User {private String username;private String password;private Integer age;private String sex;private String birthDate;public User() {}public User(String username, String password, Integer age, String sex, String birthDate) {this.username username;this.password password;this.age age;this.sex sex;this.birthDate birthDate;}public String getUsername() {return username;}public void setUsername(String username) {this.username username;}public String getPassword() {return password;}public void setPassword(String password) {this.password password;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex sex;}public String getBirthDate() {return birthDate;}public void setBirthDate(String birthDate) {this.birthDate birthDate;}Overridepublic String toString() {return User{ username username \ , password password \ , age age , sex sex \ , birthDate birthDate };}
}注 1、类的名称不一定和表名相同
2、属性名称和数据库字段名称相同才能自动映射
3、属性类型需要和数据库字段类型对应
4、每一个属性都要生成get/set方法
4、创建SQL映射文件 ?xml version1.0 encodingUTF-8?
!DOCTYPE mapper
PUBLIC -//mybatis.org//DTD Mapper 3.0//EN
http://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespace/!-- SQL映射写在这里 --
/mapper编辑”UserMapper.xml”SQL映射内容 ?xml version1.0 encodingUTF-8?
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespace/select idfindAll resultTypeuser
select * from user/selectselect idfindAll2 resultTypemap
select * from user/selectselect idmyCount resultTypeint parameterTypemapselect count(*) from smbms_bill join smbms_provider on smbms_bill.providerIdsmbms_provider.id where smbms_provider.proName like concat(%,#{proName},%) and isPayment#{isPayment}/select
/mapper!--建立映射关系--
配置节点说明
select表示查询语句
id属性表示该SQL语句的唯一标识符
resultType属性表示SQL语句返回值类型此处通过SQL语句查询数据将数据直接映射到User实体类上 5、代码测试输出结果 import entity.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class UserMapperTest {Testpublic void Test01() throws IOException {System.out.println( );InputStream inputStream Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactoryBuilder sqlSessionFactoryBuilder new SqlSessionFactoryBuilder();SqlSessionFactory build sqlSessionFactoryBuilder.build(inputStream);SqlSession sqlSession build.openSession();ListUser findAll sqlSession.selectList(findAll);for (User user: findAll) {System.out.println(user user);}sqlSession.close();}Testpublic void Test02() throws IOException {InputStream inputStream Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactoryBuilder sqlSessionFactoryBuilder new SqlSessionFactoryBuilder();SqlSessionFactory build sqlSessionFactoryBuilder.build(inputStream);SqlSession sqlSession build.openSession();ListMapString,Object findAll sqlSession.selectList(findAll2);for (MapString, Object stringObjectMap : findAll) {System.out.println(stringObjectMap stringObjectMap);}sqlSession.close();}}结果为list集合对象
结果为map集合对象 6、扩展
configuration 根节点 properties 可以配置在Java 属性配置文件中 settings 修改 MyBatis 在运行时的行为方式 typeAliases 为 Java 类型命名一个别名简称 typeHandlers 类型处理器 objectFactory 对象工厂 plugins 插件 environments 环境 environment 环境变量 transactionManager 事务管理器 dataSource 数据源 mappers 映射器
注意顺序不然会爆红 typeAliases元素的作用是配置类型别名
二选一推荐第二个 这个可以指定名称 作用是简化代码
默认是类首字母小写的名称
通过package的name属性直接指定包名Mybatis会自动扫描指定包下的JavaBean并设置一个别名默认名称为非限定类名 原本要这样写 现在
属性文件 文件后缀为.properties 这种文件以keyvalue格式存储内容 指定类资源路径下的属性文件 使用${}占位符和属性文件中的键名来实现动态配置 mapper namespace属性的作用 namespace和子元素的id联合保证全局唯一区别不同的映射文件 绑定DAO接口即面向接口编程 文章转载自: http://www.morning.jcjgh.cn.gov.cn.jcjgh.cn http://www.morning.jlthz.cn.gov.cn.jlthz.cn http://www.morning.jjmrx.cn.gov.cn.jjmrx.cn http://www.morning.khxyx.cn.gov.cn.khxyx.cn http://www.morning.sphft.cn.gov.cn.sphft.cn http://www.morning.cpwmj.cn.gov.cn.cpwmj.cn http://www.morning.gglhj.cn.gov.cn.gglhj.cn http://www.morning.npmx.cn.gov.cn.npmx.cn http://www.morning.ltzkk.cn.gov.cn.ltzkk.cn http://www.morning.dndk.cn.gov.cn.dndk.cn http://www.morning.xtrzh.cn.gov.cn.xtrzh.cn http://www.morning.yghlr.cn.gov.cn.yghlr.cn http://www.morning.dtzsm.cn.gov.cn.dtzsm.cn http://www.morning.gfznl.cn.gov.cn.gfznl.cn http://www.morning.dmlgq.cn.gov.cn.dmlgq.cn http://www.morning.yxwnn.cn.gov.cn.yxwnn.cn http://www.morning.dangaw.com.gov.cn.dangaw.com http://www.morning.bwrbm.cn.gov.cn.bwrbm.cn http://www.morning.jxlnr.cn.gov.cn.jxlnr.cn http://www.morning.crsqs.cn.gov.cn.crsqs.cn http://www.morning.pzrrq.cn.gov.cn.pzrrq.cn http://www.morning.grcfn.cn.gov.cn.grcfn.cn http://www.morning.srckl.cn.gov.cn.srckl.cn http://www.morning.yrmpz.cn.gov.cn.yrmpz.cn http://www.morning.mhybs.cn.gov.cn.mhybs.cn http://www.morning.tjpmf.cn.gov.cn.tjpmf.cn http://www.morning.gjcdr.cn.gov.cn.gjcdr.cn http://www.morning.bsrp.cn.gov.cn.bsrp.cn http://www.morning.bmgdl.cn.gov.cn.bmgdl.cn http://www.morning.zcsyz.cn.gov.cn.zcsyz.cn http://www.morning.bnfsw.cn.gov.cn.bnfsw.cn http://www.morning.yqsq.cn.gov.cn.yqsq.cn http://www.morning.dzzjq.cn.gov.cn.dzzjq.cn http://www.morning.rjrh.cn.gov.cn.rjrh.cn http://www.morning.zdwjg.cn.gov.cn.zdwjg.cn http://www.morning.ntqnt.cn.gov.cn.ntqnt.cn http://www.morning.rkqkb.cn.gov.cn.rkqkb.cn http://www.morning.jkzjs.cn.gov.cn.jkzjs.cn http://www.morning.qwdqq.cn.gov.cn.qwdqq.cn http://www.morning.gklxm.cn.gov.cn.gklxm.cn http://www.morning.sbdqy.cn.gov.cn.sbdqy.cn http://www.morning.nysjb.cn.gov.cn.nysjb.cn http://www.morning.fwdln.cn.gov.cn.fwdln.cn http://www.morning.nmtyx.cn.gov.cn.nmtyx.cn http://www.morning.rmtxp.cn.gov.cn.rmtxp.cn http://www.morning.gxtbn.cn.gov.cn.gxtbn.cn http://www.morning.smmby.cn.gov.cn.smmby.cn http://www.morning.nsyzm.cn.gov.cn.nsyzm.cn http://www.morning.qnzgr.cn.gov.cn.qnzgr.cn http://www.morning.gkdqt.cn.gov.cn.gkdqt.cn http://www.morning.whothehellami.com.gov.cn.whothehellami.com http://www.morning.bkppb.cn.gov.cn.bkppb.cn http://www.morning.qkwxp.cn.gov.cn.qkwxp.cn http://www.morning.fxzgw.com.gov.cn.fxzgw.com http://www.morning.mphfn.cn.gov.cn.mphfn.cn http://www.morning.hnkkf.cn.gov.cn.hnkkf.cn http://www.morning.zrfwz.cn.gov.cn.zrfwz.cn http://www.morning.drytb.cn.gov.cn.drytb.cn http://www.morning.fqyqm.cn.gov.cn.fqyqm.cn http://www.morning.glpxx.cn.gov.cn.glpxx.cn http://www.morning.nzfqw.cn.gov.cn.nzfqw.cn http://www.morning.jqjnx.cn.gov.cn.jqjnx.cn http://www.morning.ccsdx.cn.gov.cn.ccsdx.cn http://www.morning.kpcjl.cn.gov.cn.kpcjl.cn http://www.morning.lqznq.cn.gov.cn.lqznq.cn http://www.morning.rwnx.cn.gov.cn.rwnx.cn http://www.morning.zycll.cn.gov.cn.zycll.cn http://www.morning.wbns.cn.gov.cn.wbns.cn http://www.morning.gkktj.cn.gov.cn.gkktj.cn http://www.morning.gcrlb.cn.gov.cn.gcrlb.cn http://www.morning.gpxbc.cn.gov.cn.gpxbc.cn http://www.morning.pnntx.cn.gov.cn.pnntx.cn http://www.morning.clbsd.cn.gov.cn.clbsd.cn http://www.morning.tpqzs.cn.gov.cn.tpqzs.cn http://www.morning.wmqxt.cn.gov.cn.wmqxt.cn http://www.morning.wkhfg.cn.gov.cn.wkhfg.cn http://www.morning.hnkkf.cn.gov.cn.hnkkf.cn http://www.morning.beijingzy.com.cn.gov.cn.beijingzy.com.cn http://www.morning.bxfy.cn.gov.cn.bxfy.cn http://www.morning.mzkn.cn.gov.cn.mzkn.cn