搭建一个java web服务端

  最近也是做了一个简单的java web 项目,由于以前也是没接触过,在这里记录下搭建一个web服务端的过程。

  一般我们做一个服务端要么在本地自己的电脑上先安装环境,一般是windows系统,主要安装jdk + tomcat + mysql,这些安装教程网上都有,也很简单,我这里就不多说了,我要讲的是在一个远程linux服务器上搭建web服务端环境。

  对于一个liunx服务器,我们可以使用xshell等终端工具登录来操作远程服务器,使用xshell的好处是,我们可以使用rz ,sz命令上传上载文件 ,我们可以事先在自己本地上下载好linux版本的jdk ,tomcat ,mysql,使用rz 命令上传到我们的linux服务器上

  [email protected]:~$ sudo rz    会自动弹出文件框加载文件,就可以上传文件了,非常方便

  [email protected]:~$ sudo sz  filename  就可以下载对应的文件

  下面说下各种安装包的安装及环境变量配置,各个安装包都可以在官网上下载(选择自己需要的版本即可)

  一、JDK的安装

  1.将上传的jdk解压

  sudo tar -zxvf jdk-8u144-linux-i586.tar.gz

  2.解压成功后可以看到该目录下多出了文件夹 jdk1.8.0_144 ,先在/usr下新建文件夹java,将jdk1.8.0_144 移到/usr/java目录下

  sudo mv jdk1.8.0_144 /usr/java/

  3.现在来配置jdk的环境变量

  使用vi命令编辑/etc/profile文件  vi /etc/profile

  在文件底部加上四条配置信息:

  export JAVA_HOME=/usr/java/jdk1.8.0_144
  export JRE_HOME=${JAVA_HOME}/jre
  export CLASSPATH=.:%{JAVA_HOME}/lib:%{JRE_HOME}/lib
  export PATH=${JAVA_HOME}/bin:$PATH 

  其中JAVA_HOME指定为你的JDK安装目录,另外,linux中是以冒号分隔,不同于windows下使用分号进行分隔。 
  编辑好后保存退出,执行命令:source /ect/profile

  执行java ,javac命令就可查看jdk是否配置好了。

  二、tomcat安装

  1.将上传的tomcat压缩包解压,这里我是打算把tomcat放到 /usr/lib里

  sudo tar zxvf apache-tomcat-8.5.20.tar.gz -C /usr/lib

  sudo mv apache-tomcat-8.0.28 tomcat8.5

  sudo chmod -R 777 tomcat8.5

  2.环境变量配置

  在tomcat8.5的bin文件夹下有一个startup.sh和shutdown.sh的文件,可以用vi打开,然后在最后一句上边都加入以下的变量(根据自己的实际情况来修改):

  JAVA_HOME=/usr/java/jdk1.8.0_144
  JRE_HOME=${JAVA_HOME}/jre
  PATH=$JAVA_HOME/bin:$PATH
  CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  TOMCAT_HOME=/usr/lib/tomcat8.5

  3.启动tomcat

  执行命令 sh startup.sh

  在浏览器输入;http://localhost:8080 如果出现tomcat首页的效果说明配置成功了。(localhost是本地ip,如果放到服务器端,需要换成服务器提供的对外公网IP)

  

  三、mysql安装

  我这里是用软件源里提供的mysql,直接用命令

  sudo apt-get install mysql-server

  在安装过程中会提示输入mysql的登入密码(需要记录,后面登录mysql需要用到这个密码)

  登录mysql ,使用命令

  mysql -uroot -p123456  (123456就是设置的密码) 后面就可以进行数据库方面的操作了

  show databases(显示有些哪数据库)

  use databasename(使用哪个数据库 ,databasename为数据库名)

  show tables(选择数据库后,显示有哪些表)

  在以上三个工具安装好后,java web 服务端的环境算是搭建好了,如果我们的项目没有涉及到数据库,我们只需把我们的web项目,导出一个war包,直接放到tomcat目录下的webapps目录下就可以了,tomcat会自动帮我们解压war包。但如果我们的项目涉及数据库操作,就还需要一些相关的配置了。

  1.需要mysql jdbc 驱动jar包放入到tomcat 的lib目录下,我的用的版本是 mysql-connector-java-5.1.43-bin.jar

  2.在tomcat下配置mysql数据源 ,需要对tomcat的conf目录下的几个文件加一些配置

   编辑server.xml,在GlobalNamingResources标签下加入

   <Resource driverClassName="com.mysql.jdbc.Driver" maxActive="10" maxIdle="2" maxWait="300" name="jdbc/mysql" password="123456" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/grginvoice?autoReconnect=true" username="root"/>

   编辑context.xml,在Context标签下加入  

   <Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"
    username="root"
    password="123456"
    maxActive="850"
    maxidle="80"
    removeAbandoned="true"
    removeAbandonedTimeout="5"
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost:3306/grginvoice?autoReconnect=true"
    minEvictableIdleTimeMillis="4000"
    timeBetweenEvictionRunsMillis="5000"/>

   编辑web.xml,在web-app标签下加入   

    <resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/mysql</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    </resource-ref>

    当然还需要在mysql中创建对就的数据库和表,重启tomcat,就可以使用服务器上的mysql了

    (数据库跟tomcat装上同一台服务器上,url里面的地址用localhost可以了,不需要换成服务器的ip地址)

    下面是一段mysql数据库连接部分的代码

Connection conn = null;
DataSource ds = null;
Statement stmt = null;
ResultSet rs = null;

