# java-web **Repository Path**: hujunfeng123456/java-web ## Basic Information - **Project Name**: java-web - **Description**: 自定义的JavaWeb框架,支持URL参数获取、处理基本的HTTP请求、处理multipart/form-data的文件上传、Cookie获取和设置、会话管理、过滤器等基本功能。 主要特点:依赖库简单,能直接集成到项目里运行,不需要另外的容器部署。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-26 - **Last Updated**: 2025-12-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # java-web项目 #### 介绍 自定义的JavaWeb框架,支持URL参数获取、处理基本的HTTP请求、处理multipart/form-data的文件上传、Cookie获取和设置、会话管理、过滤器等基本功能。 主要特点:依赖库简单,能直接集成到项目里运行,不需要另外的容器部署。 #### 软件架构 使用Java 1.8版本以上来开发。 #### 文件说明 src/ :源文件目录。 class/ :编译后的字节码文件目录。 java-web-1.1.jar :打包的依赖库,可以直接引入项目中使用。 compile.bat :编译脚本。 package.bat :打包成jar文件的脚本。 #### 安装教程 1. 把java-web-1.1.jar文件引入项目的类路径下。 2. 创建启动类,在main方法内部创建应用类对象,把处理器类对象添加,最终启动容器类。 3. 运行启动类。 #### 使用说明 1. 把java-web-1.1.jar文件加入项目依赖库中。 2. 创建一个Handler处理器类 假设是 MainHandler类 ```java import org.hujunfeng.entity.HttpRequest; import org.hujunfeng.entity.HttpResponse; import org.hujunfeng.entity.Session; import org.hujunfeng.impl.AbstractHandler; import java.io.IOException; import java.io.OutputStream; import java.io.UnsupportedEncodingException; public class MainHandler extends AbstractHandler { @Override public void init() { System.out.println("---------MainHandler初始化-----------"); } @Override public void doGet(HttpRequest httpRequest, HttpResponse httpResponse) { // 设置响应码为200 httpResponse.setCode(200); // 设置内容类别为HTML httpResponse.setContentType("text/html; charset=UTF-8"); String body = "" + "" + " " + " Hello" + " " + " " + "

Hello World!

" + " " + ""; try { // 获得响应体的字节序列 byte[] data = body.getBytes("UTF-8"); // 设置内容长度 httpResponse.setContentLength(data.length); // 获得内容的输出流 OutputStream output = httpResponse.getBodyOutput(); output.write(data); output.flush(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } @Override public void destroy() { } } ``` 3. 创建启动类 ```java import org.hujunfeng.HttpContainer; import org.hujunfeng.entity.Application; import org.hujunfeng.entity.HttpConfig; import java.io.IOException; public class Test { public static void main(String[] args) { // 1、创建容器类,端口是8080 HttpContainer container = new HttpContainer(8080); // 设置网络读取的超时是2000毫秒 container.setReadTimeout(2000); // 2、创建应用程序类,名字是"/hu" Application app = new Application("/hu"); // 3、创建MainHandler对象 MainHandler handler = new MainHandler(); // 设置映射路径 handler.setMapping("/index"); // 4、添加处理器 app.addHandler(handler); // 5、把程序添加到容器中 container.addApp(app); // 6、启动容器 container.run(); } } ``` 4. 编译和执行Test.java文件。 用javac和java命令来执行Test.java程序。 5. 浏览器访问下列的路径查看结果 > http://127.0.0.1:8080/hu/index 格式说明:http://地址:端口/程序名字/映射路径