当前位置: 首页 > news >正文

建公司网站要多久百度推广助手怎么用

建公司网站要多久,百度推广助手怎么用,亚马逊免费的关键词工具,高权重友情链接目录 1.MyBatis的简单介绍 2.MyBatis操作数据库的步骤 2.1 添加依赖 2.2 配置文件 2.3 写持久层代码 2.4 方法测试 3.MyBatis操作数据库(增删查改) 3.1 CRUD标签 3.2 参数传递 3.3 Insert-新增 3.4 Delete-删除 3.5 Update-修改 3.6 Select-查询(映射问题) 1.MyB…目录 1.MyBatis的简单介绍 2.MyBatis操作数据库的步骤 2.1 添加依赖 2.2 配置文件 2.3 写持久层代码 2.4 方法测试 3.MyBatis操作数据库(增删查改) 3.1 CRUD标签 3.2 参数传递 3.3 Insert-新增 3.4 Delete-删除 3.5 Update-修改 3.6 Select-查询(映射问题)  1.MyBatis的简单介绍 MyBatis是一款持久层框架(持久层指持久化操作的层通常指数据访问层dao)简单来说使用MyBatis能够更简单地完成程序和数据库之间的交互 2.MyBatis操作数据库的步骤 2.1 添加依赖 首先需要导入MyBatis依赖和MySQL驱动依赖(添加到pom.xml文件中) dependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion3.0.3/version/dependencydependencygroupIdcom.mysql/groupIdartifactIdmysql-connector-j/artifactIdscoperuntime/scope/dependency 2.2 配置文件 我们需要配置Mysql数据库信息MyBatis日志打印和MyBatis XML的文件路径数据库信息用于和指定数据库进行连接MyBatis日志用于查看SQL语句的执行传递的参数以及执行结果(MyBatis日志打印的配置不是必须的如果不需要在配置文件中删除相关配置信息即可)MyBatis XML文件路径(以下面的配置内容为例)用于声明在resources/mapper下创建所有的XML文件 如果是application.yml文件配置以下内容 # 配置Mysql数据库信息 spring:datasource:url: jdbc:mysql://127.0.0.1:3306/mybatis_test?characterEncodingutf8useSSLfalse# url中的mybatis_test替换为自己的数据库名username: root #数据库用户名password: root #数据库密码(如果没设置密码默认为root如果有的话需要修改例如123456)driver-class-name: com.mysql.cj.jdbc.Driver # 配置打印 MyBatis⽇志 mybatis:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl# 配置MyBatis XML文件路径mapper-locations: classpath:mapper/**Mapper.xml 如果是application.properties文件配置以下内容 # 配置Mysql数据库信息 spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver spring.datasource.urljdbc:mysql://127.0.0.1:3306/mybatis_test?characterEncodingutf8useSSLfalse # 上面url中的mybatis_test替换为自己的数据库名 spring.datasource.usernameroot #数据库用户名 spring.datasource.passwordroot #数据库密码(如果没设置密码默认为root如果有的话需要修改例如123456) # 配置MyBatis日志 mybatis.configuration.log-implorg.apache.ibatis.logging.stdout.StdOutImpl # 配置MyBatis XML文件路径 mybatis.mapper-locationsclasspath:mapper/**Mapper.xml 2.3 写持久层代码 持久层代码分为两个部分分别是方法定义(接口interface)和方法实现(**.xml) 1方法定义(UserInfoXMLMapper接口) Mapper表示MyBatis中的Mapper接口程序运行时会自动生成接口的代理对象并交给Spring的IoC容器管理 package org.example.mybatisdemo.mapper; import org.apache.ibatis.annotations.Mapper; import org.example.mybatisdemo.model.UserInfo; import java.util.List; Mapper public interface UserInfoXMLMapper {ListUserInfo queryUserInfos(); } 2方法实现(UserInfoXMLMapper.xml根据MyBatis XML文件路径创建路径为resources/mapper/UserInfoXMLMapper.xml) mapper标签表示命名空间需要指定namespace属性值为Mapper接口的全限定名(全包名.类名) ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapper !-- sql语句的具体实现-- /mapper 2.4 方法测试 package org.example.mybatisdemo.mapper; import org.example.mybatisdemo.model.UserInfo; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; SpringBootTest //在Spring的运行环境下进行测试 class UserInfoXMLMapperTest {Autowiredprivate UserInfoXMLMapper userInfoXMLMapper;Testvoid queryUserInfos() {//具体测试代码} } 3.MyBatis操作数据库(增删查改) 3.1 CRUD标签 CRUD标签即insertdeleteselectupdate四个标签用于在方法实现的mapper标签中实现具体的SQL语句以select为例 select执行数据库的查询操作id与接口中的定义的方法名称相同表示对接口的具体实现方法resultType返回的数据类型值为该类型的全限定名 ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperselect idqueryUserInfos resultTypeorg.example.mybatisdemo.model.UserInfoselect * from userinfo/select /mapper 3.2 参数传递 当我们执行条件查询时等SQL语句时需要在SQL语句中对表指定属性赋值这时可以使用#{ }的方式来获取方法中的参数拼接到SQL语句中从而得到完整的SQL语句括号中的参数名称与方法中的参数名称最好相同(当然也可以不相同下面会说到) //UserInfoXMLMapper.xml ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperselect idqueryUserInfos resultTypeorg.example.mybatisdemo.model.UserInfoselect * from userinfo where id#{id} and age#{age} --获取id和age参数,分别赋值-最终执行SQL语句为select * from userinfo where id1 and age18/select /mapper//UserInfoXMLMapper接口 package org.example.mybatisdemo.mapper; import org.apache.ibatis.annotations.Mapper; import org.example.mybatisdemo.model.UserInfo; import java.util.List; Mapper public interface UserInfoXMLMapper {ListUserInfo queryUserInfos(UserInfo userInfo); }//方法测试代码 package org.example.mybatisdemo.mapper; import org.example.mybatisdemo.model.UserInfo; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; SpringBootTest class UserInfoXMLMapperTest {Autowiredprivate UserInfoXMLMapper userInfoXMLMapper;Testvoid queryUserInfos() {UserInfo userInfonew UserInfo();userInfo.setId(1);userInfo.setAge(18);userInfoXMLMapper.queryUserInfos(userInfo).forEach(System.out::println);} } 如果需要使括号中的参数名称与方法中的参数名称不相同可以通过Param设置参数的别名同时使用#{ }获取参数时括号中的参数名称要与别名相同 //UserInfoXMLMapper接口 package org.example.mybatisdemo.mapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.example.mybatisdemo.model.UserInfo; import java.util.List; Mapper public interface UserInfoXMLMapper {ListUserInfo queryUserInfos(Param(userid) Integer id); }//UserInfoXMLMapper.xml ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperselect idqueryUserInfos resultTypeorg.example.mybatisdemo.model.UserInfoselect * from userinfo where id#{userid} /select /mapper 3.3 Insert-新增 //UserInfoXMLMapper.xml ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperinsert idinsertUserInfoinsert into userinfo (username,password,age) values (#{userName},#{password},#{age})/insert /mapper//UserInfoXMLMapper接口 package org.example.mybatisdemo.mapper; import org.apache.ibatis.annotations.Mapper; import org.example.mybatisdemo.model.UserInfo; Mapper public interface UserInfoXMLMapper {Integer insertUserInfo(UserInfo userInfo); }//方法测试代码 package org.example.mybatisdemo.mapper; import org.example.mybatisdemo.model.UserInfo; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; SpringBootTest class UserInfoXMLMapperTest {Autowiredprivate UserInfoXMLMapper userInfoXMLMapper;Testvoid insertUserInfo() {UserInfo userInfo new UserInfo();userInfo.setUserName(wangliu);userInfo.setPassword(123456);userInfo.setAge(18);userInfoXMLMapper.insertUserInfo(userInfo);} } 接口定义不变时在XML文件设置useGeneratedKeys和keyProperty属性可以返回自增的表属性 ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperinsert idinsertUserInfo useGeneratedKeystrue keyPropertyid--返回自增的id属性insert into userinfo (username,password,age) values (#{userName},#{password},#{age})/insert /mapper 3.4 Delete-删除 //UserInfoXMLMapper.xml ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperdelete iddeleteUserInfodelete from userinfo where id#{id}/delete /mapper//UserInfoXMLMapper接口 package org.example.mybatisdemo.mapper; import org.apache.ibatis.annotations.Mapper; Mapper public interface UserInfoXMLMapper {Integer deleteUserInfo(Integer id); }//方法测试代码 package org.example.mybatisdemo.mapper; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; SpringBootTest class UserInfoXMLMapperTest {Autowiredprivate UserInfoXMLMapper userInfoXMLMapper;Testvoid deleteUserInfo() {userInfoXMLMapper.deleteUserInfo(10);} } 3.5 Update-修改 //UserInfoXMLMapper.xml ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperupdate idupdateUserInfoupdate userinfo set username#{userName} where id#{id}/update /mapper//UserInfoXMLMapper类 package org.example.mybatisdemo.mapper; import org.apache.ibatis.annotations.Mapper; import org.example.mybatisdemo.model.UserInfo; Mapper public interface UserInfoXMLMapper {Integer updateUserInfo(UserInfo userInfo); }//方法测试代码 package org.example.mybatisdemo.mapper; import org.example.mybatisdemo.model.UserInfo; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; SpringBootTest class UserInfoXMLMapperTest {Autowiredprivate UserInfoXMLMapper userInfoXMLMapper;Testvoid updateUserInfo() {UserInfo userInfo new UserInfo();userInfo.setUserName(zhangliu);userInfo.setId(9);userInfoXMLMapper.updateUserInfo(userInfo);} } 3.6 Select-查询(映射问题)  在参数传递(3.2节)已经举了一个关于查询操作的例子这里便不再举例虽然在这个例子中代码能够正常运行但是当我们仔细观察运行结果会发现一些问题。以下是该例子运行结果的截图(与参数传递中的截图一致) 我们会发现有几个属性没有赋值(表中该条数据不存在为null的属性)这是因为自动映射查询结果时MyBatis会获取结果中返回的列名属性并在Java类中查找相同名称的属性(忽略大小写)而delete_flagcreate_time等列名属性与Java类(这里指UserInfo类)中的deleteFlagcreateTime等属性名称不同所以会返回null。这时只需要参照列名属性修改一下Java类中的属性名称就可以得到正确结果当然如果不想修改属性名称有三种方式可以解决这个问题分别是起别名结果映射和开启驼峰别名 1起别名 在SQL语句中给列名起别名(as)使别名和Java类中属性名称保持相同接口和方法测试代码与例子中一致 ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperselect idqueryUserInfos resultTypeorg.example.mybatisdemo.model.UserInfoselect id,username,password,age,gender,phone,delete_flag as deleteFlag,create_time as createTime,update_time as updateTimefrom userinfo where id#{id} and age#{age}/select /mapper !--接口和方法测试代码与例子中一致-- 2结果映射 id(resultMap标签)resultMap别名type映射的实体类id标签表示主键column(result标签)数据库列名属性property(result标签)Java类属性名 ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespaceorg.example.mybatisdemo.mapper.UserInfoXMLMapperresultMap idXMLBaseMap typeorg.example.mybatisdemo.model.UserInfoid columnid propertyid/idresult columndelete_flag propertydeleteFlag/resultresult columncreate_time propertycreateTime/resultresult columnupdate_time propertyupdateTime/result/resultMapselect idqueryUserInfos resultMapXMLBaseMapselect * from userinfo where id#{id} and age#{age}/select /mapper !--接口和方法测试代码与例子中一致-- 3开启驼峰命名 数据库列名一般使用蛇形命名法进行命名(下划线分割各个单词)而Java属性一般遵循驼峰命名法约定要在这两种命名方式之间启用自动映射(delete_flag→deleteFlag)需要配置一下配置文件 如果是application.yml文件配置以下内容 mybatis:configuration:map-underscore-to-camel-case: true #配置驼峰⾃动转换 如果是application.properties文件配置以下内容 #配置驼峰自动转换 mybatis.configuration.map-underscore-to-camel-case: true
http://www.sczhlp.com/news/249604/

