springBoot中使用mybatis入门笔记(一)
前言:
这是一篇mybatis入门级别的文章,包含一些mybatis的配置,以及CRUD等。mybatis集成
1。引入依赖。在项目pom文件引入mybatis的相关依赖。如mysql驱动dependenciesdependencygroupIdmysqlgroupIdmysqlconnectorjavaartifactIdversion8。0。20versiondependencydependencygroupIdorg。mybatisgroupIdmybatisartifactIdversion3。5。5versiondependencydependencygroupIdorg。projectlombokgroupIdlombokartifactIdversion1。18。12versiondependencydependencygroupIdjunitgroupIdjunitartifactIdversion4。12versionscopetestscopedependencydependencygroupIdlog4jgroupIdlog4jartifactIdversion1。2。12versiondependencydependencies在项目resource文件夹下创建mybatisconfig。xml配置文件。lt;?xmlversion1。0encodingUTF8?!DOCTYPEconfigurationPUBLICmybatis。orgDTDConfig3。0ENhttp:mybatis。orgdtdmybatis3config。dtdconfigurationenvironmentsdefaultdevelopmentenvironmentiddevelopmenttransactionManagertypeJDBCdataSourcetypePOOLEDpropertynamedrivervaluecom。mysql。jdbc。Driverpropertynameurlvaluejdbc:mysql:localhost:3306eesy?serverTimezoneUTCuseSSLfalsepropertynameusernamevaluerootpropertynamepasswordvaluedcdell88dataSourceenvironmentenvironmentsmappersmapperresourceorgmybatisexampleBlogMapper。xmlmappersconfiguration编写一个Mybatis工具类获取sqlsessionpackagecom。keelon。Utils;importorg。apache。ibatis。io。Resources;importorg。apache。ibatis。session。SqlSession;importorg。apache。ibatis。session。SqlSessionFactory;importorg。apache。ibatis。session。SqlSessionFactoryBuilder;importjava。io。IOException;importjava。io。InputStream;publicclassMybatisUtils{staticStringresource;privatestaticSqlSessionFactorysqlSessionFactory;static{try{Stringresourcemybatisconfig。xml;InputStreaminputStreamResources。getResourceAsStream(resource);sqlSessionFactorynewSqlSessionFactoryBuilder()。build(inputStream);}catch(IOExceptione){e。printStackTrace();}}publicstaticSqlSessiongetSqlSession(){returnsqlSessionFactory。openSession();}}创建实体类User。同时在数据库中创建一个与实体类对应的表。packagecom。keelon。entity;importlombok。Data;DatapublicclassUser{privateIntegerid;privateStringname;privateStringpwd;}
这里使用Data注解,用lombook帮我们自动生成set,get方法。
创建UserMapper的接口类。packagecom。keelon。mapper;importcom。keelon。entity。User;importjava。util。List;publicinterfaceUserMapper{ListUserfindAll();}
创建UserMapper的xml文件。lt;?xmlversion1。0encodingUTF8?!DOCTYPEmapperPUBLICmybatis。orgDTDMapper3。0ENhttp:mybatis。orgdtdmybatis3mapper。dtd!namespace绑定一个对应的Mapper接口mappernamespacecom。keelon。mapper。UserMapper!配置查询所有id为方法名resultType指定封装的实体类型selectidfindAllresultTypecom。keelon。entity。Userselectfromuserselectmapper
maven由于他的约定大于配置,我们之后可能会遇到我们写的配置文件,无法被导出或者生效的情况。下面是解决方案:buildresourcesresourcedirectorysrcmainresourcesdirectoryincludesinclude。propertiesincludeinclude。xmlincludeincludesfilteringtruefilteringresourceresourcedirectorysrcmainjavadirectoryincludesinclude。propertiesincludeinclude。xmlincludeincludesfilteringtruefilteringresourceresourcesbuild
最后我们编写一个单元测试类:
packagecom。keelon。dao;importcom。keelon。Utils。MybatisUtils;importcom。keelon。entity。User;importcom。keelon。mapper。UserMapper;importorg。apache。ibatis。session。SqlSession;importorg。junit。Test;importjava。util。List;publicclassdaoTest{TestpublicvoidfindAllUser(){第一步获取sqlsessionSqlSessionsqlSessionMybatisUtils。getSqlSession();UserMapperuserMappersqlSession。getMapper(UserMapper。class);ListUseruserListuserMapper。findAll();for(Useruser:userList){System。out。print(user。toString());}}}
最后我们看看代码的结构和运行结果。
荣耀手机登顶京东金机奖,准确地把握了用户的需求手机行业竞争激烈是有目共睹的,京东在3C数码的销量表明,这些手机很受用户粉丝的欢迎,京东自身也以用户为中心选择了最受消费者欢迎的手机进行陈列,通过多年的销售数据,更准确地把握了……
不期而遇的夏天什么时候上映,不期而遇的夏天演员表不期而遇的夏天说出很多人不清楚,可不期而遇的夏天电影是什么时候上映,很多网友就想去了解一下有关的故事,看不期而遇的夏天提早准备好,之后等待观众来去展现剧情的精彩,但有的网友就不……
穿过寒冬拥抱你定档,穿过寒冬拥抱你演员表穿过寒冬拥抱你说出来很多人不清楚,可穿过寒冬拥抱你电影的定档时间,很多网友就想去了解一下有关的故事,看穿过寒冬拥抱你提早把预告和海报让观众欣赏,来把剧情熟悉,但有的网友就不清楚……
九州海上牧云记结局魔幻剧《九州海上牧云记》给观众带来结局比较圆满,毕竟刚开始发展情节有着许多动乱的情况,不过随着剧情发展后,逐渐推动主人公内心向好地方变化,使得有牧云笙和穆如寒江得到自己想要的结……
重紫电视剧什么时候开拍,重紫电视剧备案重紫说出很多人不清楚,可重紫电视剧到底是什么时候开拍,很多网友就想去了解一下有关的故事,看重紫已经准备差不多,已经进行拍摄的情况,觉得给小说改编出的效果不错,但有的网友就不清楚……
孟晚舟案最后一轮庭审!胜诉率几乎为零,若败,华为或遭重创据彭博社报道,华为首席财务官孟晚舟的引渡案于4日开始举行最后一轮听证会,持续时间至本月20日。若胜诉,孟晚舟就可能立刻获得自由,反之,就会陷入长久的上诉状态,甚至是直接被引渡到……
软件系统怎么做版本管理?软件开发好之后,代码不是一成不变的,需要不断调整,比如新增功能,优化功能,修复bug。那么如何去区分不同时期阶段的代码呢?就有了所谓的版本管理概念,比如刚发布的软件系统定……
机器人出租车将取代有人出租车日市有望在数年后实现机器人出租车服务。根据目前的自动驾驶发展趋势,将来自动驾驶移动服务内容可能将集中为机器人出租车的形式。日本在这方面的试验较少,可能会让人觉得在很远的未来才有……
斗罗大陆唐三和比比东谁厉害,昊天锤能击败比比东吗?《斗罗大陆》第一季结局还是比较震撼的,虽然该剧特效一直是被吐槽的一个问题,但在最终决战的时候,每个人物都战力全开,各种武魂效果直接拉满。目前唐三肯定不是比比东的对手,关键时刻唐……
刺杀小说家上映时间是什么时候刺杀小说家的演员表及剧情介绍近日,电影《刺杀小说家》正在宣传当中,吸引了不少的网友,电影《刺杀小说家》上映时间是什么时候呢?《刺杀小说家》的演员表及剧情介绍,一起来看一下具体的情况。1刺杀小说家上映时间是……
流光之城杨秀成是坏人吗,流光之城杨秀成谁演的商战剧《流光之城》提前安排好杨秀成的表现,经过观察他做出多种细节来看,立马会觉得犹如一个坏人似的,加上他特别善于观察别人的一言一行,由此觉得迟嘉表演的杨秀成角色很到位。1……
七夕送什么礼物最走心?高颜值蓝牙耳机品牌推荐每到七夕、情人节等重要节日,对于情侣来说还蛮头疼的,送礼物比较难挑选,无比纠结,也不确定对方是否满意。今天就给大家带来了几款高颜值的平价蓝牙耳机!七夕礼物、纪念日礼物、生日礼物……