try {
	Context ctx = new InitialContext();
	if (ctx == null)
		System.out.println("no content");

		ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mysql"); 

		if(ds != null)
			conn = ds.getConnection();

		if (conn != null)
			System.out.println("连接Mysql成功");

		stmt = (Statement) conn.createStatement();
		String strSql = "select * from grginvoice.ticketinfo where logicid=\"0001\"";
		rs = (ResultSet) stmt.executeQuery(strSql);
		if (rs != null)
			System.out.println("query is success");
		while (rs.next()) {
			 System.out.println(rs.getString(2));
	        }

} catch (NamingException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} catch (SQLException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}

  

  PS:

   MySql运行在safe-updates模式下,该模式会导致非主键条件下无法执行update或者delete命令:

     执行如下命令:

    show variables like ‘SQL_SAFE_UPDATES‘;
    SET SQL_SAFE_UPDATES = 0;

 

  

时间: 2024-12-28 00:56:05

搭建一个java web服务端的相关文章

Android服务端开发1-使用Eclipse搭建Java Web服务端

本篇博客介绍如何使用Eclipse来创建一个Java Web程序,为后面讲通过Android客户端跟服务端进行交互打下基础,关于服务端可以选用的程序很多,主流的搭配是Android客户端+PHP服务端,我们也可以使用Android客户端+Java EE服务端这样的搭配,就看公司是以哪种方式提供了. 创建一个Java Web程序,没有特别复杂的流程,我们先准备一下原材料: 1. Eclipse(注:这个不是ADT Bundle,最好到官网下载针对开发Java EE的IDE,如果可以的话,选中MyE

spring boot 用maven搭建第一个RESTful Web 服务

spring boot的出现就是为了简化spring项目的构建,让你尽快的上手一个spring项目,并快速的生成一个可执行的spring微服务. 让我们来看看多简单,这里我们直接用spring的IDE,Spring Tool Suite,建第一个restful web服务. 1.在工作空间的右键,直接新建一个spring start project 2.选择构建spring boot 项目的工具,这里我们用maven 3.填好相关空格之后,选择你想构建的spring boot demo项目,这里

如何提高Web服务端并发效率的异步编程技术

作为一名web工程师都希望自己做的web应用能被越来越多的人使用,如果我们所做的web应用随着用户的增多而宕机了,那么越来越多的人就会变得越来越少了,为了让我们的web应用能有更多人使用,我们就得提升web应用服务端的并发能力.那么我们如何做到这点了,根据现有的并发技术我们会有如下选择: 第一个做法:为每个客户端发送给服务端的请求都开启一个线程,等请求处理完毕后该线程就被销毁掉,这种做法很直观,但是在现代的web服务器里这种做法已经很少使用了,原因是新建一个线程,销毁一个线程的开销(开销是指占用

基于Apache axis2开发Java Web服务

1.安装配置axis2环境 1)下载axis2-1.4.1-war(发布webservice)和axis2-1.4.1-bin.zip(webservice调用使用的各种包) 下载好后把axis2-1.4.1-war目录下面的axis2.war发布到tomcat的webapps中. 发布好,访问:http://localhost:8079/axis2/  界面如下: 2.开发web服务 1)创建一个java web project 2)编写服务代码 1 public class SampleSe

[译]Spring Boot 构建一个RESTful Web服务

翻译地址:https://spring.io/guides/gs/rest-service/ 构建一个RESTful Web服务 本指南将指导您完成使用spring创建一个“hello world”RESTful Web服务的过程. 你将会构建什么 您将构建一个将接受HTTP GET请求的服务: 您将构建一个将接受HTTP GET请求的服务: http://localhost:8080/greeting 1 1 并且使用JSON的形式进行响应: {"id":1,"conten

Unity手游之路&lt;二&gt;Java版服务端使用protostuff简化protobuf开发

http://blog.csdn.net/janeky/article/details/17151465 开发一款网络游戏,首先要考虑的是客户端服务端之间用何种编码格式进行通信.之前我们介绍了Unity游戏前端使用protobuf的方法.今天我们来谈谈服务端如何使protobuf.游戏服务端语言百花齐放,除了比较传统的c/c++外,Java,Erlang,Python都有很多团队在使用. 今天推荐一下Java作为服务端开发语言.国内很多出色的页游和手游都是采用Java作为服务端语言的.比如<神曲

winform客户端利用webClient实现与Web服务端的数据传输

由于项目需要,最近研究了下WebClient的数据传输.关于WebClient介绍网上有很多详细介绍,大概就是利用WebClient可以实现对Internet资源的访问.无外乎客户端发送请求,服务端处理请求.回应请求.所以,我下面就简单描述下学习过程中遇到的一些问题: 1.关于Winform客户端请求 WebClient wc = new WebClient();//初始化webclient string path = "http://192.168.1.115:8089/Handler1.as

Java后台服务端分析

先看看结构图: 之前没有写过服务器端的代码,项目中有一个单独的服务端,看了代码,觉得写得挺好的,感觉原作者应该是看过一些开源的代码,框架和设计的--至少自己之前没有设计过服务端代码结构. 总结一下主要的设计: 1.服务端肯定需要一个服务器,这里使用的是Java网络的ServerSocket作为基础服务端 2.服务端包括两个方面:(1)为真正的服务端服务的配置类和配置文件 (2)服务端本身 3.由第2点可以知晓,服务启动的时候,肯定需要预先加载配置,如图所示,会先执行MainServer的init

windows + myeclipse 调试 linux + tomcat 的java web服务 配置方式

一.linux tomcat配置和启动 1.catalina.sh第一行添加 declare -x CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000" 2.启动JPDA(这是tomcat下的启动方式,别的服务器可能会不一样,但道理是一样的) ./catalina.sh jpda start 3.启动web服务 ./start.sh 二.在windows端的myecli