相关文章:

  • 招商加盟网站模板html软文写作技巧及范文
  • 网站不备案备案dw代码写完之后怎么运行网页
  • 自己怎么注册一个网站开发一个交友软件需要多少钱
  • 怎样通过网址浏览自己做的网站做系统去哪个网站好
  • 如何建立自己的免费网站工贸一体化企业建设电子商务网站的误区
  • 山东建设执业资格注册中心网站青岛网站建设公司外包
  • wordpress主题颜色切换插件赣州seo排名
  • 南昌做网站哪家专业如何丰富网站内容
  • wordpress首页显示文章数昆明做网站优化价格
  • 上海工程建设造价信息网站在线玩传奇
  • WordPress显示网站加载时间广州冼村小学
  • 世纪佳缘网站开发公司wordpress 双域名
  • 外贸人常去的网站wordpress全局透明主题下载
  • sns社区网站开发网站建设哪家好网站建设哪家好网站建设哪家
  • 做中学网站wordpress手机端发布
  • 网站开发排名外贸平台网站
  • 南昌网站建设推广十大管理咨询公司
  • 用框架做网站如何居中wordpress点击量
  • 网站建设原创软文深圳 网站建设培训班
  • 有关于做茗茶的网站做网站需要雇什么人
  • 现在网站做多宽logo设计公司介绍
  • 国家建设部门三类人员官方网站网页的开发流程
  • 网站建设1影响力公司平面设计网络接单
  • 网站开发一般用什么软件有哪些深圳网站建设定制平台
  • 厦门网站设计公司苏州建网站需要什么
  • 怎样让百度收取我的网站网站建设预览
  • 深圳好看的网站建设哪家公司好高级seo课程
  • 电商网站开发选题依据建设银行佛山分行网站
  • 东莞长安网站设计黄页网址大全免费
  • 做网站和视频剪辑用曲面屏中国网站备案查询系统