JAVA-Tomcat

双11提前购!买周边/年卡,一键领4重福利! 送200元神券包+10%红包返利+最高10年VIP!还能抽iPhone18Pro!仅限1次,速抢>> 阅读详情

安装环境

软件准备:java环境,tomcat下载
JDK下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Tomcat下载:http://tomcat.apache.org/

01tomcat.png-6.1kB

#####   安装java   #####
#jdk解压,二进制包,不用编译,软件接是因为名字太长了
[root@moban6 ~]# tar xf jdk-8u60-linux-x64.tar.gz -C /usr/local/
[root@moban6 ~]# ln -s /usr/local/jdk1.8.0_60 /usr/local/jdk

#配置java环境变量(必须要有,否则启动tomcat找不到的)
[root@moban6 ~]# sed -i.ori '$a export JAVA_HOME=/usr/local/jdk\nexport PATH=$JIAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH\nexport CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar' /etc/profile
[root@moban6 ~]# tail -3 /etc/profile
export JAVA_HOME=/usr/local/jdk  #java装在哪了
export PATH=$JIAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH  #添加环境变量
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
#立刻生效
[root@moban6 ~]# source /etc/profile
#看版本号
[root@moban6 ~]# which java
/usr/local/jdk/jre/bin/java
[root@moban6 ~]# java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

#####   安装tomcat   #####
#直接解压,无编译安装
[root@moban6 ~]# tar xf apache-tomcat-8.0.27.tar.gz -C /usr/local/
[root@moban6 ~]# ln -s /usr/local/apache-tomcat-8.0.27/ /usr/local/tomcat

#配置tomcat环境变量

[root@moban6 ~]# echo 'export TOMCAT_HOME=/usr/local/tomcat' >> /etc/profile
[root@moban6 ~]# source /etc/profile

Tomcat 目录介绍

[root@moban6 ~]# cd /usr/local/tomcat/
# -L 1 :只显示第一级目录(L和数字之间有空格)
[root@moban6 tomcat]# tree -L 1
.
├── bin              #命令
├── conf             #配置文件
├── lib              #存放Web应用能访问的JAR包
├── LICENSE
├── logs             #日志
├── NOTICE
├── RELEASE-NOTES
├── RUNNING.txt
├── temp             #临时目录
├── webapps          #网页目录
└── work             #用以产生有JSP编译出的servelet的.java和.class文件

7 directories, 4 files

#里面的文件有漏洞,工作中我们自己写
[root@moban6 tomcat]# ll webapps/
total 20
drwxr-xr-x. 14 root root 4096 Apr 28 20:11 docs         #tomcat帮助文档
drwxr-xr-x.  6 root root 4096 Apr 28 20:11 examples     #web应用实例
drwxr-xr-x.  5 root root 4096 Apr 28 20:11 host-manager #管理
drwxr-xr-x.  5 root root 4096 Apr 28 20:11 manager      #管理
drwxr-xr-x.  3 root root 4096 Apr 28 20:11 ROOT         #默认网站的根目录

启动Tomcat

启动程序:/usr/local/tomcat/bin/startup.sh
关闭程序:/usr/local/tomcat/bin/shutdown.sh

[root@moban6 tomcat]# /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE:   /usr/local/tomcat       #Using都是在检查环境变量
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
#默认监听端口8080
[root@moban6 tomcat]# ss -antup| grep 8080   
tcp    LISTEN     0      100                   :::8080                 :::*      users:(("java",1122,46))

# 然后直接去网页输入当前的服务器的  IP:8080 就能看到了(不用映射)

02tomcat.png-136.2kB

tomcat 配置文件

