首页 > 其他分享 >Tomcat部署

Tomcat部署

时间:2023-02-22 20:33:33浏览次数:34  
标签:jdbc Tomcat 部署 数据库 DataSource context 连接

Tomcat部署资源:

1.在Tomcat目录文件下的conf/context.xml文件夹中添加

<Environment name="tjndi" value="hello this is news project" type="java.lang.String"/>

2.通过Java脚本进行获取资源

1)创建上下文对象

Context cty=new InitialContext();

2)获取JNDI的信息

String str=(String)cty.lookup("java:com/env/tjndi");

为什么需要链接池?

原因:在我们原来使用java访问数据库时,会造成频繁对数据库开启和关闭,导致已下几点不足:

1.安全性能差,执行访问效率较低

2.需要频繁的进行开启链接,关闭连接,消耗资源

3.当多个并发操作访问同时,数据库功能性较低

连接池的作用:

相当于把建立成功的链接保存在web容器中,不会频繁进行开启和关闭,并且可以进行配置多个连接资源

DataSource类:

作用:为sql语句执行提供链接服务,负责管理数据库连接的信息,以连接的形式进行管理

如何从连接池中进行配置,如何获取到配置的DataSource呢?


使用JNDI配置数据库连接池信息:

1.在Tomcat文件下的conf下的context.xml文件夹配置DataSource参数

<Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"

maxActive="100" maxIdle="30" maxWait="10000" username="root"

password="root" driverClassName="com.mysql.jdbc.Driver"

url="jdbc:mysql://127.0.0.1:3306/user? useUnicode=true&

characterEncoding=utf-8" />


name jndi名称

auth 驱动管理员信息

type 配置的类型 DataSource数据库连接对象信息

maxActive 设置最大活动数量(同时访问量)

maxIdle 设置最大空闲数据量

maxWait 设置最大等待数量

driverClassName 连接数据驱动名称

2.在项目中web.xml配置文件下引入

<!--配置jndi数据源信息-->

<resource-ref>

<res-ref-name>jdbc/test</res-ref-name>

<!--jndi类型-->

<res-type>javax.sql.DataSource</res-type>

<!--jndi管理者-->

<res-auth>Container</res-auth>

</resource-ref>

3.导入数据库连接驱动jar包。直接放到web-info下面的文件夹,没有需要手动创建

4.提供代码获取数据库连接信息

Context context=new InitialContext();

//从jndi中获取了DataSource

DataSource dataSource=(DataSource)

context.lookup("java:comp/env/jdbc/test");

从jndi中获取资源参数获取信息

conn= dataSource.getConnection();

关于开发过程中数据分层概念:

常用的开发模式分为三层

第一层:表现层 作用:为用户提供交互,业务逻辑处理,收集数据等

等二层:业务层 作用:为表现提供数据的请求结果,事务管理

第三层:数据层 作用:为业务数据提供结果,一般比较私密,直接访问数据库数据

事务管理:一般为用户数据操作提供安全性,如果用户操作不当,导致数据异常,可以利用事务进行处理解决

标签:jdbc,Tomcat,部署,数据库,DataSource,context,连接
From: https://blog.51cto.com/u_15907719/6079340

相关文章

  • 统信系统部署es
    rpm-ivhjdk-17.0.4.1_linux-x64_bin.rpmgroupaddes&&useradd-d/home/es-gesestar-xzvfelasticsearch-8.5.2-linux-x86_64.tar.gzln-selasticsearch-8.5.2e......
  • Hyperledger Fabric部署与测试(Ubuntu)
    Fabric部署与测试Fabric部署与测试最正确的还是参照官方链接:HyperledgerFabric官方链接ok,接下来开始部署Fabric。(以Ubuntu为例)一、部署Fabric1.前期准备安装gits......
  • k8s工作端二进制部署-kubelet
    本文章是 k8s二进制高可用集群部署 的分支。详细步骤请参考目录。二进制下载地址压缩包下载:https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG......
  • 项目部署构建中node-sass构建突然失败
    项目中部署安装node-sass失败,由于node版本导致的问题使用dart-sass替换node-sass1.卸载node-sassnpmuninstallnode-sass 2.安装dart-sassnpminstallsasss......
  • E010Web学习笔记-Tomcat
    一、web相关概念回顾1、软件架构C/S架构:客户端/服务器端;B/S架构:浏览器/服务端;浏览器内含静态资源解析引擎;浏览器请求数据,服务器响应来自浏览器的请求; 2、资源......
  • ChilloutMix 腾讯云服务器快速部署
    背景  前两天在某公众号的软文刷到了AI绘画领域最新的ChilloutMix模型。大概是下面这张图的效果:激动的心颤抖的手,学了这么多年计算机,就是为了走在时代前沿,事到......
  • SkyWalking 单机部署
    本文参考:https://blog.csdn.net/OptimusPP/article/details/1064258071.概述1.1概念Skywalking是什么?FROMhttp://skywalking.apache.org分布式系统的应用程序......
  • Intellij IDEA配置Tomcat并创建JavaWeb项目
    IntellijIDEA配置Tomcat并创建JavaWeb项目​​IntellijIDEA配置Tomcat并创建JavaWeb项目​​​​一、实验环境​​二、说明​​三、Web项目搭建​​​​四、运行Web项目​......
  • 65-CICD持续集成工具-Jenkins分布式架构及部署全过程
    Jenkins分布式相关概念Jenkins官方提供了Jenkins分布式构建,将众多job分散运行到不同的Jenkinsslave节点,大幅提高并行job的处理能力。除此之外,还可以针对不同的开发环......
  • K8S部署&DevOps
    一、k8s集群部署1、k8s快速入门1)、简介Kubernetes简称k8s。是用于自动部署,扩展和管理容器化应用程序的开源系统。中文官网:https://kubernetes.io/zh/中文社区:https......