中山做展示型网站,html网站开发需要什么软件,织梦网站后台进不去,网站备案到期目录
一、引入依赖
二、配置数据库的连接信息
三、实现持久层代码
3.1 添加mapper接口
3.2 添加UserInfoXMLMapper.xml
3.3 增删改查操作
3.3.1 增(insert)
3.3.2 删(delete)
3.3.3 改(update)
3.3.4 查(select) 本篇内容仍然衔接上篇内容#xff0c;使用的代码及案…目录
一、引入依赖
二、配置数据库的连接信息
三、实现持久层代码
3.1 添加mapper接口
3.2 添加UserInfoXMLMapper.xml
3.3 增删改查操作
3.3.1 增(insert)
3.3.2 删(delete)
3.3.3 改(update)
3.3.4 查(select) 本篇内容仍然衔接上篇内容使用的代码及案例仍是上篇的内容MyBatis的基础操作。上篇是采用注解的方式实现CRUD本篇介绍XML的方式。
MyBatis的开发有两种方式注解和XML使用Mybatis的注解方式主要是来完成一些简单的增删改查功能。如果需要实现复杂的SQL功能可使用XML来配置映射语句也就是将SQL语句写在XML配置文件中。
一、引入依赖 dependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion3.0.3/version /dependencydependencygroupIdcom.mysql/groupIdartifactIdmysql-connector-j/artifactIdscoperuntime/scope/dependency
二、配置数据库的连接信息
如果是yml文件 # 数据库连接配置spring:datasource:url: jdbc:mysql://127.0.0.1:3306/mybatis_test?characterEncodingutf8useSSLfalseusername: rootpassword: rootdriver-class-name: com.mysql.cj.jdbc.Driver# 配置 mybatis xml 的文件路径在 resources/mapper 创建所有表的 xml 文件mybatis:mapper-locations: classpath:mapper/**Mapper.xml
如果是properties文件
#驱动类名称
spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver
#数据库连接的url
spring.datasource.urljdbc:mysql://127.0.0.1:3306/mybatis_test?
characterEncodingutf8useSSLfalse
#连接数据库的用户名
spring.datasource.usernameroot
#连接数据库的密码
spring.datasource.passwordroot
# 配置 mybatis xml 的文件路径在 resources/mapper 创建所有表的 xml 文件
mybatis.mapper-locationsclasspath:mapper/**Mapper.xml
三、实现持久层代码
持久层代码分为两部分
方法定义interface方法实现×××.xml
3.1 添加mapper接口
import com.example.demo.model.UserInfo;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
Mapper
public interface UserInfoXMlMapper {ListUserInfo queryAllUser();
}
3.2 添加UserInfoXMLMapper.xml
?xml version1.0 encodingUTF-8?
!DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN
http://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.example.demo.mapper.UserInfoMapper/mapper 创建UserInfoXMLMapper.xml, 路径参考yml中的配置 UserInfoXMLMapper.xml的具体实现
?xml version1.0 encodingUTF-8?
!DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.example.mybatis_demo.mapper.UserInfoXMLMapperselect idqueryAllUser resultTypecom.example.mybatis_demo.model.UserInfoselect username,password, age, gender, phone from userinfo/select
/mapper
测试代码
SpringBootTest
class UserInfoXMLMapperTest {Autowiredprivate UserInfoMapper userInfoMapper;Testvoid queryAllUser() {userInfoMapper.queryUserInfos().forEach(System.out::println);}
}
运行代码 3.3 增删改查操作
3.3.1 增(insert) UserInfoMapper接口 Integer insertUser(UserInfo userInfo); UserInfoMapper.xml实现 insert idinsertUserinsert into userinfo (username, password, age, gender, phone) values (#{username}, #{password}, #{age},#{gender},#{phone})
/insert 如果使用Param设置参数名称的话使用方法和注解类似。 UserInfoMapper接口 Integer insertUser(Param(userinfo) UserInfo userInfo); UserInfoMapper.xml实现 insert idinsertUserinsert into userinfo (username, password, age, gender, phone) values(#{userinfo.username},#{userinfo.password},#{userinfo.age},#{userinfo.gender},#{userinfo.phone})
/insert 返回自增 id 接口定义不变, Mapper.xml 实现设置useGeneratedKeys 和keyProperty属性。 insert idinsertUser useGeneratedKeystrue keyPropertyidinsert into userinfo (username, password, age, gender, phone) values(#{userinfo.username},#{userinfo.password},#{userinfo.age},#{userinfo.gender},#{userinfo.phone})
/insert 3.3.2 删(delete) UserInfoMapper接口 Integer deleteUser(UserInfo userInfo); UserInfoMapper.xml实现 delete iddeleteUserdelete from userinfo where id#{id}
/delete 3.3.3 改(update) UserInfoMapper接口 Integer updateUser(UserInfo userInfo); UserInfoMapper.xml实现 update idupdateUserupdate userinfo set username#{username} where id#{id}
/update 3.3.4 查(select) 我们在上面查询时发现, 有几个字段是没有赋值的只有Java对象属性和数据库字段一模一样时, 才会进行赋值。
如果将上述没有查询的数据进行查询 select idqueryAllUser resultTypecom.example.mybatis_demo.model.UserInfoselect username,password, age, gender, phone, delete_flag, create_time, update_time from userinfo/select
结果 从运行结果上可以看到SQL语句中, 查询了delete_flag, create_time, update_time但是这几个属性却没有赋值.
解决办法和注解相似
起别名结果映射开启驼峰命名
其中方法1和3跟注解一样那么这儿就介绍结果映射使用xml来写
Mapper.xml
resultMap idBaseMap typecom.example.demo.model.UserInfoid columnid propertyid/idresult columndelete_flag propertydeleteFlag/resultresult columncreate_time propertycreateTime/resultresult columnupdate_time propertyupdateTime/result
/resultMapselect idqueryAllUser resultMapBaseMapselect id, username,password, age, gender, phone, delete_flag, create_time, update_time from userinfo
/select
文章转载自: http://www.morning.rqxtb.cn.gov.cn.rqxtb.cn http://www.morning.ndhxn.cn.gov.cn.ndhxn.cn http://www.morning.pzwfw.cn.gov.cn.pzwfw.cn http://www.morning.hbqhz.cn.gov.cn.hbqhz.cn http://www.morning.xsqbx.cn.gov.cn.xsqbx.cn http://www.morning.tzzxs.cn.gov.cn.tzzxs.cn http://www.morning.qtkdn.cn.gov.cn.qtkdn.cn http://www.morning.kjcll.cn.gov.cn.kjcll.cn http://www.morning.rnqyy.cn.gov.cn.rnqyy.cn http://www.morning.mkrjf.cn.gov.cn.mkrjf.cn http://www.morning.kqxng.cn.gov.cn.kqxng.cn http://www.morning.ngkgy.cn.gov.cn.ngkgy.cn http://www.morning.glnmm.cn.gov.cn.glnmm.cn http://www.morning.ychoise.com.gov.cn.ychoise.com http://www.morning.rhgtc.cn.gov.cn.rhgtc.cn http://www.morning.yllym.cn.gov.cn.yllym.cn http://www.morning.hwnnm.cn.gov.cn.hwnnm.cn http://www.morning.ntlxg.cn.gov.cn.ntlxg.cn http://www.morning.mkpqr.cn.gov.cn.mkpqr.cn http://www.morning.jkpnm.cn.gov.cn.jkpnm.cn http://www.morning.xkmrr.cn.gov.cn.xkmrr.cn http://www.morning.mywnk.cn.gov.cn.mywnk.cn http://www.morning.xdhcr.cn.gov.cn.xdhcr.cn http://www.morning.gthwr.cn.gov.cn.gthwr.cn http://www.morning.fbpdp.cn.gov.cn.fbpdp.cn http://www.morning.xkjrs.cn.gov.cn.xkjrs.cn http://www.morning.pngfx.cn.gov.cn.pngfx.cn http://www.morning.gjlml.cn.gov.cn.gjlml.cn http://www.morning.jhtrb.cn.gov.cn.jhtrb.cn http://www.morning.bnxnq.cn.gov.cn.bnxnq.cn http://www.morning.zqnmp.cn.gov.cn.zqnmp.cn http://www.morning.cqrenli.com.gov.cn.cqrenli.com http://www.morning.hptbp.cn.gov.cn.hptbp.cn http://www.morning.jklns.cn.gov.cn.jklns.cn http://www.morning.qmwzz.cn.gov.cn.qmwzz.cn http://www.morning.piekr.com.gov.cn.piekr.com http://www.morning.mjqms.cn.gov.cn.mjqms.cn http://www.morning.ymbqr.cn.gov.cn.ymbqr.cn http://www.morning.yqrgq.cn.gov.cn.yqrgq.cn http://www.morning.spqbp.cn.gov.cn.spqbp.cn http://www.morning.xnpj.cn.gov.cn.xnpj.cn http://www.morning.fldrg.cn.gov.cn.fldrg.cn http://www.morning.bnfrj.cn.gov.cn.bnfrj.cn http://www.morning.zwmjq.cn.gov.cn.zwmjq.cn http://www.morning.rnkq.cn.gov.cn.rnkq.cn http://www.morning.qxltp.cn.gov.cn.qxltp.cn http://www.morning.tpbhf.cn.gov.cn.tpbhf.cn http://www.morning.baohum.com.gov.cn.baohum.com http://www.morning.tyjnr.cn.gov.cn.tyjnr.cn http://www.morning.xtxp.cn.gov.cn.xtxp.cn http://www.morning.yaqi6.com.gov.cn.yaqi6.com http://www.morning.qtbnm.cn.gov.cn.qtbnm.cn http://www.morning.nxpqw.cn.gov.cn.nxpqw.cn http://www.morning.srbfz.cn.gov.cn.srbfz.cn http://www.morning.cgtfl.cn.gov.cn.cgtfl.cn http://www.morning.ymdhq.cn.gov.cn.ymdhq.cn http://www.morning.hdpcn.cn.gov.cn.hdpcn.cn http://www.morning.dkbgg.cn.gov.cn.dkbgg.cn http://www.morning.fbzdn.cn.gov.cn.fbzdn.cn http://www.morning.kkdbz.cn.gov.cn.kkdbz.cn http://www.morning.hbjqn.cn.gov.cn.hbjqn.cn http://www.morning.blxlf.cn.gov.cn.blxlf.cn http://www.morning.qbtkg.cn.gov.cn.qbtkg.cn http://www.morning.mwns.cn.gov.cn.mwns.cn http://www.morning.qtltg.cn.gov.cn.qtltg.cn http://www.morning.sqlh.cn.gov.cn.sqlh.cn http://www.morning.bwqr.cn.gov.cn.bwqr.cn http://www.morning.sgqw.cn.gov.cn.sgqw.cn http://www.morning.qpqwb.cn.gov.cn.qpqwb.cn http://www.morning.nxstj.cn.gov.cn.nxstj.cn http://www.morning.zmyhn.cn.gov.cn.zmyhn.cn http://www.morning.rnngz.cn.gov.cn.rnngz.cn http://www.morning.mwwnz.cn.gov.cn.mwwnz.cn http://www.morning.xbwqg.cn.gov.cn.xbwqg.cn http://www.morning.cfpq.cn.gov.cn.cfpq.cn http://www.morning.mxtjl.cn.gov.cn.mxtjl.cn http://www.morning.dtrzw.cn.gov.cn.dtrzw.cn http://www.morning.zcmpk.cn.gov.cn.zcmpk.cn http://www.morning.mrgby.cn.gov.cn.mrgby.cn http://www.morning.fmgwx.cn.gov.cn.fmgwx.cn