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

生活类网站内容建设网络服务提供者不履行法律行政法规规定

生活类网站内容建设,网络服务提供者不履行法律行政法规规定,潍坊+网站建设,怎样不花钱做网站前言:现在项目普遍使用的数据库都是MySQL,而有些项目实际上使用SQLite既足矣。在一些特定的项目中,要比MySQL更适用。 这一篇文章简单的介绍一下SQLite,对比MySQL的优缺点、以及适用的项目类型和集成SpringBoot。 1. SQLite 简介 …

前言:现在项目普遍使用的数据库都是MySQL,而有些项目实际上使用SQLite既足矣。在一些特定的项目中,要比MySQL更适用。
这一篇文章简单的介绍一下SQLite,对比MySQL的优缺点、以及适用的项目类型和集成SpringBoot


1. SQLite 简介

SQLite 是一种轻量级、嵌入式的关系型数据库管理系统,具有以下特点:

  1. 单文件存储:所有的数据库对象(如表、索引、视图等)都存储在一个普通的文件中,便于移动和备份。
  2. 无服务器架构:无需独立的服务器进程,数据库引擎直接嵌入应用程序中运行,极大地简化了部署。
  3. 零配置:不需要安装或配置,直接拷贝文件即可使用。
  4. 支持事务:完全支持 ACID(原子性、一致性、隔离性、持久性)事务机制,保证数据完整性。
  5. 跨平台:SQLite 数据库文件可以在不同操作系统之间无缝迁移。
  6. 开放源码:SQLite 是开源的,遵循公共领域协议,免费供个人和商业项目使用。

2. 对比MySQL的相对优缺点

1. SQLite 的相对优点
  1. 轻量级与便捷性
    • 无服务器架构:SQLite 不需要安装服务器,也无需运行单独的服务程序,直接嵌入到应用程序中。
    • 零配置:使用时无需复杂的配置,只需引入库文件即可开始操作。
  2. 单文件存储
    • SQLite 的数据库存储为单个文件,便于迁移和备份。
    • 适合嵌入式设备或小型应用程序。
  3. 资源占用小
    • SQLite 的代码库很小(通常小于 1MB),对系统资源的占用极低。
    • 特别适合内存和存储空间有限的设备(如 IoT 设备、移动应用)。
  4. 跨平台兼容性
    • SQLite 的数据库文件在不同操作系统之间完全兼容,无需额外调整。
  5. 易用性高
    • 适合原型设计和快速开发,减少环境配置成本。
    • 提供简单的 API,适合初学者和小型项目。
2. SQLite 的相对缺点
  1. 性能限制
    • 不擅长处理高并发场景,尤其是多写入操作时可能出现锁定问题。
    • 在大型数据集(如 GB 级或更大数据)和复杂查询上性能不如 MySQL。
  2. 功能限制
    • 不支持存储过程、触发器(功能较简单)、视图等高级功能。
    • 不具备复杂的权限管理机制,没有用户角色划分,适合单用户场景。
  3. 安全性较低
    • SQLite 没有内置的用户管理和身份验证机制,依赖应用程序自身控制访问权限。
    • 不适合需要高安全性或多用户权限管理的场景。
  4. 缺乏扩展性
    • SQLite 设计为单机数据库,不支持分布式架构或主从复制。
    • 无法满足大规模企业级应用的需求。
  5. 并发能力不足
    • SQLite 采用数据库级别锁,写入操作时会阻塞其他操作,无法处理高并发写入需求。
    • 相比 MySQL 的行级锁,事务管理能力较弱。
  6. 数据类型较少
    • 没有date、decimal、json等数据类型。(有处理时间的函数)

3. 应用场景

  • 嵌入式开发:广泛用于移动应用(如 Android 和 iOS)、IoT 设备等。
  • 桌面软件:如浏览器(Google Chrome、Firefox)、媒体播放器等。
  • 快速开发和测试:适合小型应用或开发中的原型设计。
  • 只读数据库:适合存储小型静态数据(如配置文件或数据字典)。
  • 做配置文件:一些桌面端、APP、linux应用服务的配置文件。

4. 集成SpringBoot