#tomcat格式文件是以.xml的
[root@moban6 tomcat]# cd /usr/local/tomcat/conf/
root@moban6 conf]# ll -h
total 216K
drwxr-xr-x. 3 root root 4.0K Apr 28 20:33 Catalina
-rw-------. 1 root root  13K Sep 28  2015 catalina.policy
-rw-------. 1 root root 7.0K Sep 28  2015 catalina.properties
-rw-------. 1 root root 1.6K Sep 28  2015 context.xml
-rw-------. 1 root root 3.4K Sep 28  2015 logging.properties
-rw-------. 1 root root 6.4K Sep 28  2015 server.xml         #主配置文件
-rw-------. 1 root root 1.8K Sep 28  2015 tomcat-users.xml   #管理用户的配置文件
-rw-------. 1 root root 1.9K Sep 28  2015 tomcat-users.xsd 
-rw-------. 1 root root 164K Sep 28  2015 web.xml

测试功能。生产环境不要用

Tomcat管理功能用于对Tomcat自身以及部署在Tomcat上的应用惊醒管理的Web应用。在默认情况下是处于禁用状态的,如果需要开启这个功能,就需要配置配置管理用户,即tomcat-users.xml
[root@moban6 conf]# cat -n /usr/local/tomcat/conf/tomcat-users.xml |sed -n '39p'
    39	</tomcat-users>
#在其上加入三行代码
[root@moban6 ~]# sed -i '39i <role rolename="manager-gui"/>\n<role rolename="admin-gui"/>\n<user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>' /usr/local/tomcat/conf/tomcat-users.xml

[root@moban6 ~]# cat -n /usr/local/tomcat/conf/tomcat-users.xml | tail -5 
    38	-->
    39	<role rolename="manager-gui"/>
    40	<role rolename="admin-gui"/>
    41	<user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>
    42	</tomcat-users>
[root@moban6 ~]# /usr/local/tomcat/bin/shutdown.sh 
[root@moban6 ~]# /usr/local/tomcat/bin/startup.sh

03tomcat.png-55.5kB

tmocat主配置文件Serer.xml 详解

Server.xml组件类别

  • 顶级组件:位于整个配置文件的顶层,如server
  • 容器类组件:可以包含其他组件的组件,如service,engine,host,context
  • 连接器组件:连接用户请求至tomcat。如connector
  • 被嵌套类组件:位于一个容器当中,不能包含其他组件,如Valve,logger

04tomcat.png-82.4kB

组件详解

  • engine核心容器组件,catalina引擎,负责通过connector接收用户请求,并处理请求,将请求转至对应的虚拟主机host
  • host:类似于httpd中的虚拟主机,一般而言支持基于FQDN的虚拟主机
  • context:定义一个应用程序,是一个最内层的容器类组件(不能再嵌套),配置context的主要目的指定对应对的webapp的根目录,类似于httpd的alias。其还能为webapp指定额外的属性,如部署方式等
  • connextor:接收用户请求,类似于httpd的listen配置监听端口
  • service(服务):将connector关联至engine,因此一个service内部可以有多个connector,但只能有一个引擎engine,service内部有两个connector,一个engine,因此,一般情况下一个sever内部只有一个service,一个service内部只有一个engine,但一个service内部可以有多个connector
  • server:表示一个云从于JVM中的tomcat实例
  • Valve:阀门,拦截请求并再将其转至对应的webapp前进行魔种处理操作,可以用于任何容器中,比如记录日志(access log value),基于IP做访问控制(remote address filer valve)
  • logger:日志记录器,用于记录组件内部的状态信息,可以用于除context外的任何容器中
  • realm:可以用于任何容器类的组件中,关联一个用户认证库,实现认证和授权。可以关联的认证库有两种:UserDatabaseRealm,MemoryRealm和JDBCRealm
  • UserDatebaseRealm:使用JNDI自定义的用户认证库
  • MemoryRealm:认证信息定义在tomcat-users.xml中
  • JDBCRealm:认证信息定义在数据库中,并通过JDBC连接至数据库中查找认证用户。

tomcat主配置文件

[root@moban6 ~]# vim /usr/local/tomcat/conf/server.xml 
  1 <?xml version='1.0' encoding='utf-8'?>     #版本,支持格式
 22 <Server port="8005" shutdown="SHUTDOWN">   #如果向8005发送(远程也行)关闭请求,就关了tomcat服务了
