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

软件 网站开发合作协议seo优化 搜 盈seo公司

软件 网站开发合作协议,seo优化 搜 盈seo公司,成熟短视频源码大全,政务网站建设工作计划文章目录 数据库操作--开启Durid 监控整合Druid 到Spring-Boot官方文档基本介绍Durid 基本使用代码实现 Durid 监控功能-SQL 监控需求:SQL 监控数据SQL 监控数据-测试页面 Durid 监控功能-Web 关联监控需求:Web 关联监控配置-Web 应用、URI 监控重启项目 Durid 监控功能-SQL 防…

文章目录

  • 数据库操作--开启Durid 监控
    • 整合Druid 到Spring-Boot
      • 官方文档
      • 基本介绍
      • Durid 基本使用
        • 代码实现
      • Durid 监控功能-SQL 监控
        • 需求:
        • SQL 监控数据
        • SQL 监控数据-测试页面
      • Durid 监控功能-Web 关联监控
        • 需求:
        • Web 关联监控配置-Web 应用、URI 监控
        • 重启项目
      • Durid 监控功能-SQL 防火墙
        • SQL 防火墙
      • Durid 监控功能-Session 监控
      • Session 监控
      • Druid Spring Boot Starter
        • 基本介绍
        • 应用实例
          • 具体实现
          • 重启项目,完成测试

数据库操作–开启Durid 监控

整合Druid 到Spring-Boot

官方文档

使用手册: https://github.com/alibaba/druid

image-20230819203149225

  • 中文手册: https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98
  • English手册: https://github.com/alibaba/druid/wiki/FAQ
  • Druid Spring Boot Starter 手册:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

基本介绍

  1. HiKariCP: 目前市面上非常优秀的数据源, 是springboot2 默认数据源。

  2. Druid: 性能优秀,Druid 提供性能卓越的连接池功能外【Java 基础】,还集成了SQL 监控,黑名单拦截等功能,强大的监控特性,通过Druid 提供的监控功能,可以清楚知道连接池和SQL 的工作情况,所以根据项目需要,我们也要掌握Druid 和SpringBoot 整合。

  3. 整合Druid 到Spring-Boot 方式
    ● 自定义方式
    ● 引入starter 方式

Durid 基本使用

需求: 将Spring-Boot 的数据源切换成Druid

代码实现

1.修改pom.xml , 引入druid 依赖

<!-- 引入druid 依赖-->
<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.17</version>
</dependency>

2.创建com/nlc/usersys/config/DruidDataSourceConfig.java 配置类

@Configuration
public class DruidDataSourceConfig {//编写方法,注入DruidDataSource//说明:为什么我们注入自己的DataSource , 默认的HiKariDatasource失效?//1. 默认的数据源是如配置? @ConditionalOnMissingBean({ DataSource.class, XADataSource.class })// 解读:通过@ConditionalOnMissingBean({ DataSource.class}) 判断如果容器有DataSource Bean 就不注入默认的HiKariDatasource//2. debug源码.@ConfigurationProperties("spring.datasource")@Beanpublic DataSource dataSource() throws SQLException {//1. 配置了 @ConfigurationProperties("spring.datasource")//   就可以读取到application.yml的配置//2. 我们就不需要调用DruidDataSource 对象的setXxx, 会自动关联DruidDataSource druidDataSource = new DruidDataSource();
//        druidDataSource.setUrl("jdbc:mysql://localhost:3306/furn_ssm?useSSL=true&useUnicode=true&characterEncoding=UTF-8");
//        druidDataSource.setUsername("root");
//        druidDataSource.setPassword("123456");return druidDataSource;}
}
  1. 完成测试,运行ApplicationTests.java , 观察数据源的运行类型

image-20230819211142111

Durid 监控功能-SQL 监控

需求:

配置Druid 的监控功能,包括SQL 监控、SQL 防火墙、Web 应用、Session 监控等

SQL 监控数据

  1. 修改com/nlc/usersys/config/DruidDataSourceConfig.java , 增加druid 监控功能
    地址:https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatViewServlet%E9%85%8D%E7%BD%AE

image-20230819212727392