1. 使用idea快速创建一个SpringBoot项目

2. 在pom.xml<dependencies>中添加sqlite的依赖
<!-- spring-boot-starter-jdbc 和 SQLite 驱动 sqlite-jdbc -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency><groupId>org.xerial</groupId><artifactId>sqlite-jdbc</artifactId><version>3.45.3.0</version>
</dependency>
3. 在application.yaml中添加sqlite的配置
spring:datasource:type: com.zaxxer.hikari.HikariDataSourcedriver-class-name: org.sqlite.JDBCurl: "${database.jdbc}:${database.path}"# 分别单独指定jdbc和path方便获取对应的值
database:jdbc: "jdbc:sqlite"path: "database.db"
4. 配置DataSourceConfig,方便全局使用
import ...@Configuration
@Slf4j
public class DataSourceConfig {@Value("${database.jdbc}")private String jdbc;@Value("${database.path}")private String path;@Value("${spring.datasource.driver-class-name}")private String driverClassName;@Value("${project.version}")private String projectVersion;@Autowiredprivate ServletContext servletContext;@SneakyThrows@Beanpublic DataSource dataSource() {/**1、指定sqlite数据文件的具体位置,或者相对位置。2、初始化时,如果文件不存在、则创建文件、创建相应的数据表(初始化数据库)。3、配置dataSource数据源,方便全局使用。4、其他逻辑...**/}}
5. Application启动类配置
/* 排除自动配置数据源 */
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
  • 参数exclude = {DataSourceAutoConfiguration.class}
    默认情况下,Spring Boot 会根据类路径中的依赖自动配置数据源(比如 HikariDataSource)。不需要数据库或手动配置数据源,可以通过 exclude 参数排除自动配置类。
    这里排除了 DataSourceAutoConfiguration,表示应用不会自动配置数据源。
6. 运行SpringBoot项目
/* 控制台输出 */
Tomcat started on port 8080 (http) with context path ''
Started Application in 3.21 seconds (process running for 4.6)
=================== spring boot 启动成功! =====================

  • 在项目的目录下已经生成了SQLite的数据文件,至此SpringBoot集成SQLite完成

结束语:SQLite 的设计目标是轻量高效易用方便迁移,适合需要嵌入式数据库的应用程序和小型项目。

—— 如果觉得文章有用💪,点个赞,支持一下👏!——

http://www.hkea.cn/news/224960/

相关文章:

  • 贵州软件开发 网站开发手机版百度一下
  • 企业网站建立答辩问题百度怎么发布广告
  • 温州快建网站地推拉新接单网
  • 濉溪县城乡建设委员会燃气办网站热狗网站排名优化外包
  • 网站能不能自己做免费的seo教程
  • 湖南的商城网站建设优化教程网下载
  • 做网站需要哪些工程师西安seo诊断
  • tp做的网站封装成app2023北京封控了
  • 增城做网站要多少钱推广普通话手抄报
  • 石家庄网站系统开发智能搜索引擎
  • 迅速网站网络营销平台推广方案
  • 学前端要逛那些网站微信引流主动被加软件
  • 韩国flash网站免费手机网站建站平台
  • 东莞做网站卓诚网络昆明长尾词seo怎么优化
  • WordPress个性萌化插件郑州seo优化哪家好
  • 专业手机移动网站建设免费的seo优化
  • 西安网站建设王永杰域名注册 万网
  • 网站营销优化方案北京做的好的seo公司
  • 企业网站排名提升软件优化南宁seo优化
  • 创意合肥网站建设杭州seo公司排名
  • 网站专题页是什么中国十大关键词
  • 五月天做网站网络策划与营销
  • 高校网站如何建设论文谷歌官网下载
  • 做网站内容软件个人网站怎么做
  • 收废铁的做网站有优点吗海南百度推广开户
  • wordpress 二维码插件下载信阳搜索引擎优化
  • 个人网站二级域名做淘宝客企业推广策略
  • 厦门做网站seo的seo服务公司招聘
  • 安徽池州做企业网站百度搜索官方网站
  • 芜湖商城网站建设青岛百度快速优化排名