#telnet 127.0.0.1 8005 登陆进去了,然后输入大写SHUTDOWN 回车,就关闭了tomcat服务
#所以 这个端口需要修改
 53   <Service name="Catalina">
 69     <Connector port="8080" protocol="HTTP/1.1"
 91     <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> #AJP协议
#直接注释掉91行 tomcat注释:"<!-- -->"这是一对 改为如下
#91 <!--    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->
103     <Engine name="Catalina" defaultHost="localhost"> #defaultHost 默认域名
#103     <Engine name="Catalina" defaultHost="www.yunjisuan.com">
123       <Host name="localhost"  appBase="webapps"  #根目录 webapps
#123       <Host name="www.yunjisuan.com"  appBase="webapps"
124             unpackWARs="true" autoDeploy="true"> #是否自动解压war包

05tomcat.png-128.9kB
06tomcat.png-217.1kB
07tomcat.png-163.9kB
08tomcat.png-167.8kB
09tomcat.png-53.6kB

WEB站点部署

上线的代码有两种方式
第一种方式是直接将程序目录放在webapps目录下面。
第二种方式是使用开发工具将程序打包成war包,然后上传到webapps目录下面。

10tomcat.png-8.3kB

[root@moban6 ~]# vim /usr/local/tomcat/conf/server.xml 
#修改 91行注释掉,103和123行改域名
91 <!--    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->
103     <Engine name="Catalina" defaultHost="www.yunjisuan.com">
123       <Host name="www.yunjisuan.com"  appBase="webapps"

#重启服务 
[root@moban6 ~]# /usr/local/tomcat/bin/shutdown.sh
[root@moban6 ~]# /usr/local/tomcat/bin/startup.sh 

#配置war包
[root@moban6 ~]# ls
apache-maven-3.3.9-bin.tar.gz  jdk-8u60-linux-x64.tar.gz  memtest.war
apache-tomcat-8.0.27.tar.gz    jpress-web-newest.war
[root@moban6 ~]# cd /usr/local/tomcat/webapps/
[root@moban6 webapps]# rm -rf docs/ examples/ host-manager/ manager
[root@moban6 webapps]# rm -rf ROOT/*

#把家目录下的两个包移动过来以后,自动给出一个目录
[root@moban6 webapps]# mv ~/jpress-web-newest.war .
[root@moban6 webapps]# mv ~/memtest.war .
[root@moban6 webapps]# ls
jpress-web-newest  jpress-web-newest.war  memtest.war  ROOT

#但是memtest没有自动给出目录,所以重启服务(自动将war包解压缩,重启后会强制触发自己检查)
[root@moban6 ~]# /usr/local/tomcat/bin/shutdown.sh
[root@moban6 ~]# /usr/local/tomcat/bin/startup.sh 
[root@moban6 webapps]# ls
jpress-web-newest  jpress-web-newest.war  memtest  memtest.war  ROOT

11tomcat.png-36.8kB

现在java的web服务器已经部署好了,但是,显示了子目录,不想显示的话

  • 方法一:将meminfo.jsp或其他程序放到tomcat/webapps/ROOT 目录下即可,因为默认网站根目录为 tomact/webapps/ROOT
  • 方法二:修改配置文件,限定web站点的根目录路径,如下:
[root@moban6 webapps]# vim /usr/local/tomcat/conf/server.xml 
123       <Host name="www.yunjisuan.com"  appBase="webapps"   #这行是本来有的
124             unpackWARs="true" autoDeploy="true">          #这行是本来有的
125          <Context path="" docBase="/usr/local/tomcat/webapps/memtest" debug="0" reloadable="false" crossContext="true" />                                        #这行是添加的
[root@moban6 ~]# /usr/local/tomcat/bin/shutdown.sh
[root@moban6 ~]# /usr/local/tomcat/bin/startup.sh 

Tomcat多实例

复制Tomcat目录