@Configuration
public class DruidDataSourceConfig {//编写方法,注入DruidDataSource//说明:为什么我们注入自己的DataSource , 默认的HiKariDatasource失效?//1. 默认的数据源是如配置? @ConditionalOnMissingBean({ DataSource.class, XADataSource.class })// 解读:通过@ConditionalOnMissingBean({ DataSource.class}) 判断如果容器有DataSource Bean 就不注入默认的HiKariDatasource//2. debug源码.@ConfigurationProperties("spring.datasource")@Beanpublic DataSource dataSource() throws SQLException {//1. 配置了 @ConfigurationProperties("spring.datasource")//   就可以读取到application.yml的配置//2. 我们就不需要调用DruidDataSource 对象的setXxx, 会自动关联DruidDataSource druidDataSource = new DruidDataSource();
//        druidDataSource.setUrl("jdbc:mysql://localhost:3306/furn_ssm?useSSL=true&useUnicode=true&characterEncoding=UTF-8");
//        druidDataSource.setUsername("root");
//        druidDataSource.setPassword("123456");return druidDataSource;}//配置druid的监控页功能@Beanpublic ServletRegistrationBean statViewServlet() {//创建StatViewServletStatViewServlet statViewServlet = new StatViewServlet();ServletRegistrationBean<StatViewServlet> registrationBean =new ServletRegistrationBean<>(statViewServlet, "/druid/*");//设置init-parameter, 设置用户名和密码registrationBean.addInitParameter("loginUsername", "hhh");registrationBean.addInitParameter("loginPassword", "666666");return registrationBean;}
}
  1. 完成测试: 访问http://localhost:10000/druid/index.html 不会被拦截, 如果没有问题,会看到这个页面

image-20230819213106642

