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

做网站做电脑版还是手机版好中国十大外贸平台

做网站做电脑版还是手机版好,中国十大外贸平台,辽宁企业网站建设公司,物流网站建设方案1.准备工作 1.1创建数据库 (1)创建数据库: CREATE DATABASE mybatis_test DEFAULT CHARACTER SET utf8mb4;(2)使用数据库 -- 使⽤数据数据 USE mybatis_test;1.2 创建用户表和实体类 创建用户表 -- 创建表[⽤⼾表…

1.准备工作

1.1创建数据库

(1)创建数据库:

CREATE DATABASE mybatis_test DEFAULT CHARACTER SET utf8mb4;

(2)使用数据库

-- 使⽤数据数据
USE mybatis_test;

1.2 创建用户表和实体类

创建用户表


-- 创建表[⽤⼾表]CREATE TABLE `user_info` (`id` INT ( 11 ) NOT NULL AUTO_INCREMENT,`username` VARCHAR ( 127 ) NOT NULL,`password` VARCHAR ( 127 ) NOT NULL,`age` TINYINT ( 4 ) NOT NULL,`gender` TINYINT ( 4 ) DEFAULT '0' COMMENT '1-男 2-⼥ 0-默认',`phone` VARCHAR ( 15 ) DEFAULT NULL,`delete_flag` TINYINT ( 4 ) DEFAULT 0 COMMENT '0-正常, 1-删除',`create_time` DATETIME DEFAULT now(),`update_time` DATETIME DEFAULT now() ON UPDATE now(),PRIMARY KEY ( `id` ) 
) ENGINE = INNODB DEFAULT CHARSET = utf8mb4; 

添加用户信息

-- 添加⽤⼾信息
INSERT INTO user_info( username, `password`, age, gender, phone )
VALUES ( 'admin', 'admin', 18, 1, '18612340001' );
INSERT INTO user_info( username, `password`, age, gender, phone )
VALUES ( 'zhangsan', 'zhangsan', 18, 1, '18612340002' );
INSERT INTO user_info( username, `password`, age, gender, phone )
VALUES ( 'lisi', 'lisi', 18, 1, '18612340003' );
INSERT INTO user_info( username, `password`, age, gender, phone )
VALUES ( 'wangwu', 'wangwu', 18, 1, '18612340004' );

实体类的属性名与表中的字段名⼀⼀对应

@Data
public class UserInfo {private Integer id;private String username;private String password;private Integer age;private Integer gender;private String phone;private Integer deleteFlag;private Date createTime;private Date updateTime;}

1.3 创建文章表和实体类

上⾯建了⼀张⽤⼾表, 我们再来建⼀张⽂章表, 进⾏多表关联查询.
⽂章表的uid, 对应⽤⼾表的id.

创建文章表:

-- 创建⽂章表
DROP TABLE IF EXISTS articleinfo;
CREATE TABLE articleinfo (
id INT PRIMARY KEY auto_increment, title VARCHAR ( 100 ) NOT NULL,
content TEXT NOT NULL, uid INT NOT NULL,
delete_flag TINYINT ( 4 ) DEFAULT 0 COMMENT '0-正常, 1-删除',
create_time DATETIME DEFAULT now(), update_time DATETIME DEFAULT now()
) DEFAULT charset 'utf8mb4';

插入数据

-- 插⼊测试数据
INSERT INTO articleinfo ( title, content, uid ) VALUES ( 'Java', 'Java正文', 1
);
INSERT INTO articleinfo ( title, content, uid ) VALUES ( 'MySQL', 'MySQL正文', 1
);
INSERT INTO articleinfo ( title, content, uid ) VALUES ( 'C', 'C正文', 2
);

实体类的属性名与表中的字段名⼀⼀对应

@Data
public class ArticleInfo { private Integer id; private String title; private String content; private Integer uid; private Integer deleteFlag; private Date createTime; private Date updateTime;
}

1.4 配置文件

Application.yml文件中配置:

# 数据库连接配置
spring:datasource:# MySQL在远程服务器上url: jdbc:mysql://x.x.x.x:3306/mybatis_test?characterEncoding=utf8&useSSL=falseusername: root  #MySQL账号password: root  #MySQL密码driver-class-name: com.mysql.cj.jdbc.Drivermybatis:configuration: # 配置打印 MyBatis⽇志log-impl: org.apache.ibatis.logging.stdout.StdOutImplmap-underscore-to-camel-case: true #配置驼峰⾃动转换# 配置 mybatis xml 的⽂件路径,在 resources/mapper 创建所有表的 xml ⽂件mapper-locations: classpath:mapper/**Mapper.xml

2.多表查询

2.1 需求: 根据uid查询书的作者等相关信息

2.1.1 注解实现

SQL命令:

SELECTa.id,a.title,a.content,a.uid,b.username,b.age,b.gender
FROMarticleinfo aLEFT JOIN user_info b ON a.uid = b.id
WHEREa.id =1;

根据查询的结果在ArticleInfo 类补充相关的属性:

@Data
public class ArticleInfo {private Integer id;private String title;private String content;private Integer uid;private Integer deleteFlag;private Date createTime;private Date updateTime;// 补充⽤⼾相关信息private String username;private Integer age;private Integer gender;}

ArticleInfoMapper接口:

@Mapper
public interface ArticleInfoMapper {@Select("select a.id,a.title,a.content,a.uid, b.username, b.age, b.gender " + // 注意最后的空格"from articleinfo a left join user_info b on a.uid=b.id " +"where a.id = #{id}")ArticleInfo queryArticleAndUser(Integer id);
}

测试代码:

@Slf4j
@SpringBootTest
class ArticleInfoMapperTest {@Autowiredprivate ArticleInfoMapper articleInfoMapper;@Testvoid queryArticleAndUser() {articleInfoMapper.queryArticleAndUser(1);}
}

运行结果:
在这里插入图片描述
如果名称不⼀致的, 采⽤Results, 或者别名的⽅式解决, 和单表查询⼀样 Mybatis 不分单表还是多表, 主要就是三部分: SQL, 映射关系和实体类

2.1.2 XML实现

SQL命令:

SELECTa.id,a.title,a.content,a.uid,b.username,b.age,b.gender
FROMarticleinfo aLEFT JOIN user_info b ON a.uid = b.id
WHEREa.id =1;

根据查询的结果在ArticleInfo 类补充相关的属性:

@Data
public class ArticleInfo {private Integer id;private String title;private String content;private Integer uid;private Integer deleteFlag;private Date createTime;private Date updateTime;// 补充⽤⼾相关信息private String username;private Integer age;private Integer gender;}

ArticleInfoMapper接口:

@Mapper
public interface ArticleInfoXMLMapper {ArticleInfo queryArticleAndUser(Integer id);
}

ArticleInfoXMLMapper.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.example.mybatis.mapper.ArticleInfoXMLMapper"><select id ="queryArticleAndUser" resultType="org.example.mybatis.model.ArticleInfo">select a.id,a.title,a.content,a.uid, b.username, b.age, b.genderfrom articleinfo a left join user_info b on a.uid=b.idwhere a.id = #{id}</select></mapper>

测试代码:

@Slf4j
@SpringBootTest
class ArticleInfoXMLMapperTest {@Autowiredprivate ArticleInfoXMLMapper articleInfoXMLMapper;@Testvoid queryArticleAndUser() {articleInfoXMLMapper.queryArticleAndUser(1);}
}

运行结果:
在这里插入图片描述

如果名称不⼀致的, 采⽤ResultMap, 或者别名的⽅式解决, 和单表查询⼀样 Mybatis 不分单表还是多表, 主要就是三部分: SQL, 映射关系和实体类

2.2 需求: 根据user_in的id查询作者创作的书相关信息

2.1.1 注解实现

SQL命令:

SELECTb.username,b.age,b.gender,a.id,a.title,a.content,a.uid
FROMarticleinfo aRIGTH JOIN user_info  b ON b.uid = a.id
WHEREb.id =1;

根据查询的结果在ArticleInfo 类补充相关的属性:

@Data
public class ArticleInfo {private Integer id;private String title;private String content;private Integer uid;private Integer deleteFlag;private Date createTime;private Date updateTime;// 补充⽤⼾相关信息private String username;private Integer age;private Integer gender;}

ArticleInfoMapper接口:

@Mapper
public interface ArticleInfoMapper {@Select("select b.username, b.age,b.gender,a.id,a.title,a.content,a.uid " + // 注意最后的空格"from articleinfo a right join user_info b on a.uid=b.id " +"where b.id = #{id}")List<ArticleInfo> queryArticleAndUser(Integer id);
}

测试代码:

@Slf4j
@SpringBootTest
class ArticleInfoMapperTest {@Autowiredprivate ArticleInfoMapper articleInfoMapper;@Testvoid queryArticleAndUser() {articleInfoMapper.queryArticleAndUser(1);}
}

运行结果:
在这里插入图片描述

如果名称不⼀致的, 采⽤Results, 或者别名的⽅式解决, 和单表查询⼀样 Mybatis 不分单表还是多表, 主要就是三部分: SQL, 映射关系和实体类

2.1.2 XML实现

SQL命令:

SELECTb.username,b.age,b.gender,a.id,a.title,a.content,a.uid
FROMarticleinfo aRIGHT JOIN user_info b ON a.uid = b.id
WHEREa.id =1;

根据查询的结果在ArticleInfo 类补充相关的属性:

@Data
public class ArticleInfo {private Integer id;private String title;private String content;private Integer uid;private Integer deleteFlag;private Date createTime;private Date updateTime;// 补充⽤⼾相关信息private String username;private Integer age;private Integer gender;}

ArticleInfoMapper接口:

@Mapper
public interface ArticleInfoXMLMapper {List<ArticleInfo> queryArticleAndUser(Integer id);
}

ArticleInfoXMLMapper.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.example.mybatis.mapper.ArticleInfoXMLMapper"><select id ="queryArticleAndUser" resultType="org.example.mybatis.model.ArticleInfo">select b.username, b.age, b.gender,a.id,a.title,a.content,a.uidfrom articleinfo a right join user_info b on a.uid=b.idwhere b.id = #{id}</select></mapper>

测试代码:

@Slf4j
@SpringBootTest
class ArticleInfoXMLMapperTest {@Autowiredprivate ArticleInfoXMLMapper articleInfoXMLMapper;@Testvoid queryArticleAndUser() {articleInfoXMLMapper.queryArticleAndUser(1);}
}

运行结果:
在这里插入图片描述

如果名称不⼀致的, 采⽤ResultMap, 或者别名的⽅式解决, 和单表查询⼀样 Mybatis 不分单表还是多表, 主要就是三部分: SQL, 映射关系和实体类

http://www.dtcms.com/wzjs/55813.html

相关文章:

  • 免费b2b网站大全不花钱成功的软文推广
  • 外观设计网站网络营销swot分析
  • 微信如何做积分商城网站微友圈推广平台怎么加入
  • wordpress 360浏览器优化优化
  • 平面设计广告设计培训班广东搜索引擎优化
  • 做网站就上凡科建站网络工程师培训班要多少钱
  • 建网站多少百度一下网页入口
  • 建设网站所采用的技术app开发定制
  • js企业网站模板老王搜索引擎入口
  • 公司网站建设价seo推广教程视频
  • 旅游做攻略用什么网站黄冈seo顾问
  • 惠州网站建设服务百度搜索风云榜排行榜
  • 武汉傅友建设集团网站商家怎么入驻百度
  • 电子工程设计网站福州网站优化公司
  • 重庆智能网站建设多少钱电子报刊的传播媒体是什么
  • 手机电影网站怎样做搜索量排行
  • 网站设计效果专业乐云seo如何免费创建自己的网站平台
  • 太原网站建设费用企业网站推广方法
  • 怎么设置网站栏目景区营销案例100例
  • 建设宠物网站的可行性我要软文网
  • 华为的网站建设网站收录入口
  • 应用商店网站模板精准营销方式有哪些
  • 长春专业做网站公司排名厦门seo优化
  • 网页广告拦截怎么设置seo报名在线咨询
  • 南宁建设网站公司抖音seo推荐算法
  • 建站abc客服电话营销网站建设培训学校
  • 制作网站能挣钱aso具体优化
  • 南昌网站建设行情盐城seo营销
  • 网站开发语言查看新闻软文发稿平台
  • 深圳 经营性网站备案北大青鸟培训机构靠谱吗