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

天津手机网站建设制作博客seo教程

天津手机网站建设制作,博客seo教程,娄底网站制作,wordpress 论坛插件Mybatis执行自定义SQL并使用PageHelper进行分页 基于Mybatis&#xff0c;让程序可以执行动态传入的SQL&#xff0c;而不需要在xml或者Select语句中定义。 代码示例 pom.xml 依赖 <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId&g…

Mybatis执行自定义SQL并使用PageHelper进行分页

基于Mybatis,让程序可以执行动态传入的SQL,而不需要在xml或者@Select语句中定义。

代码示例

pom.xml 依赖

        <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.2</version></dependency><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>2.1.0</version></dependency>

application.properties 配置数据库连接,这里使用的数据库是MySQL默认的示例数据库:world

#指定Mybatis的Mapper文件
mybatis.mapper-locations=classpath:mappers/*xml
#指定Mybatis的实体目录
mybatis.type-aliases-package=com.example.db.mybatis.entity
# 应用服务 WEB 访问端口
server.port=28084spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/world?useUnicode=true&characterEncoding=utf8&autoReconnect=true&useSSL=true&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8
spring.datasource.username=root
spring.datasource.password=root

定义controller,用以动态传入需要执行的sql:

@RestController
@Slf4j
public class DBController {@Autowiredprivate UserService userService;@GetMapping("/query")public Object query() {String sql = "select * from city";return userService.executeDynamicSql(sql);}
}

定义service,用于调用mapper方法:

@Service
public class UserService {@Autowiredprivate DynamicSqlMapper dynamicSqlMapper;public List<Map<String, Object>> executeDynamicSql(String sql) {PageHelper.offsetPage(0,10);	// 这里演示pagehelper是否可以对动态传入的sql进行分页return dynamicSqlMapper.executeDynamicSql(sql);}
}

定义mapper接口,用以承载sql语句的执行:

@Mapper
public interface DynamicSqlMapper {@SelectProvider(type = MySqlProvider.class, method = "getDynamicSql")List<Map<String, Object>> executeDynamicSql(String sql);
}

定义sql语句的获取方式:

public class MySqlProvider {public String getDynamicSql(String sql) {return sql;}
}

执行结果

访问接口:http://localhost:28084/query
使用 JTracker 插件可以查看到具体执行的sql语句如下,第一次查询count,第二次进行分页查询:

-- com.example.db.demos.web.mapper.DynamicSqlMapper#executeDynamicSql_COUNT --
-- [21:10:03.894] [2.00ms]
SELECT count(0) FROM city-- com.example.db.demos.web.mapper.DynamicSqlMapper#executeDynamicSql --
-- [21:10:03.917] [1.00ms]
select * from cityLIMIT 10 

结论

使用 @SelectProvider 注解可以动态执行传入的sql,并使用pageHelper进行分页。

http://www.yidumall.com/news/47519.html

相关文章:

  • 四川省建设招标网站google推广工具
  • 怎么做网站后缀识别符号才不会变防止恶意点击软件管用吗
  • 长沙app定制开发关键词优化公司如何选择
  • 网络架构相关文献qq群怎么优化排名靠前
  • 注册企业管理咨询服务公司网络seo是什么
  • 无锡新区企业网站推广学seo网络推广
  • 视频直播网站建设方案培训网站搭建
  • 网站建设开发感悟百度文库首页
  • 做网站组织结构框架例子刺激广告
  • 做网站需要准备什么资料网站seo优化运营
  • 制作网站需要学什么软件有哪些内容网站网络营销
  • 免费自助建站软件爱站网备案查询
  • 北京设计公司哪家好西安网站seo价格
  • 网站设计公司飞沐免费网站谁有靠谱的
  • 前端培训出来进公司都不会广州网站优化软件
  • 莆田5g网站建设公司刷僵尸粉网站推广
  • 网站建设三秒原则做一个公司网页多少钱
  • 免费企业网站模板html百度小说搜索风云榜总榜
  • 腾讯云wed服务器做网站巨量引擎官网
  • 网页设计网站开发培训百度竞价点击一次多少钱
  • 开封市住房和城乡建设 网站网站建设推广多少钱
  • wordpress怎么登录上海网络排名优化
  • 平板电脑可以做网站不什么是seo标题优化
  • 峰峰信息港邯郸信息港网站优化排名易下拉稳定
  • 深入解析 wordpressseo分析工具
  • 学做网站论坛vip教程视频号推广
  • 政府网站建设与维护百度点击器找名风
  • 盐城网站开发基本流程电脑版百度
  • 政府建立网站的好处网页设计与制作案例教程
  • 网站开发培训课程店铺推广平台有哪些