A. 《java網路編程核心技術詳解》pdf下載在線閱讀全文,求百度網盤雲資源
《Java網路編程核心技術詳解》網路網盤pdf最新全集下載:
鏈接: https://pan..com/s/1_XTd5UzNdDfNK3oN7lcUYQ
B. java環境 web頁面轉換為pdf
比較簡單的就引用別人寫好的jar包了,要自己寫就復雜了- -
C. Java Web伺服器
我現寫了一個,可以訪問到靜態資源。你看情況多給點分吧
另外eclipse還沒有5.5,5.5的貌似是myEclipse吧
其中port指埠,默認是地址是http://127.0.0.1:8088/
其中basePath指資源根路徑,默認是d:
可以通過命令行參數對其進行賦值
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.URLDecoder;
public class SimpleHttpServer {
private static int port = 8088;
private static String basePath = "D:/";
public static void main(String[] args) {
if (args.length >= 1) {
basePath = args[0];
}
if (args.length >= 2) {
port = Integer.parseInt(args[1]);
}
System.out.println("server starting:");
System.out.println("base path:" + basePath);
System.out.println("Listening at:" + port);
startServer();
System.out.println("server started succesfully");
}
private static void startServer() {
new Thread() {
public void run() {
try {
ServerSocket ss = new ServerSocket(port);
while (true) {
final Socket s = ss.accept();
new Thread() {
public void run() {
try {
OutputStream socketOs = s.getOutputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
String line;
String headerLine = null;
while ((line = br.readLine()) != null) {
if (headerLine == null) {
headerLine = line;
}
if ("".equals(line)) {
break;
}
}
String target = headerLine.replaceAll("^.+ (.+) HTTP/.+$", "$1");
String queryString;
String[] tmp = target.split("\\?");
target = URLDecoder.decode(tmp[0], "utf-8");
target = target.endsWith("/") ? target.substring(0, target.length() - 1) : target;
if (tmp.length > 1) {
queryString = tmp[1];
} else {
queryString = "";
}
String filePath = basePath + target;
File f = new File(filePath);
if (!f.exists()) {
StringBuffer content = new StringBuffer();
content.append("<html><head><title>Resource Not Found</title></head><body><h1>The requested resource ")
.append(target).append(" is not found.</h1></body></html>");
StringBuffer toWrite = new StringBuffer();
toWrite.append("HTTP/1.1 404 Not Found\r\nContent-Length:").append("" + content.length()).append("\r\n\r\n")
.append(content);
socketOs.write(toWrite.toString().getBytes());
} else if (f.isDirectory()) {
StringBuffer content = new StringBuffer();
content.append("<html><head><title>").append(target).append(
"</title></head><body><table border='1' width='100%'>");
content.append("<tr><th align='left' width='40px'>").append("Path").append("</th><td>").append(target.length()>0?target:"/")
.append("</td></tr>");
content.append("<tr><th align='left'>Type</th><th align='left'>Name</th></tr>");
if (!basePath.equals(filePath)) {
content.append("<tr><td>Directory</td><td>").append("<a href='").append(
target.substring(0, target.lastIndexOf("/") + 1)).append("'>..</a>").append("</td></tr>");
}
File[] files = f.listFiles();
for (File file : files) {
content.append("<tr><td>");
if (file.isFile()) {
content.append("File</td><td>");
} else if (file.isDirectory()) {
content.append("Directory</td><td>");
}
content.append("<a href=\"").append(target);
if (!(target.endsWith("/") || target.endsWith("\\"))) {
content.append("/");
}
content.append(file.getName()).append("\">").append(file.getName()).append("</a></td></tr>");
}
content.append("</table></body></html>");
StringBuffer sb = new StringBuffer();
sb.append("HTTP/1.1 200 OK\r\nCache-Control: max-age-0\r\n");
sb.append("Content-Length:").append("" + content.length()).append("\r\n\r\n");
sb.append(content);
socketOs.write(sb.toString().getBytes());
} else if (f.isFile()) {
socketOs.write(("HTTP/1.1 200 OK\r\nCache-Control: max-age-0\r\nContent-Length:" + f.length() + "\r\n\r\n")
.getBytes());
byte[] buffer = new byte[1024];
FileInputStream fis = new FileInputStream(f);
int cnt = 0;
while ((cnt = fis.read(buffer)) >= 0) {
socketOs.write(buffer, 0, cnt);
}
fis.close();
}
socketOs.close();
} catch (Exception e) {
try {
s.getOutputStream().write("HTTP/1.1 500 Error\r\n".getBytes());
ByteArrayOutputStream byteos = new ByteArrayOutputStream();
PrintStream printStream = new PrintStream(byteos);
printStream
.write("<html><head><title>Error 500</title></head><body><h1>Error 500</h1><pre style='font-size:15'>"
.getBytes());
e.printStackTrace(printStream);
printStream.write("</pre><body></html>".getBytes());
byteos.close();
byte[] byteArray = byteos.toByteArray();
s.getOutputStream().write(("Content-Length:" + byteArray.length + "\r\n\r\n").getBytes());
s.getOutputStream().write(byteArray);
s.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}.start();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
}
D. 如何搭建java web伺服器
1.由於伺服器配置比較低綜合考慮,選擇ubuntu系統進行搭建
並通過XFTP或上述的上傳文件方法,上傳至apache-tomcat-7.0.69/webapps中
E. 如何用Java實現Web伺服器
如何用Java實現Web伺服器 一、HTTP協議的作用原理
WWW是以Internet作為傳輸媒介的一個應用系統,WWW網上最基本的傳輸單位是Web網頁。WWW的工作基於客戶機/伺服器計算模型,由Web 瀏覽器(客戶機)和Web伺服器(伺服器)構成,兩者之間採用超文本傳送協議(HTTP)進行通信。HTTP協議是基於TCP/IP協議之上的協議,是Web瀏覽器和Web伺服器之間的應用層協議,是通用的、無狀態的、面向對象的協議。HTTP協議的作用原理包括四個步驟:
(1) 連接:Web瀏覽器與Web伺服器建立連接,打開一個稱為socket(套接字)的虛擬文件,此文件的建立標志著連接建立成功。
(2) 請求:Web瀏覽器通過socket向Web伺服器提交請求。HTTP的請求一般是GET或POST命令(POST用於FORM參數的傳遞)。GET命令的格式為:
GET 路徑/文件名 HTTP/1.0
文件名指出所訪問的文件,HTTP/1.0指出Web瀏覽器使用的HTTP版本。
(3) 應答:Web瀏覽器提交請求後,通過HTTP協議傳送給Web伺服器。Web伺服器接到後,進行事務處理,處理結果又通過HTTP傳回給Web瀏覽器,從而在Web瀏覽器上顯示出所請求的頁面。
例:假設客戶機與www.mycompany.com:8080/mydir/index.html建立了連接,就會發送GET命令:GET /mydir/index.html HTTP/1.0.主機名為www.mycompany.com的Web伺服器從它的文檔空間中搜索子目錄mydir的文件index.html.如果找到該文件,Web伺服器把該文件內容傳送給相應的Web瀏覽器。
為了告知 Web瀏覽器傳送內容的類型,Web伺服器首先傳送一些HTTP頭信息,然後傳送具體內容(即HTTP體信息),HTTP頭信息和HTTP體信息之間用一個空行分開。
常用的HTTP頭信息有:
① HTTP 1.0 200 OK
這是Web伺服器應答的第一行,列出伺服器正在運行的HTTP版本號和應答代碼。代碼「200 OK」表示請求完成。
② MIME_Version:1.0
它指示MIME類型的版本。
③ content_type:類型
這個頭信息非常重要,它指示HTTP體信息的MIME類型。如:content_type:text/html指示傳送的數據是HTML文檔。
④ content_length:長度值
它指示HTTP體信息的長度(位元組)。
(4) 關閉連接:當應答結束後,Web瀏覽器與Web伺服器必須斷開,以保證其它Web瀏覽器能夠與Web伺服器建立連接。
二、Java實現Web伺服器功能的程序設計
根據上述HTTP協議的作用原理,實現GET請求的Web伺服器程序的方法如下:
(1) 創建ServerSocket類對象,監聽埠8080.這是為了區別於HTTP的標准TCP/IP埠80而取的;
(2) 等待、接受客戶機連接到埠8080,得到與客戶機連接的socket;
(3) 創建與socket字相關聯的輸入流instream和輸出流outstream;
(4) 從與socket關聯的輸入流instream中讀取一行客戶機提交的請求信息,請求信息的格式為:GET 路徑/文件名 HTTP/1.0
(5) 從請求信息中獲取請求類型。如果請求類型是GET,則從請求信息中獲取所訪問的HTML文件名。沒有HTML文件名時,則以index.html作為文件名;
(6) 如果HTML文件存在,則打開HTML文件,把HTTP頭信息和HTML文件內容通過socket傳回給Web瀏覽器,然後關閉文件。否則發送錯誤信息給Web瀏覽器;
(7) 關閉與相應Web瀏覽器連接的socket字。
下面的程序是根據上述方法編寫的、可實現多線程的Web伺服器,以保證多個客戶機能同時與該Web伺服器連接。
程序1:WebServer.java文件
//WebServer.java 用JAVA編寫Web伺服器
import java.io.*;
import java.net.*;
public class WebServer {
public static void main(String args[]) {
int i=1, PORT=8080;
ServerSocket server=null;
Socket client=null;
try {
server=new ServerSocket(PORT);
System.out.println("Web Server is listening on port "+server.getLocalPort());
for (;;) {client=server.accept(); //接受客戶機的連接請求
new ConnectionThread(client,i)。start();
i++;
}
} catch (Exception e) {System.out.println(e);}
}
}
/* ConnnectionThread類完成與一個Web瀏覽器的通信 */
class ConnectionThread extends Thread {
Socket client; //連接Web瀏覽器的socket字
int counter; //計數器
public ConnectionThread(Socket cl,int c) {
client=cl;
counter=c;
}
public void run() //線程體
{try {
String destIP=client.getInetAddress()。toString(); //客戶機IP地址
int destport=client.getPort(); //客戶機埠號
System.out.println("Connection "+counter+":connected to "+destIP+" on port "+destport+".");
PrintStream outstream=new PrintStream(client.getOutputStream());
DataInputStream instream=new DataInputStream(client.getInputStream());
String inline=instream.readLine(); //讀取Web瀏覽器提交的請求信息
System.out.println("Received:"+inline);
if (getrequest(inline)) { //如果是GET請求
String filename=getfilename(inline);
File file=new File(filename);
if (file.exists()) { //若文件存在,則將文件送給Web瀏覽器
System.out.println(filename+" requested.");
outstream.println("HTTP/1.0 200 OK");
outstream.println("MIME_version:1.0");
outstream.println("Content_Type:text/html");
int len=(int)file.length();
outstream.println("Content_Length:"+len);
outstream.println("");
sendfile(outstream,file); //發送文件
outstream.flush();
} else { //文件不存在時
String notfound="
Error 404-file not found
";
outstream.println("HTTP/1.0 404 no found");
outstream.println("Content_Type:text/html");
outstream.println("Content_Length:"+notfound.length()+2);
outstream.println("");
outstream.println(notfound);
outstream.flush();
}
http://java.chinaitlab.com/advance/519981.html
F. 求一本傳智播客《JavaWeb程序開發入門》pdf完整版
不用那麼辛苦:孔夫子網大把的,我經常買舊書!
G. Javaweb office文檔在線預覽怎麼實現!!!
在線預覽的不是office格式,而且是swf文件,
flexPaper是可以把swf放在頁面上進行展示的,
1、flash 的flexpaper 將文檔轉換為swf格式,然後使用flash在網頁中瀏覽,
2、使用開源的軟體openoffice+pdf2htmlEx,利用openoffice的介面先將文檔轉換為pdf格式,然後在使用pdf2htmlEx將文檔轉換為html直接在網頁中顯示;
3、搭建一個文檔預覽伺服器,基於office web app,也就是微軟的office online。
搭建伺服器步驟:
首先,需要轉換server
安裝IIS 7.0,打開伺服器管理器,添加角色和功能,打開「添加角色和功能向導」界面,點擊下一步,因為是基於本機安裝,所以要選擇「基於角色或者基於功能安裝」,在伺服器角色列表上選擇「Web伺服器」,點擊下一步,安裝完成。
其次,域控server
(1)打開伺服器管理器,添加角色和功能,出現「添加角色和功能」界面,下一步,因為是基於本機安裝,所以要選擇「基於角色或基於功能安裝」,選擇添加AD域服務,同時添加所需功能,根據提示操作,下一步,等待安裝完成。
(2)配置域,點擊伺服器管理器左側「AD DS」,點擊「升級為域控制器」,進入AD域伺服器配置向導,下一步(注意:域的填寫),填寫密碼,下一步,提示DNS無法創建,不用管,繼續下一步,安裝路徑,默認,下一步,查看選項,默認,下一步,點擊安裝,安裝完成,會提示注銷重啟。
(3)將轉換伺服器加入到域控伺服器,修改NDS,指向域控伺服器,在計算機屬性中,修改計算機名稱,並添加到域控伺服器(如下圖),確定後提示注銷重啟伺服器,在域控伺服器,管理中選擇添加伺服器,名稱填寫office web apps server的計算機名稱,立即查找。然後添加到右邊,確定。在域控伺服器中,所有伺服器顯示兩台伺服器,並都是聯機狀態則表示成功。
至此,伺服器安裝完成。
H. 誰有Java WebService xfire方面的pdf教程至少要400頁以上的。我加300分!
昏聊,xfire這么簡單的好並東西,還要400頁以上。肯爹友敗跡啊,我至少是從來沒看見過。而且別人不可能什麼都跟你寫上去吧枯檔。你省省吧,沒有這么多的。最多10幾頁了不起了。
I. 請問如何實現JavaWeb項目的PDF的文件導出並實現文件保存路徑的選擇
導出文件沒問題,保存路徑好像不行,因為導出都是使用第三方的
J. 用webservice接收pdf文件的二進制字元串,在java項目中如何把二進制字元串轉換成pdf
JasperReports, 你可以上網查一下這個技術。我們現在做的項目就是應用這個技術的。用iReport生成一個.jasper模板文件,然後用java代碼讀取這個文件並向其中set值(讀取jasper文件的方法你應該知道吧,就是利用java的io,比如用File:File reportFile = new File(reportFilePath);),然後再用jasperreporst封裝好的方法(比如JasperExportManager.exportReportToPdfStream這個方法,當然,你需要先導入對應的jar包)生成最終生成的pdf文件中就含有java代碼set進去的值了。由於正在做的項目包含這個技術,所以就給你講講,不明白的地方可以一起討論。