[root@moban6 webapps]# cd /usr/local/
#cp -a 在保留原文件属性的前提下复制文件 
[root@moban6 local]# cp -a apache-tomcat-8.0.27/ tomcat8_1
[root@moban6 local]# cp -a apache-tomcat-8.0.27/ tomcat8_2

修改多实例配置文件

#创建多实例的网页根目录
[root@moban6 local]# mkdir -p /data/www/www/ROOT
#将网页程序拷贝到多实例根目录ROOT下
[root@moban6 local]# cp /usr/local/tomcat/webapps/memtest/meminfo.jsp /data/www/www/ROOT/
#原多实例配置文件的三行
[root@moban6 local]# cat -n /usr/local/tomcat/conf/server.xml |sed -n '22p;63p;123p'
    22	<Server port="8005" shutdown="SHUTDOWN">       #管理端口及停止命令
    69	    <Connector port="8080" protocol="HTTP/1.1" #对外提供服务的端口
   123	      <Host name="localhost"  appBase="webapps" #网站域名及网页根目录路径

#修改多实例配置文件的以下三行
[root@moban6 local]# vim /usr/local/tomcat8_1/conf/server.xml 
[root@moban6 local]# cat -n /usr/local/tomcat8_1/conf/server.xml |sed -n '22p;69p;123p'
    22	<Server port="8020" shutdown="SHUTDOWN">
    69	    <Connector port="8081" protocol="HTTP/1.1"
   123	      <Host name="www.yunjisuan.com"  appBase="/data/www/www"
#两个多实例目录可以分开
[root@moban6 local]# vim /usr/local/tomcat8_1/conf/server.xml 
[root@moban6 local]# cat -n /usr/local/tomcat8_1/conf/server.xml |sed -n '22p;69p;123p'
    22	<Server port="8030" shutdown="SHUTDOWN">
    69	    <Connector port="8082" protocol="HTTP/1.1"
   123	      <Host name="www.yunjisuan.com"  appBase="/data/www/www" 

#开启多实例
[root@moban6 local]# /usr/local/tomcat8_1/bin/startup.sh 
[root@moban6 local]# /usr/local/tomcat8_2/bin/startup.sh 
[root@moban6 local]# ss -antup| grep java

#访问各自的网页 IP:端口/meminfo.jsp

12tomcat.png-62kB

Tomcat 集群(Nginx + Tomcat反向代理集群)

安装nginx

#gcc gcc-c++ make
mount /dev/sr0 /media/cdrom
yum -y install pcre-devel openssl-devel
cd ~
wget -q http://nginx.org/download/nginx-1.10.2.tar.gz
tar xf nginx-1.10.2.tar.gz -C /usr/src
cd /usr/src/nginx-1.10.2/
useradd -M -s /sbin/nologin nginx
 ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