image-20230819213135404

  1. 修改com/nlc/usersys/config/DruidDataSourceConfig.java , 加入监控功能

    参考: https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatFilter

    image-20230819213229524

 @ConfigurationProperties("spring.datasource")@Beanpublic DataSource dataSource() throws SQLException {//1. 配置了 @ConfigurationProperties("spring.datasource")//   就可以读取到application.yml的配置//2. 我们就不需要调用DruidDataSource 对象的setXxx, 会自动关联DruidDataSource druidDataSource = new DruidDataSource();
//        druidDataSource.setUrl("jdbc:mysql://localhost:3306/furn_ssm?useSSL=true&useUnicode=true&characterEncoding=UTF-8");
//        druidDataSource.setUsername("root");
//        druidDataSource.setPassword("123456");//加入监控功能, 加入了sql防火墙监控druidDataSource.setFilters("stat,wall");return druidDataSource;} 
  1. 创建com/nlc/usersys/controller/DruidSqlController.java ,模拟操作DB 的请求
@Controller
public class DruidSqlController {@Resourceprivate JdbcTemplate jdbcTemplate;@ResponseBody@GetMapping("/sql")public List<Furn> crudDB() {BeanPropertyRowMapper<Furn> rowMapper = new BeanPropertyRowMapper<>(Furn.class);List<Furn> furns = jdbcTemplate.query("select * from `furn`", rowMapper);for (Furn furn : furns) {System.out.println(furn);}return furns;}}

SQL 监控数据-测试页面

完成测试, 观察SQL 监控数据, 浏览器输入http://localhost:10000/druid/sql.html

各项的含义,请参考druid文档

image-20230819215042686

登陆后请求SQL路径

image-20230819215227433

image-20230819215248393

Durid 监控功能-Web 关联监控

需求:

配置Web 关联监控配置:Web 应用、URI 监控

官方文档https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98

image-20230819215413558

image-20230819215430266

Web 关联监控配置-Web 应用、URI 监控

  1. 修改com/nlc/usersys/config/DruidDataSourceConfig.java , 注入/ 增加WebStatFilter 用于采集web-jdbc 关联监控的数据
 //配置WebStatFilter, 用于采集web-jdbc关联的监控数据@Beanpublic FilterRegistrationBean webStatFilter() {//创建 WebStatFilterWebStatFilter webStatFilter = new WebStatFilter();FilterRegistrationBean<WebStatFilter> filterRegistrationBean =new FilterRegistrationBean<>(webStatFilter);//默认对所有的url请求进行监控filterRegistrationBean.setUrlPatterns(Arrays.asList("/*"));//排除指定的urlfilterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");return filterRegistrationBean;}
  1. 为了测试方便,修改com/nlc/usersys/config/WebConfig.java, 放行/sql 请求
@Configuration
public class WebConfig /*implements WebMvcConfigurer*/ {@Beanpublic WebMvcConfigurer webMvcConfigurer() {return new WebMvcConfigurer() {@Overridepublic void addInterceptors(InterceptorRegistry registry) {System.out.println("addInterceptors~~~");//注册拦截器registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/**").excludePathPatterns("/","/login","/images/**","/upload.html","/upload","/sql");}};}
}

重启项目

完成测试,重启项目,看看Web 应用和URI 监控是否生效

image-20230819215758889

image-20230819215831369

image-20230819215849857

Durid 监控功能-SQL 防火墙

需求: 配置SQL 防火墙
官方文档https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98

image-20230819215935776

SQL 防火墙

  1. 修改com/nlc/usersys/config/DruidDataSourceConfig.java ,加入防火墙监控

image-20230819220209864

  1. 完成测试,重启项目,看看SQL 防火墙监控是否生效

image-20230819220246846

image-20230819220319060

Durid 监控功能-Session 监控

需求: 配置Session 监控
官方文档https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98

image-20230819220400596

image-20230819221024958

Session 监控

  1. 重启项目, 先登录管理系统

image-20230819221118968

  1. 完成测试, 查看监控页需要输入用户名和密码, 点击Session 监控,可以看到相关信息(注意要登录用户系统,才能看到Session 监控信息)

image-20230819221341149

image-20230819221519711

Druid Spring Boot Starter

基本介绍

  1. 前面我们使用的是自己引入druid+配置类方式整合Druid 和监控
  2. Druid Spring Boot Starter 可以让程序员在Spring Boot 项目中更加轻松集成Druid 和监控

应用实例

需求: 使用Druid Spring Boot Starter 方式完成Druid 集成和监控

具体实现
  1. 修改pom.xml 注销druid 的依赖
<!--        <dependency>-->
<!--            <groupId>com.alibaba</groupId>-->
<!--            <artifactId>druid-spring-boot-starter</artifactId>-->
<!--            <version>1.1.17</version>-->
<!--        </dependency>-->
  1. 注销com/nlc/usersys/config/DruidDataSourceConfig.java

  2. 这时测试,druid 失效

image-20230819222058960

  1. 查看druid 文档https://github.com/alibaba/druid,引入druid starter

image-20230819222122642

image-20230819222132731

  1. 确认druid starter 引入哪些依赖

image-20230819222155458

  1. 修改resources/application.yml 增加配置参数
spring:servlet:multipart:max-file-size: 10MBmax-request-size: 50MBdatasource: #配置数据源# 说明: 如果你没有指定useSSL=true ,启动项目会报红警告, 环境的问题,需要灵活处理url: jdbc:mysql://localhost:3306/furn_ssm?useSSL=true&useUnicode=true&characterEncoding=UTF-8username: rootpassword: 123456driver-class-name: com.mysql.jdbc.Driver#配置druid和监控功能druid:stat-view-servlet:enabled: truelogin-username: jacklogin-password: 666reset-enable: falseweb-stat-filter: #配置web监控enabled: trueurl-pattern: /*exclusions: '*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*'filter:stat: #sql监控slow-sql-millis: 1000log-slow-sql: trueenabled: truewall: #配置sql防火墙enabled: trueconfig:drop-table-allow: falseselect-all-column-allow: false
重启项目,完成测试

完成测试

image-20230819222426229

http://www.dinnco.com/news/26482.html

相关文章:

  • 河南网络洛阳网站建设河南网站建设杭州seo排名优化外包
  • 网站的分类有哪些内容线下广告投放渠道都有哪些
  • 网站开发有名的公司优化营商环境存在问题及整改措施
  • 做网站需要看那几点上街网络推广
  • 唐山市里做网站的关键词推广和定向推广
  • 珠海做网站最好的公司有哪些百度风云榜小说榜排名
  • 杭州网站制作机构做seo前景怎么样
  • wordpress标签3d商丘优化公司
  • 什么公司会招网站建设天津关键词优化平台
  • sql server网站建设宝安网站建设
  • 连云港东海县做网站深圳营销推广引流公司
  • 网站建设简介电话宁波seo推荐优化
  • 网站做单链 好不好武汉百捷集团百度推广服务有限公司
  • 怎样做自己的网络平台seo网站内容优化有哪些
  • 北京做手机网站建设cms建站
  • wordpress插件丢失哈尔滨seo优化软件
  • 阿玛尼手表网站域名服务器ip地址查询
  • 装饰公司响应式网站建设案例今日新闻网
  • 怎么免费做网站网络推广怎么收费
  • 淘客网站如何做推广企业培训课程名称
  • 用政府网站做参考文献的格式旅游新闻热点
  • 山东网络公司排名嘉兴seo报价
  • 扬中网站建设策划足球进球排行榜
  • 做电子商务网站 除了域名 网页设计 还有服务器 和网站空间百度推广网站平台
  • 网站怎么做留言网络推广营销网
  • 建设网站的费用属于制作网页用什么软件
  • 禅城区建网站公司网上怎么发布广告
  • 建筑网站排行soso搜搜
  • 展台展馆设计搭建搜索引擎的优化方法有哪些
  • 培训学校网站建设方案南昌seo排名优化