城市直播房产教育博客汽车
投稿投诉
汽车报价
买车新车
博客专栏
专题精品
教育留学
高考读书
房产家居
彩票视频
直播黑猫
投资微博
城市上海
政务旅游

IDEASpringBootplus实现增删改查(CRUD)

11月27日 皇极城投稿
  一、前言Mybatis:数据持久化框架MybatisPlus:对Mybatis进行了增强,它封装了基本的增删改查操作,使我们自己不需要再去写很多重复的代码,大大解放了生产力!二、创建项目新建项目时选择SpringInitializer。也可以选择maven新建,但是不建议新手,因为要自己导入依赖,会给自己搞懵打开IDEA,选择NewProject创建项目文件结构、选择jdk版本一般选择Javaversion8然后下一步Next选择项目需要的依赖首先点击web选择springweb,再点击SQL选择MySQLdriver等,然后再一路Finish到新建完成。
  查看项目修改pom。xml文件?xmlversion1。0encodingUTF8?projectxmlnshttp:maven。apache。orgPOM4。0。0xmlns:xsihttp:www。w3。org2001XMLSchemainstancexsi:schemaLocationhttp:maven。apache。orgPOM4。0。0https:maven。apache。orgxsdmaven4。0。0。xsdmodelVersion4。0。0modelVersionparentgroupIdorg。springframework。bootgroupIdspringbootstarterparentartifactIdversion2。6。5versionrelativePath!lookupparentfromrepositoryparentgroupIdcom。haogroupIddemoartifactIdversion0。0。1SNAPSHOTversionnamedemonamedescriptiondemodescriptionpropertiesjava。version1。8java。versionpropertiesdependenciesdependencygroupIdorg。springframework。bootgroupIdspringbootstarterwebartifactIddependency!热部署可有可无自行选择dependencygroupIdorg。springframework。bootgroupIdspringbootdevtoolsartifactIddependency!Data注解省力的插件自动生成setget有参无参dependencygroupIdorg。projectlombokgroupIdlombokartifactIddependency!mysqldependencygroupIdmysqlgroupIdmysqlconnectorjavaartifactIddependency!mybatisplusdependencygroupIdcom。baomidougroupIdmybatisplusbootstarterartifactIdversion3。2。0versiondependency!jdbc连接池dependencygroupIdorg。springframework。bootgroupIdspringbootstarterjdbcartifactIddependencydependenciesbuildpluginsplugingroupIdorg。springframework。bootgroupIdspringbootmavenpluginartifactIdpluginpluginsbuildproject
  创建成功后删除src下面的test目录
  说明:
  中springbootstarterparent帮我们做了SpringBoot相关依赖包的版本号管理,所以有些依赖包不需要我们自己去写
  但像mybatisplusbootstarter它是不属于springboot相关的,parent中没有做版本号管理,所以还需要手动写一下。三、目录结构
  四、sql和application。yml
  4。1导入sql语句CREATETABLEuserinfo(idBIGINT(20)NOTNULLAUTOINCREMENTCOMMENT用户id,usernameVARCHAR(20)NOTNULLDEFAULTCOMMENT用户名COLLATEutf8mb4generalci,passwordVARCHAR(100)NOTNULLDEFAULTCOMMENT密码COLLATEutf8mb4generalci,createtimeDATETIMENOTNULLCOMMENT创建时间,PRIMARYKEY(id)USINGBTREE);
  说明:创建一个数据库,然后运行上述sql语句,生成用户表,主要就下面四个字段id用户id自增主键username用户名password密码createtime创建时间
  4。2修改application。yml配置文件
  把文件里的application。properties修改成yml格式yml更加便于管理,看起来也更舒适server:port:8887端口号可以自定义spring:devtools:这个就是前面我下的热部署,自行了解restart:enabled:true开启additionalpaths:srcmainjavaexclude:WEBINFfreemarker:cache:falsedatasource:driverclassname:com。mysql。cj。jdbc。Driverusername:root自己的数据库账号password:123456自己的密码url:jdbc:mysql:test?characterEncodingutf8serverTimezoneUTC?号前面是数据库名称我的是test默认为localhost:3306如果你的不是默认端口自行修改配置MP和在控制台打印sql语句mybatisplus:mapperlocations:classpath:mapper。xmlconfiguration:logimpl:org。apache。ibatis。logging。stdout。StdOutImpllogging:level:com:hao:mapper:debug这里根据自己的路径添加debug五,修改程序的启动入口类DemoApplication
  作用是扫描到mapper里面中的类,注意路径要和项目中实际路径一致
  MapperScan(valuecom。对应自己的路径。mapper)packagecom。importorg。mybatis。spring。annotation。MapperSimportorg。springframework。boot。SpringAimportorg。springframework。boot。autoconfigure。SpringBootAMapperScan(com。hao。mapper)SpringBootApplicationpublicclassDemoApplication{publicstaticvoidmain(String〔〕args){SpringApplication。run(DemoApplication。class,args);}}六,在实体类包中新建UserInfo。java,使之与数据库中的字段一一对应我的包叫pojo也可以叫entitypackagecom。hao。importcom。baomidou。mybatisplus。annotation。IdTimportcom。baomidou。mybatisplus。annotation。TableId;importcom。baomidou。mybatisplus。annotation。TableNimportlombok。Dimportjava。time。LocalDateTData就是lombok的注解自动生成了setgetDataTableName(valueuserinfo)TableName对应你的数据库表名publicclassUserInfo{TableId(valueid,typeIdType。AUTO)TableId说明这条数据自增长也是对应数据库自增长的privateIprivateSprivateSprivateLocalDateTimecreateT}
  说明:这里类成员变量和数据库字段对应,Mybatis自动做了驼峰法到下划线的转换
  如:数据库createtime类变量createTime七,在mapper包中新建UserInfoMapper接口packagecom。hao。importcom。baomidou。mybatisplus。core。mapper。BaseMimportcom。hao。pojo。UserIpublicinterfaceUserInfoMapperextendsBaseMapperUserInfo{}
  说明:BaseMapper类封装了dao层基本的增删改查操作八,在srcmainresourcesmaping文件夹下新建UserInfoMapper的映射文件UserInfoMapper。?xmlversion1。0encodingUTF8?!DOCTYPEmapperPUBLICmybatis。orgDTDMapper3。0ENhttp:mybatis。orgdtdmybatis3mapper。dtdmappernamespacecom。自己的路径。UserInfoMappermapper
  说明:这里的namespace和上述的UserInfoMapper路径对应一致九,在service里新建impl和UserInfoService接口类packagecom。hao。importcom。baomidou。mybatisplus。extension。service。ISimportcom。hao。pojo。UserIpublicinterfaceUserInfoServiceextendsIServiceUserInfo{}
  说明:这里IService封装了service层基本的增删改查十,在service里的impl新建UserInfoServiceImpl类packagecom。hao。service。importcom。baomidou。mybatisplus。extension。service。impl。ServiceIimportcom。hao。mapper。UserInfoMimportcom。hao。pojo。UserIimportcom。hao。service。UserInfoSimportorg。springframework。stereotype。SServicepublicclassUserInfoServiceImplextendsServiceImplUserInfoMapper,UserInfoimplementsUserInfoService{}十一,在controller里新建UserInfoController类packagecom。hao。importcom。hao。pojo。UserIimportcom。hao。service。UserInfoSimportorg。springframework。beans。factory。annotation。Aimportorg。springframework。web。bind。annotation。;importjava。time。LocalDateTimportjava。util。LRestControllerRequestMapping(userInfo)publicclassUserInfoController{AutowiredprivateUserInfoServiceuserInfoS增加PostMapping(add)publicBooleanadd(RequestBodyUserInfouserInfo){userInfo。setCreateTime(LocalDateTime。now());returnuserInfoService。save(userInfo);}删除GetMapping(delete{id})publicBooleandelete(PathVariableIntegerid){returnuserInfoService。removeById(id);}修改PostMapping(update)publicBooleanupdate(RequestBodyUserInfouserInfo){returnuserInfoService。updateById(userInfo);}查询GetMapping(get{id})publicUserInfoget(PathVariableIntegerid){returnuserInfoService。getById(id);}查询全部GetMapping(list)publicListUserInfolist(){returnuserInfoService。list();}}
  说明:增删改查接口,基本上不需要自己写sql,直接调用MybatisPlus封装好的接口。没啥好讲的十二,使用Postman进行测试
  到这里就完成了增删改查操作,接下来我们对上面的代码在Postman中进行验证
  1。新增一条信息http:localhost:8887userInfoadd
  2。通过用户id删除用户http:localhost:8887userInfodelete215
  3。根据用户id更新用户信息http:localhost:8887userInfoupdate?id1
  这里要注意要用JSON的方式写参数
  4。通过用户id获取信息:http:localhost:8887userInfoget1
  5。打印所有信息http:localhost:8887userInfolist
  三条信息全部打印出来了
  原文链接:IDEASpringBootMybatisplus实现增删改查(CRUD)wnrun博客园
