正如标题所述,import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Server {
public static void main(String args[]) throws IOException {
// Declarem les variables a utilitzar
ServerSocket serverSocket = null;
Socket socket = null;
InputStream inS = null;
OutputStream outS = null;
try
{
serverSocket = new ServerSocket(9999);
while(true)
{
socket= serverSocket.accept();
inS = socket.getInputStream();
outS = socket.getOutputStream();
try{
BufferedReader br = new BufferedReader(new InputStreamReader(inS));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(outS));
System.out.println("THis is what the user wants = " + br.readLine());
String fileName = "Image.png";
String extension= "";
int i = fileName.lastIndexOf('.');
if (i > 0) {
extension = fileName.substring(i+1);
}
String dataReturn = "";
if(extension.equals("png"))
{
bw.write("HTTP/1.0 200 OK\r\n");
bw.write("Content-Type: image/png\r\n");
bw.write("\r\n");
FileReader myFilepng = new FileReader(fileName);
Scanner scanner1 = new Scanner(myFilepng);
dataReturn = "";
while(scanner1.hasNextLine()) {
dataReturn = scanner1.nextLine();
System.out.println(dataReturn);
bw.write(dataReturn);
}
scanner1.close();
}else{
if(extension.equals("html"))
{
bw.write("HTTP/1.0 200 OK\r\n");
bw.write("Content-Type: text/html\r\n");
bw.write("\r\n");
bw.write("<TITLE>"+fileName+"/TITLE>");
FileReader myFile = new FileReader(fileName);
Scanner scanner = new Scanner(myFile);
dataReturn = "";
while(scanner.hasNextLine()) {
dataReturn = scanner.nextLine();
System.out.println(dataReturn);
bw.write(dataReturn);
}
scanner.close();
}
}
bw.close();
}catch(Exception e)
{
}
}
}catch (IOException e) {
System.out.println(e);
}
inS.close();
outS.close();
socket.close();
}
}
和DISTINCT(c1), c2
之间存在哪些差异?
DISTINCT c1, c2
是否像函数一样?我没有发现任何手册提及DISTINCT(c1)
可以是一个功能。
示例输出:
DISTINCT
答案 0 :(得分:1)
嗯。不同之处在于select distinct (c1), c2
子句中select
有额外的,不需要的括号。
DISTINCT
不是 SQL中的函数或运算符。它是一种SELECT
语句,它适用于所有 SELECT
中的列。括号没有相关性。
您可以像ALL
中的UNION ALL
一样考虑它。
答案 1 :(得分:1)
不,明显不像功能!它只是一种类似于GROUP BY子句正在做的选择。
Distinct将始终应用于select中指定的整行/所有列,因此如果添加括号则无关紧要。
它不喜欢用括号做,因为它会更难阅读和理解,并可能误导你在这里提出的同一个问题 - 它是否只适用于专栏。