本文主要介绍“如何实现mysql读写分离”。在日常操作中,相信很多人对于如何实现mysql读写分离都有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮你解答“如何实现mysql读写分离”的疑惑!接下来,请和边肖一起学习!
00-1010:首先,准备一个网站。这里我们模拟一个网站的页面,主要实现对开源网页的动态访问。后面我们会用这个页面进一步实现mysql的读写分离。
一目的
前台是开源网页的页面。
百里香的后台开发
00-1010将网站实例页面复制到以下路径/模板/案例1页面
将静态页面(包括js文件)复制到/static
二架构
Pom增加了相应的jar包依赖,比如不方便开发的可以增加热部署依赖
建设
插件
插件
groupIdorg.springframework.boot/groupId
artifactIdspring-boot-maven-plugin/artifactId
属国
<!-- spring热部署-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>1.2.1.RELEASE</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
整合mybatis
在Application中编写设置注入数据源和SqlSessionFactory的方法如下
@Bean
@ConfigurationProperties(prefix="spring.datasource")
public DataSource dataSource() {
return new org.apache.tomcat.jdbc.pool.DataSource();
//com.alibaba.druid.pool.DruidDataSource();
}
3 数据库设计
主要采用两个表SD_CATEGORY,SD_LABLE_SWITCH,存放对应页面中标题和标题中相关的详细数据。具体建表和数据可见附件脚本
三实际功能
页面中实现了12个demo的动态效果
已第11个demo为例。说明实现方式
1静态页面中数据样式如下
<li class="nLi">
<h4><a
href="http://www.SuperSlide2.com" target="_blank">新闻
<ul
class="sub">
<li><a
href="#">新闻首页</li>
<li><a
href="#">新闻人物</li>
<li><a
href="#">新闻电视</li>
<li><a
href="#">新闻图片</li>
<li><a
href="#">新闻视频</li>
<li><a
href="# ">新闻专题</li>
</ul>
</li>
<li
class="nLi">
<h4><a
href="http://www.SuperSlide2.com" target="_blank">预告片
<ul
class="sub">
<li><a
href="#">新闻首页</li>
<li><a
href="#">新闻人物</li>
<li><a
href="#">新闻电视</li>
<li><a
href="#">新闻图片</li>
<li><a
href="#">新闻视频</li>
<li><a
href="# ">新闻专题</li>
</ul>
</li>
根据上面数据显示方式确定现在后台存放数据的结构是,用一个对象存放标题和条目数据(List),然后再用一个组列表存放这些对象,已此来对应页面的结构
2页面显示方式如下
<li class="nLi" th:each="list:${grp11List}">
<h4><a href="http://www.SuperSlide2.com" target="_blank" th:text="${list.TP_NM}">新闻</a></h4>
<ul class="sub">
<li th:each="lableList:${list.lable}">
<a href="#">
<p th:text="${lableList.LAB_NM}">新闻首页</p>
</a>
</li>
</ul>
</li>
后台存放方式
在处理对应demo实例的controller里组织数据的逻辑如下
//查找标题
List<GrpTitle> grpTitle = userService.getGrpTitle(caseId);
//查找每个标题时,找出所有对应lable数据并放入一个grplist
for (GrpTitle title : grpTitle) {
List<Lable> lable = userService.getLableInfo(title.getGRP_ID());
FullContent cont = new FullContent();
cont.setTP_NM(title.getTP_NM());
cont.setLable(lable);
//把所有grplist放到一个list
grpList.add(cont);
}
//加入case1 返回需要的结果
model.addAttribute("grp11List", grpList);
到此,关于“怎么实现mysql读写分离”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/101154.html