Java
Java
源码 > 编译为 .class 字节码 > 加载到内存 > 逐行解释执行
安装配置
添加环境变量
cat > /etc/profile.d/java.sh << EOF
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
EOF
. /etc/profile.d/java.sh
下载安装
tar -xvf jdk-11.0.29_linux-x64_bin.tar.gz -C /usr/local/
ln -s jdk-11.0.29 jdk
安装成功
java -version
使用
- -jar, 使用打好的jar包, 带有
WEB-INF/配置目录
java -jar <jarfile>
-
-classpath/-cp, 指定类文件搜索路径, Windows 用
;分隔, Linux用:分隔 -
-version:"1.6.0_13 1.6* & 1.6.0_10+", 指定 release 版本,
+代表当前及更高版本,*代表任意数字,JRE 6u13即(1.6.0_13)
IDEA
安装激活
将依赖的 jar 包置于 C:\ 目录下, 启动 IDEA, 添加激活码
创建项目
- 配置项目名称及 jdk 路径

- 创建包和类, 包名通常为域名倒置

- Artifact/工件/构建产物/部署包



- 配置执行前自动构建 jar 包

Tomcat
概念
- Servlet
Java 代码中嵌入前端代码
- JSP
前端代码中嵌入 Java 代码
- MVC
- controler 接收请求
- model 处理数据
- view 解析页面
- REST
- 前后端分离
- Ajax 异步请求数据
安装
下载解压
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.113/bin/apache-tomcat-9.0.113.tar.gz -P /opt/
tar -xvf /opt/apache-tomcat-9.0.113.tar.gz -C /opt/
修改权限
usradd -r -s /usr/sbin/nologin tomcat
chown -R tomcat:tomcat /opt/apache-tomcat-9.0.113
管理服务
cat > /lib/systemd/system/tomcat.service << EOF
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/local/jdk"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
# Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
ProtectSystem=full
PrivateTmp=yes
[Install]
WantedBy=multi-user.target
EOF
目录结构
logs
- access.txt 客户端访问日志
bin
- catalina.sh [ start | stop ]
- startup.sh
- shutdown.sh
work
- web app 缓存
conf
server.xml
<Host name="localhost" appBase="/var/www/"
unpackWARs="true" autoDeploy="true">
</Host>
- appBase: web app 目录
http://localhost:8080/index.jsp > /var/www/ROOT/index.html
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
- pattern: 日志输出格式
webapps
http://localhost:8080/index.jsp > /tomcat/webapps/ROOT/index.htmlhttp://localhost:8080/blog/index.jsp > /tomcat/webapps/blog/index.html