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

WordPress可以做大网站吗石家庄网站建设布局

WordPress可以做大网站吗,石家庄网站建设布局,深圳建设个网站,中山做网站服务好懒加载是什么? 按需加载所需内容,当调用到关联的数据时才与数据库交互否则不交互,能大大提高数据库性能,并不是所有场景下使用懒加载都能提高效率。 Mybatis懒加载:resultMap里面的association、collection有延迟加载功…

懒加载是什么?

        按需加载所需内容,当调用到关联的数据时才与数据库交互否则不交互,能大大提高数据库性能,并不是所有场景下使用懒加载都能提高效率。

        Mybatis懒加载:resultMap里面的association、collection有延迟加载功能

懒加载针对什么使用?为什么要用懒加载?

        懒加载针对级联使用的,懒加载的目的是减少内存的浪费和减轻系统负担


举例:

查询所有用户信息(其下有多个收货地址)

select b.id ,b.userName,b.userCode,a.*
from smbms_address a right join smbms_user b on a.userId = b.id

进行分步查询:当我需要查看地址的时候加载收货地址信息

-- 查询所有用户信息
select * from smbms_user
-- 查询地址信息
select * from smbms_address where userId = #{id}

以上为单表查询,效率相对于大数据量的关联查询要高

Mybatis懒加载实例

1、在 Mybatis 主配置文件中开启懒加载

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><!--引入properties文件--><properties resource="database.properties"></properties><!--配置打印sql语句--><settings><setting name="logImpl" value="STDOUT_LOGGING"/><!--在mybatis主配置文件中关闭自动映射--><!--NONE  FULL全映射--><setting name="autoMappingBehavior" value="FULL"/><!-- 开启懒加载(延迟加载) --><setting name="lazyLoadingEnabled" value="true"/></settings><!--起别名--><typeAliases><package name="com.hz.pojo"/></typeAliases><!--可以起多个environments--><environments default="smbms"><environment id="smbms"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="${driver}"/><property name="url" value="${url}"/><property name="username" value="${user}"/><property name="password" value="${password}"/></dataSource></environment></environments><mappers><mapper resource="mappers/AddressMapper.xml"/><mapper resource="mappers/UserMapper.xml"/></mappers></configuration>

2、创建实体类等

package com.hz.pojo;import lombok.Data;import java.io.Serializable;
import java.util.List;@Data
public class User implements Serializable {private Long id; //idprivate String userCode; //用户编码private String userName; //用户名称private String userPassword; //用户密码private Integer gender;  //性别private String birthday;  //出生日期private String phone;   //电话private String address; //地址private Integer userRole;    //用户角色private Integer createdBy;   //创建者private String creationDate; //创建时间private Integer modifyBy;     //更新者private String modifyDate;   //更新时间private  Role role;	//用户角色对象private List<Address> addressList; //收货地址集合}
package com.hz.pojo;import lombok.*;@Setter
@Getter
@NoArgsConstructor //无参构造方法
@AllArgsConstructor //有参构造方法
@ToString
public class Address {private Long id;				//主键IDprivate String postCode; 		//邮编private String contact;			//联系人private String addressDesc;		//地址private String tel;				//联系电话private Integer createdBy; 		//创建者private String creationDate; 	//创建时间private Integer modifyBy; 		//更新者private String modifyDate;		//更新时间private User user;  			//所属用户对象}

3、创建Dao接口和XML文件

   <!--懒加载--><resultMap id="userMap1" type="User"><id property="id" column="id"/><!-- 一对多  对象套集合 --><collection property="addressList" column="id" ofType="Address" select="getAdd" fetchType="lazy"><id property="id" column="id"/></collection></resultMap><select id="findUserList1" resultMap="userMap1">select * from smbms_user</select><select id="getAdd" resultType="Address">select * from smbms_address where userId = #{id}</select>

因为 User表与 Address表 是一对多关联,所以使用resultMap的collection映射,在collection标签中,添加属性fetchType,属性值为lazy,表示懒加载。

4、测试

    @Testpublic void findUserList1() {SqlSession sqlSession = MyBatisUtil.createSqlSession();UserDao userDao = sqlSession.getMapper(UserDao.class);List<User> userList = userDao.findUserList1();for (User u :userList) {System.out.println("userName:"+u.getUserName());}//调用地址
//        List<User> userList = userDao.findUserList1();
//        for (User u :userList) {
//            List<Address> addressList = u.getAddressList();
//            System.out.println("userName:"+u.getUserName());
//            for (Address address :addressList) {
//                System.out.println("addressName:"+address.getContact());
//            }
//        }}

只查询 UserName :结果如下

 

组合查询时 :结果如下

http://www.yayakq.cn/news/686996/

相关文章:

  • 做网站市场价格多少钱溧阳 招网站开发兼职
  • 怎么下载自己做的网站睢县做网站哪家好
  • 宁波网站优化公司哪家好张家港专业的网站制作公司
  • 西安商城网站四川城乡建设网站
  • 陈村九江网站建设商城网站建设计划书
  • 网站后台代码添加图片简述电子商务的概念
  • 廊坊网站关键词推广wordpress后台没有菜单
  • 北京 做网站 公司爱站网关键词排名
  • 阿里云服务器可以访问国外网站吗河北邢台手机网站建设
  • 推广网站平台免费中国建设网官方网站济宁国泰
  • 网站代码快捷键门户网络是什么
  • 导航网站怎么做复旦学霸张立勇做的网站
  • 如何制作营销网站模板如何建设谷歌网站
  • 如何自己做电影网站大连网络备案做网站
  • 厦门做网站的公司阿里巴巴外贸平台怎么样
  • 网站运营方案 网站建设多用户自助建站系统
  • 企业网站建设效益分析桂林市工程建设项目招标网站
  • 网站做数据监测qq互联网站备案号
  • 哪里有网站设计公司wordpress如何采集
  • 医药网站前置审批黄骅港招聘
  • wordpress如何看主题网站建设优化现状图表
  • 培训公司网站源码wordpress logo在哪里改
  • 网销网站建设流程西城富阳网站建设
  • 华为云速建站做导航网站赚钱
  • 网站做多长时间才会有流量高大上企业网站
  • 福州建设工程协会网站查询系统如何在云主机上搭建wordpress
  • 哪里有免费建设网站做响应式网站
  • 网页设计与网站建设文档品牌学习网站
  • 有教做鱼骨图的网站吗外贸seo关键词
  • 展厅设计素材网站用jsp做的网站在不同浏览器显示效果差异很大如何解决