投诉 评论 转载

科比去世2年后,妻子一张亲吻照引争议果然,她装不下去了2021年5月16日,科比去世一周年后正式进驻名人堂。这条承载着荣誉与光环的新闻,却瞬间让全世界的粉丝为之动容。为了表彰科比生前为篮球事业所做出的的贡献,官方特意为科比设……要想延缓肌肤衰老,建议养成2个习惯,或能改善,保持肌肤细致往往人上了年纪,肌肤就开始长皱纹、色斑、干燥、老化,呈现出老龄化的现象,尤其是对于女性而言,肌肤衰老是最让人头疼的,尤其是年龄一大,越发的逃不过皮肤老化萎缩这个问题,尤其是导致……这些水果吃上去不甜,但糖分很高!水果,是大家眼中的健康食品,很多人减肥时也会用水果来替代主食,认为这样既能产生饱腹感,又减少了热量的摄入。真的是这样吗?快来看看营养专家怎么说吧……罗瑞轻视了老鹰,本场不出战以为能轻松拿下,下场火线复出今天进行的NBA季后赛中,热火在第三节最多领先16分的情况下,被老鹰第四节翻盘,输掉比赛!本场三节末端,罗瑞左小腿拉伤,然后申请了本场不再继续出战,赛后罗瑞接受了每天的采访。……老詹决定4要来了?三方5人大交易方案出炉,双詹联手大帝詹姆斯虽然缺席了本届季后赛,但关于他的新闻从未停歇。近期美媒列出了关于詹姆斯的一组休赛期极有可能发生的交易方案。76人:得到詹姆斯湖人:得到马克西哈里斯赛布尔三个首……追梦我一直在说真正的好球员会闪耀客场并有所发挥直播吧4月22日讯在今天结束的一场NBA季后赛,勇士战胜了掘金,大比分30领先。在赛后接受采访时,追梦这样说道:我总是在说,真正的好球员,他们会在客场闪耀,他们会在客场有……IDEASpringBootplus实现增删改查(CRUD)一、前言Mybatis:数据持久化框架MybatisPlus:对Mybatis进行了增强,它封装了基本的增删改查操作,使我们自己不需要再去写很多重复的代码,大大解放了生产力!二……开播就是第二!吕颂贤版蜀山传一出手,该有多少仙侠片脸红?这么多年过去了,国产仙侠电视剧的巅峰,还是胡歌、刘亦菲的《仙剑奇侠传》,至于电影就更久远了,那就是徐克导演2001年拍的《蜀山传》。之所以中国仙侠片,一直没有进步,一方面……男孩起名字2022年常用字中国文化博大精深,其中汉字便是中国文化的基础,其可以组合成山川画卷,也可以组合为诗香书意。同时人们的名字也是由汉字组合而成的,那么想要为孩子起一个好名字,便少不了需要选择汉字。……武当山哪个不是谈恋爱高手?求缘来武当山就对了很多景区的营销一靠造y二靠造庙,但是武当山这两招都不用。好多人去烧香说求姻缘去少林寺那不就错了吗?少林寺哪一个会谈对象呢?自己都搞不定还搞定别人?武当山就不一样像宋远桥、俞岱岩……俩孩子患病让爸爸犯难,女儿将机会留给弟弟我还能生活先救弟弟女儿患有肌无力,儿子没有自主意识,因为家庭条件不好,两个孩子的病都被耽误,病情越来越严重。先救弟弟吧,至少我还能自己生活。女儿的话让爸爸心里很不是滋味,但医生告诉他,再拖下去,……中国广电5G将正式商用?官方表示暂未接到通知已启动套餐优惠宣视频加载中。。。近日,网传国内第四大运营商中国广电5G或于9月27日正式商用。9月18日,天目新闻求证官方客服和线下营业厅工作人员,其均表示暂未收到相关通知,对于正式商用……
几道特色的家常菜做法,很多人都爱吃新尚梅雨季好物初夏护肤特立独行的人总是少数,现实里,我们都是沉默的大多数冬季老年人养生保健知识健康饮食分手还能做朋友吗?季后赛欧文再战绿军,斋月成为X因素红米Note12Pro新机开始曝光,红米Note11跌至乞丐百度背锅?男子被骗3。2万诈骗集团花2亿做广告骗5亿石油巨头获得创纪录利润,该不该被征收暴利税?硬碰iPhone14!华为Mate50系列搞定供货问题价格合紫金山天文台新发现两颗近地小行星7月85寸大屏电视价格大跳水!这五款电视最低不到6000元朱婷发球封神一战咏廿四气诗冬至十一月中学修车要学多久(学修车后悔死了)孔雀鱼背鳍变成一绺怎么治直通车核心技巧:如何提高要命的点击率《二》36氪独家Okawa大川電機完成1。21亿元A轮融资,挑战寡生活在此处【安利】自我学习提升网站发型设计与服装搭配适合穿大衣女生的发型设计全国首个阿里云能力中心落户上海奉贤小桃红(原创)2018年新托福考试6。2经典回忆秋天可以穿毛衣吗秋天可不可以穿毛衣

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找