ln -s /usr/local/nginx/sbin/* /usr/local/sbin
cd /usr/local/nginx/conf/ 
egrep -v "#|^$" nginx.conf.default > nginx.conf 
echo "`hostname -I` www.`hostname`.com" >> /etc/hosts

修改配置文件

worker_processes  1;
events {
    worker_connections  20480;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    upstream tomcat_pools {
     server 127.0.0.1:8081 weight=1;
     server 127.0.0.1:8082 weight=1;
    server {
        listen       80;
        server_name  www.yunjisuan.com;
        location / {
            root   html;
            index  index.jsp index.html index.htm;
            proxy_pass http://tomcat_pools;
        }
    }
}
/usr/local/nginx/sbin/nginx

用Tomcat安装Jpress

Jpress是一个wordpress(PHP博客)的java代替版本,使用JFinal开发,需要maven支持

[root@moban6 ~]# tar xf apache-maven-3.3.9-bin.tar.gz -C /usr/local/
[root@moban6 ~]# ln -s /usr/local/apache-maven-3.3.9/ /usr/local/maven
[root@moban6 ~]# sed -i '$a export MAVEN_HOME=/usr/local/maven\nexport PATH=$MAVEN_HOME/bin:/$PATH' /etc/profile
[root@moban6 ~]# source /etc/profile
#出现下面的。表示成功
[root@moban6 ~]# mvn -version
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_60, vendor: Oracle Corporation
Java home: /usr/local/jdk1.8.0_60/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-431.el6.x86_64", arch: "amd64", family: "unix"
#将jpress-web-newest.war包放到tomcat根目录下
[root@moban6 ~]# mv jpress-web-newest.war /data/www/www/ROOT/
[root@moban6 ~]# cd /data/www/www/ROOT/
#jar是war包的解压命令(jdk-8u60-linux-x64.tar.gz),java命令,默认linux里没有
[root@moban6 ROOT]# /usr/local/jdk/bin/jar xf jpress-web-newest.war 
[root@moban6 ROOT]# ls
jpress-web-newest.war  meminfo.jsp  META-INF  robots.txt  static  templates  WEB-INF

浏览器访问 IP:8081/install,然后需要提供MySQL的一些资料,过程和wordpress一样

13tomcat.png-92.6kB

Tomcat 安全优化和性能优化

最在用药的优化如下4项,但并不止这四种

  • 降权启动
  • telnet管理端口保护 (8005修改)
  • ajp连接端口保护 (注释8009的那句)
  • 禁用管理端 (清空他的web)

降权启动:(同Nginx优化部分的监牢模式):

降权原则就是利用普通用户启动Tomcat

  • 将Tomcat程序目录拷贝到普通用户家目录下
  • 修改骄傲目录下程序的配置文件(启动端口,检测端口等),并重新指定网页根目录路径
  • 递归授权拷贝后的Tomcat程序色属主属组为普通用户
  • 用su命令切换为普通用户,启动Tomcat进程
  • 此时Tomcat进程的权限为普通用户
  • 如果利用/etc/rc.local文件配置普通用户程序的开机启动,嘛呢需要利用su -c 临时切换身份启动。

性能优化

屏蔽NDS查询 enableLookups=“false”

#原配置文件内容
[root@moban6 ~]# vim /usr/local/tomcat8_1/conf/server.xml 
 69     <Connector port="8081" protocol="HTTP/1.1"
 70                connectionTimeout="20000"
 71                redirectPort="8443" />
#修改后 70行修改
[root@moban6 ~]# vim /usr/local/tomcat8_1/conf/server.xml 
 69     <Connector port="8081" protocol="HTTP/1.1"
 70              connectionTimeout="20000" enableLookups="false acceptCount="800"
 71                redirectPort="8443" />

jvm调优:tomcat最吃内存,如果系统资源有限,那就要进行调优,提高资源使用率
http:/www.cnblogs.com/xingzc/p/5756119.html

#优化catalina.sh初始化脚本,添加代码,必须在脚本的最开始声明位置。
#默认路径:/usr/loacl/tomcat/bin/catalina.sh
JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xmsl024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m"
#代码说名
server:一定要作为第一个参数,在多个CPU时性能佳
-Xms:初始堆内存Heap大小,使用的最小内存,cpu性能高时,此值应设的大一些
-Xmx:初始堆内存heap最大值,使用的最大内存
-XX:PermSize:设定内存的永久保存区域
-XX:MaxPweSize:设定的醉倒内存的永久保存区域
-XX:MaxNewSize:
-Xss 15120 这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512K
+XX:AggressiveHeap 会使得Xms没有意义,这个参数让jvm忽略Xmx参数,疯狂的吃完一个G物理内存,再吃尽一个G的swep
-Xss:每个线程的Stack的大小
-verbose:gc 现实垃圾收集信息
-Xlogggc:gc.log 指定垃圾收集日志文件
-Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一
-XX:UseParNewGC:缩短minor收集的时间
-XX:UseConcMarkSweepGC:缩短major收集的时间
买完就返现!双11神券包+10%余额红包大派送! 买周边/年卡再抽iPhone18Pro,最高赢10年VIP!手慢无,戳我领取>> 阅读详情

相关推荐

C++笔试题整理

目录 1. 笔试题1 1.1 链表反转 1.2 String 2. 笔试题2 2.1 求下面函数的返回值(微软) 2.2 什么是“引用”?申明和使用“引用”要注意哪些问题? 2.3 将“引用”作为函数参数有哪些特点? 2.4 在什么时候需要使用“常引用”?  2.5 将“引用”作为函数返回值类型的格式、好处和需要遵守的规则? 2.6 “引用”与多态的关系? 2.7 “引用”与指针的区别是什么? 2.8 什么时候需要“引用”? 2.9 结构与联合有和区别? 2.10 下面关于.

星月相随的专栏 2474

Java开发之Tomcat详解

目录 一、Tomcat简介 二、Tomcat目录 1、bin文件夹 2、conf文件夹 3、lib文件夹 4、logs文件夹 5、temp文件夹 6、webapps文件夹 7、work文件夹 三、Tomcat配置虚拟目录 四、Tomcat配置虚拟主机 一、Tomcat简介 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发...

weixin_45994580的博客 5043

14自由度汽车动力学模型

多体系统分解簧上质量刚体:包含车身主体,具有6个自由度(x/y/z平移 + 俯仰/侧倾/横摆旋转)四个簧下质量刚体:每个车轮独立建模,含垂直跳动(z向)和旋转(绕z轴)自由度总自由度:6(车身) + 4×2(车轮) = 14自由度。

chao189844的博客 1188

【运维知识进阶篇】Tomcat快速入门(Java环境介绍+Tomcat快速安装+Tomcat配置文件+Tomcat配置虚拟主机+Tomcat管理界面+Tomcat部署zrlog博客项目)

JVM介绍:Java业务都是运行在Java虚拟机上,Java虚拟机简称为JVM,虚拟机是通过软件模拟出具有完整硬件系统的功能为什么Java需要JVM虚拟机?早期C语言,不支持跨平台,如果C语言想要在Windows Linux Mac上运行,需要进行分别编译,那么在Linux上有很多优秀的软件,如果需要在Windows上使用需要重新编译,移植性差。而Java则不同,Java是可以跨平台,只需要将源码进行一次编译,能够在不同的操作系统运行。Java是如何做到的?

吾日三省吾身,想出类拔萃,要把知识学牢,学全,学深,学广。 3971

EMI硬件抑制八项工程对策:从回路面积到谐振规避

电磁干扰(EMI)是电子系统可靠性与EMC合规性的核心挑战,其本质源于高频电流回路产生的辐射与耦合效应。理解回路面积、共模/差模噪声、阻抗匹配等基础原理,是实施有效抑制的前提。技术价值体现在降低辐射发射(RE)、传导发射(CE)超标风险,提升产品一次通过率与长期稳定性。典型应用场景包括开关电源设计、高速数字接口布局、工业嵌入式设备及医疗电子等对EMC要求严苛的领域。本文聚焦可落地的硬件级对策,涵盖回路面积控制、屏蔽策略、变压器漏磁管理、双线传输与阻抗匹配等关键实践,深度融合电流回路物理模型与PCB工程实现。

weixin_35019679的博客 80

用示波器抓一次MIPI D-PHY的波形,手把手教你读懂HS模式和LP模式的切换时序

本文详细解析了MIPI D-PHY信号的双模切换机制,包括高速模式(HS)和低功耗模式(LP)的波形捕获与诊断技巧。通过示波器设置、关键状态分析和实战案例,帮助工程师快速定位信号完整性问题,提升调试效率。

weixin_30696427的博客 446

【JavaWeb】之Tomcat介绍、安装与使用

JavaWeb基础Tomcat介绍,安装与使用,Web项目目录结构与部署,网站访问流程详解~

小新要变强的博客 4044

树莓派5安装ROS2小白指南避坑攻略

手把手教你如何在树莓派5上顺利安装ROS2,避开常见问题与陷阱,提升配置效率。针对树莓派5安装ros2过程中的依赖冲突、源配置错误等高频难题提供解决方案,适合新手快速上手。

weixin_35754962的博客 1001

Java中 Tomcat 是干什么的?

**Tomcat是web容器。**它的作用稍后给你解释。 你在做web项目时,多数需要http协议,也就是基于请求和响应,比如你在百度输入一行内容搜索, 那么百度服务器如何处理这个请求呢,他需要创建servlet来处理,servlet其实就是java程序,只是在服务器端的java程序, servlet通过配置文件拦截你的请求,并进行相应处理,然后展示给你相应界面,那么servlet如何创建? 这时...

qq_43165760的博客 1万+

双馈风机并网系统宽频振荡机理与抑制方法研究

双馈风机并网系统宽频振荡分析与抑制 摘要:本文研究了双馈风机(DFIG)接入弱电网引发的宽频振荡问题。通过建立DFIG并网系统阻抗模型,分析了锁相环带宽、电流环带宽等参数对阻抗特性的影响。研究揭示了DFIG与电网阻抗交互导致交截频率处相位差超过180°的振荡机理。提出基于锁相环优化的阻抗重塑抑制策略,采用电压补偿和陷波器改善系统稳定性。仿真结果表明,该方法能有效降低相位差约10°-168°,显著抑制宽频振荡。代码实现了阻抗建模、稳定性分析和抑制策略验证,为工程应用提供了理论依据。

huanghm88的专栏 312

2026年华为od机试真题题库

OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)

面试高手的博客 19万+

java配置tomcat

tomcat介绍,tomcat配置以及idea中的tomcat配置问题进行解决。

springxing的博客 2372

OpenClaw实战一|企业微信AI客服数字员工:自动应答+工单创建+数据统计,零代码3天落地

OpenClaw做企业微信AI客服数字员工,真正的价值不是“能自动回复”,而是把“咨询-应答-工单-统计-复盘”全流程闭环。对中小企业来说,不用招专职AI开发、不用买昂贵客服系统,一台服务器、零代码配置,就能拥有媲美大厂的智能客服能力。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 508

java添加tomcat_Java以及Tomcat配置

Java环境配置官网(http://www.oracle.com/technetwork/java/javase/downloads/index.html)下载并安装java JDK,注意安装的路径。配置环境变量(以win7为例)右击计算机——属性——高级系统设置-环境变量1. 在系统变量一栏点击新建,然后输入如下:名称:JAVA_HOME变量值:刚刚JDK安装的路径(JAVA_HOME的路径一定...

weixin_30682487的博客 1592

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

tomcat如何编译java_tomcat怎么编译java

tomcat怎么编译java[2021-02-04 16:29:11]简介:java代码编译顺序:首先源代码进入词法分析器,token流后进入语法分析器;然后进行抽象语法树后进行语义分析器;接着注解抽象语法树,并使用字节码生成器;最后生成jvm字节码。java代码服务器tomcat介绍:web服务器只能完成静态资源的请求;web容器能够进行动态资源的请求;tomcat就是一个最简单的web容器...

weixin_30567751的博客 1343

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

linux java tomcat_Linux下JAVA与Tomcat的安装配置

Linux下JAVA与Tomcat的安装配置[日期:2012-01-21]来源:Linux社区作者:sunshyfangtian[字体:大 中 小]一、JDK安装1、下载安装jdk7.0 for linux到oracl官网http://www.Oracle.com/technetwork/Java/javase/downloads/java-se-jdk-7-download-432154.htm...

weixin_35799294的博客 206

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

tomcat 与java_tomcat和Java的关系

tomcat是服务器,是一种比较简单的中间件,用来把java web开发部署到tomcat中,此时tomcat是作为服务器的。java的可移植性设计让java依赖class文件运行的。jdk就是java运行的环境,使用它能编译.java文件,运行java程序。tomcat可以比作web容器,java应用发布在它上面然后通过它与浏览器进行交互,一种程序与浏览器适配的容器。Tomcat 服务器是一个免...

weixin_29790897的博客 3317

Java启动Tomcat

文章目录目标:实现:一、前期准备1、加入依赖2、定义Servlet类3、定义Servlet类4、启动Tomcat并测试总结流程图重点及易错点1、服务器阻塞等待请求 目标:   学习使用java代码启动Tomcat。 实现: 一、前期准备   实现自定义注解,并用自定义注解模拟正常的业务逻辑,实现将用户发送给服务器的数据回写给用户的功能。 1、加入依赖   本项目使用java代码操作Tomcat,所...

珍惜 1万+

java 内嵌tomcat_Embed Tomcat Java(内嵌tomcat启动简述)

简单记录一下内部tomcat启动maven pom.xmlorg.apache.tomcat.embedtomcat-embed-core8.5.28org.apache.tomcattomcat-jasper8.5.28org.springframeworkspring-web5.0.4.RELEASEcompileorg.springframeworkspring-webmvc5.0.4.R...

weixin_30141959的博客 1190

java的tomcat_Java和Tomcat的环境搭建

安装tomcat 服务器小伙伴们在学习Javaweb 的时候是不是遇到一件很头疼的事情呢?Tomcat安装好了,怎么也无法运行。下面就给介绍一下我的一些经验Tomcat是Java环境下的应用,首先得安装Java,然后再安装tomcat,设置环境变量,测试环境是否成功。JDK的下载和安装JDK的下载要到oracle的官网去下载 网址:http://www.oracle.com点击downloads ...

weixin_34650199的博客 340

java tomcat下载_Tomcat

如何配置Tomcat服务器环境?学习java web开发就离不开服务器的支持在此,IT百科把成功配置的步骤分享出来。方法/步骤下载说明,在此不贴链接地址了,请百度吧。JDK下载,当你看到官方网页之后,经过努力你进入如图的页面,下载的时候请把如图中上边的Accept License Agreement选中了,然后根据你的系统点击相应的版本。我的系统是64位windows,选择jdk-7u45-win...

weixin_36008052的博客 343

如何用JAVA手写一个Tomcat

Socket(套接字)是计算机网络中用于进程间通信的核心技术,它允许不同主机或同一主机上的不同程序通过网络交换数据Socket 是什么?定义:Socket 是操作系统提供的抽象接口,本质上是通信的端点(Endpoint)。它封装了底层网络协议(如TCP/IP或UDP)的复杂性,提供了一组简单的API【API(Application Programming Interface,应用程序编程接口)是软件系统之间交互的桥梁,定义了如何请求服务、传递数据以及返回结果的规则。】供应用程序使用。关键要素IP地址。

2301_80391652的博客 2580

Tomcat(4) Tomcat支持哪些版本的Java?

Tomcat支持多个Java版本,但最佳实践是使用与Tomcat版本兼容的Java版本。通过设置正确的环境变量和配置文件,可以确保Tomcat使用指定的Java版本运行。在开发和部署Java Web应用时,应始终检查Tomcat和Java版本的兼容性,以确保应用的稳定性和性能。

qq_43012298的博客 1635

java的tomcat_JAVA程序获取Tomcat的运行状态

用浏览器来查看Tomcat的运行状态:配置Tomcat的管理用户和权限。打开%Tomcat_Home%/conf/目录下的tomcat-user.xml文件,配置以下内容:此时可通过admin用户来访问tomcat的状态,在浏览器地址中输入:http://localhost:8080/manager/status?XML=true输入用户名:admin,密码:tomcat. 出现以下页面,即Tom...

weixin_28863779的博客 730

Ubuntu下配置java和Tomcat环境

前言: 网上确实是有很多linux下配置java环境和Tomcat的,但是很多都是坑。小编按照他们的配置,一步步做完后,开启了Tomcat后,就关不掉了,就算是关掉,tomcat的端口还是一直开着!最后小编才发现这是网上教程坑爹,也可能是老旧的问题。在此我将这些教程写好,帮助大家少踏坑!我们将分为以下三步进行配置。1、准备工作 前往官网进行下载相关jdk,网址http://www.oracle.c

LuckyToMeet-Dian叶 839
上一篇: jumpserver跳板机安装
下一篇: iptables防火墙
海洋瑾煊
博客等级 码龄8年 15粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值