/**
* 业务逻辑层调用的接口
* @author HongSoft
*/
public class ForumFileDao
{
/**
* 得到主题贴内容
* 主题贴只写一行
* @param forumId
* @param topicId
* @return
*/
public static String getTopicContent(int forumId, int topicId)
{
String content = "";
ForumFileClient ffc = new ForumFileClient();
try
{
ffc.getOut().println("0" + "\0x1e" + forumId + "\0x1e" + topicId);
content = ffc.getIn().readLine();
}
catch (Exception e)
{
e.printStackTrace();
}
ffc.closeSocket();
return content;
}
/**
* 得到回帖列表
* @param forumId
* @param topicId
* @return
*/
public static List getReplyContent(int forumId, int topicId)
{
List replyList=new ArrayList();
String str="";
ForumFileClient ffc = new ForumFileClient();
try
{
ffc.getOut().println("1" + "\0x1e" + forumId + "\0x1e" + topicId);
while((str=ffc.getIn().readLine())!=null)
{
String[] strs=str.split("\0x1e");
ReplyRef rr=new ReplyRef();
rr.setUserId(strs[0]);
rr.setAddTime(strs[1]);
rr.setContent(strs[2]);
replyList.add(rr);
}
}
catch (Exception e)
{
e.printStackTrace();
}
ffc.closeSocket();
return replyList;
}
/**
* 发帖
* @param forumId
* @param topicId
* @return
*/
public static void addTopic(int forumId, int topicId,String content)
{
ForumFileClient ffc = new ForumFileClient();
try
{
ffc.getOut().println("2" + "\0x1e" + forumId + "\0x1e" + topicId+"\0x1e"+content);
}
catch (Exception e)
{
e.printStackTrace();
}
ffc.closeSocket();
}
/**
* 续贴(主题贴只写一行)
* @param forumId
* @param topicId
* @return
*/
public static void resumeTopic(int forumId, int topicId,String content)
{
ForumFileClient ffc = new ForumFileClient();
try
{
ffc.getOut().println("3" + "\0x1e" + forumId + "\0x1e" + topicId+"\0x1e"+content);
}
catch (Exception e)
{
e.printStackTrace();
}
ffc.closeSocket();
}
/**
* 回贴
* @param forumId
* @param topicId
* @return
*/
public static void addReply(int forumId, int topicId,String content,String qq,String replyTime)
{
ForumFileClient ffc = new ForumFileClient();
try
{
ffc.getOut().println("4" + "\0x1e" + forumId + "\0x1e" + topicId+"\0x1e"+content+"\0x1e"+qq+"\0x1e"+replyTime);
}
catch (Exception e)
{
e.printStackTrace();
}
ffc.closeSocket();
}
/**
* 删主题贴(同时它的回贴也应该删除)
* @param forumId
* @param topicId
* @return
*/
public static void deleteTopic(int forumId, int topicId)
{
ForumFileClient ffc = new ForumFileClient();
try
{
ffc.getOut().println("5" + "\0x1e" + forumId + "\0x1e" + topicId);
}
catch (Exception e)
{
e.printStackTrace();
}
ffc.closeSocket();
}
/**
* 删某个回贴(但回贴数并不做改变)
* @param forumId
* @param topicId
* @return
*/
public static void deleteReply(int forumId, int topicId,int replyId)
{
ForumFileClient ffc = new ForumFileClient();
try
{
ffc.getOut().println("6" + "\0x1e" + forumId + "\0x1e" + topicId+"\0x1e"+replyId);
}
catch (Exception e)
{
e.printStackTrace();
}
ffc.closeSocket();
}
}
分享到:
相关推荐
在这个场景中,我们讨论的是如何使用Java的Socket来实现文件上传功能,即从客户端将文件发送到服务器,然后保存到服务器的数据库中。这个过程涉及到多个关键知识点,下面我们将详细探讨。 1. **Java Socket基础**:...
本文将深入探讨如何利用socket在C语言中实现客户端与服务器之间的文件传输。 首先,我们需要了解socket的基本概念。Socket是操作系统提供的一种进程间通信(IPC)机制,它允许不同计算机或同一计算机内的不同进程...
总的来说,"SOCKET TCP 文件传输 客户端 服务器端 client svever"这个项目旨在教授如何利用TCP协议实现文件的可靠传输,这对于理解网络编程和提升实际应用技能非常有价值。通过深入学习和实践,开发者可以更好地掌握...
在Python中,我们可以使用内置的socket库来实现客户端和服务器的通信。`TCP_server.py`文件通常包含了服务器端的代码,它会创建一个socket对象,绑定到特定的IP地址和端口,然后调用listen()方法监听连接。当有...
基于TCP socket实现的支持报文解析并返回响应报文的Web服务器,可以响应多种文件需求并能够处理特定的错误情况 服务器实现及其功能: 1、读取配置文件,为服务器自身设置IP地址、端口号、阻塞模式、最大连接数目并...
2. **绑定与监听**:在服务器端,使用`bind()`函数将Socket与指定的IP地址和端口关联,然后用`listen()`设置最大连接队列长度。 3. **接受连接**:当有客户端请求连接时,服务器端使用`accept()`函数接受连接并返回...
5. **客户端缓存**:在C#中,可以使用MemoryStream或FileStream来实现文件的读取和缓存,这样可以有效地管理内存,避免一次性加载整个文件。 6. **发送与接收**:客户端通过Socket的Send方法逐个发送数据包,服务器...
用socket实现文件传输在MFC中实现客户端和服务器的连接,相互通信。
本项目是使用java Socket编程实现的一个简单的FTP服务器和客户端。 客户端目前实现的功能是登录,刷新,上传和下载。同时具有主动模式和被动模式两种模式。 服务器端实现的功能有登录、刷新、上传、下载、列出文件...
在Python中,使用socket模块实现文件传输是一个基础且实用的技能。本文将详细介绍在Python环境下,如何使用socket传输包括图片和视频在内的各种文件。文章内容涵盖了服务器端和客户端的代码实现,以及文件处理的相关...
在这个场景中,我们主要关注如何通过Socket来实现在服务器上进行文件的操作,包括下载、上传和删除等。下面将详细介绍Socket编程的基本原理及其在文件操作中的应用。 首先,Socket可以理解为网络上的“插座”,它为...
Java语言通过Socket实现文件传输是一种常见的网络编程技术,它基于TCP/IP协议,可以在不同设备间进行数据的可靠传输。在Unix/Linux/Windows等操作系统环境下,无论是客户端(Client)还是服务器端(Server),都可以...
在"Java Socket PC端传输文件简易服务器客户端"这个项目中,我们主要会涉及以下知识点: 1. **Java Socket类**: - Socket类代表了网络上的一个连接,它包含了IP地址和端口号。通过创建Socket实例,客户端可以连接...
通过本文的介绍,我们可以了解到使用 Socket 实现文件上传下载的基本原理和步骤。这种实现方式适用于简单的文件传输需求。对于更复杂的场景,如大文件传输、断点续传等,可能需要考虑更高级的技术方案,例如使用 ...
在这个场景中,我们将讨论如何使用Java实现一个简单的文件传输功能,即客户端通过Socket连接将文件发送到服务器。 首先,我们需要理解Socket通信的基本流程: 1. **服务器端**: - 创建`ServerSocket`实例,指定...
在这个示例中,我们将探讨如何使用Socket来实现文件传输。在互联网通信中,Socket是客户端和服务器之间通信的基础,它允许两个程序通过网络交换数据。 首先,我们需要理解Socket的基本概念。Socket可以看作是两台...
本篇文章将详细探讨如何利用Socket实现这一功能。 首先,我们需要了解Socket的基本概念。Socket是操作系统提供的一种接口,用于网络上不同主机间的进程通信。它分为两部分:服务器端的Socket和客户端的Socket。...
以上就是使用C语言socket实现文件下载的基本流程。实际应用中,还需要考虑更多的细节,如异常处理、内存管理、性能优化等。通过深入理解和实践这些知识点,可以更好地掌握网络编程,实现高效的文件下载服务。
本示例中,我们探讨的是如何利用C#的WinForm来创建一个基于Socket的服务端和客户端,实现两者之间的消息传递,以及在服务器断线后的重连机制。 首先,Socket在C#中是System.Net.Sockets命名空间下的类,它提供了TCP...
在这个项目中,我们将探讨如何使用C++在Visual Studio 2008环境下实现Socket服务器和客户端的基本功能。 首先,Socket在C++中主要是通过`<winsock2.h>`和`<ws2tcpip.h>`这两个库来使用的,它们提供了与操作系统底层...