终于把之前的项目算是写完了,不过因为逻辑十分简单,就简单的使用了JSP+JavaBean的开发方式,但是也深深感觉到自己的servlet学的什么也不是,所以决定写一个非常简单的用户管理的小项目来练手;也算是对于新的IDE的熟悉过程,下面是代码,实时更新
先写实体类Users:
package com.test.entity; /** * Created by lenovo on 2016/9/14. */ public class Users { private int id; private String username; private String password; private String content; private String photo; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } public String getPhoto() { return photo; } public void setPhoto(String photo) { this.photo = photo; } }
servlet代码:
package com.test.controller; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import com.jspsmart.upload.File; import com.jspsmart.upload.SmartUpload; import com.jspsmart.upload.SmartUploadException; import com.test.dao.UsersDao; import com.test.entity.Users; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.jsp.JspFactory; import javax.servlet.jsp.PageContext; import static java.lang.System.out; /** * Created by sjz on 2016/9/14. */ public class UsersServlet extends javax.servlet.http.HttpServlet { protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException { doGet(request,response); } protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); String method = request.getParameter("method"); out.println(method); switch (method){ case "insert" : insert(request,response); break; case "delete" : delete(request,response); break; case "toUpdate": int id3 = Integer.parseInt(request.getParameter("id")); Users user3 = UsersDao.selectById(id3); request.setAttribute("user",user3); request.getRequestDispatcher("../show.jsp").forward(request,response); case "update" : System.out.println(request.getPart("id")+"aaaa"); int id = Integer.parseInt(request.getParameter("id")); update(request,response,id); break; case "select" : //select(request,response); int id2 = Integer.parseInt(request.getParameter("id")); Users user2 = UsersDao.selectById(id2); request.setAttribute("user",user2); request.getRequestDispatcher("../show.jsp").forward(request,response); break; case "list" : //list(request,response);\ List<Users> list = UsersDao.select(); request.setAttribute("list",list); request.getRequestDispatcher("../list.jsp").forward(request,response); break; } } private void insert(HttpServletRequest request, HttpServletResponse response) { SmartUpload su = new SmartUpload(); JspFactory _jspxFactory = null; PageContext pageContext = null; _jspxFactory = JspFactory.getDefaultFactory(); pageContext = _jspxFactory.getPageContext(this,request,response,"",true,8192,true); try { su.initialize(pageContext); su.upload(); PrintWriter out = response.getWriter(); out.println("上传" + su.save("picture") + "个文件成功!!!"+"<br>"); String username = su.getRequest().getParameter("username"); String password = su.getRequest().getParameter("password"); String content = su.getRequest().getParameter("content"); File file = su.getFiles().getFile(0); if (file.isMissing()) System.out.println("未选择文件"); String photo = file.getFileName(); String path = "/picture"; path = path + "/" + photo; file.saveAs(path, SmartUpload.SAVE_VIRTUAL); System.out.println(photo); Users user = new Users(); user.setUsername(username); user.setPassword(password); user.setContent(content); user.setPhoto(photo); if(UsersDao.insert(user)){ out.println("成功"); response.setHeader("refresh", "3;UsersServlet?method=list"); } else{ out.println("失败"); response.setHeader("refresh", "3;UsersServlet?method=insert"); } } catch (ServletException e) { e.printStackTrace(); } catch (SmartUploadException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } private void delete(HttpServletRequest request, HttpServletResponse response) { int id = Integer.parseInt(request.getParameter("id")); try{ if(UsersDao.delete(id)){ out.println("成功"); request.getRequestDispatcher("UsersServlet?method=list").forward(request,response); } else{ out.println("失败"); request.getRequestDispatcher("../list.jsp").forward(request,response); } } catch (ServletException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } private void update(HttpServletRequest request, HttpServletResponse response, int id) { SmartUpload su = new SmartUpload(); JspFactory _jspxFactory = null; PageContext pageContext = null; _jspxFactory = JspFactory.getDefaultFactory(); pageContext = _jspxFactory.getPageContext(this,request,response,"",true,8192,true); try { su.initialize(pageContext); su.upload(); PrintWriter out = response.getWriter(); out.println("上传" + su.save("picture") + "个文件成功!!!"+"<br>"); String username = su.getRequest().getParameter("username"); String password = su.getRequest().getParameter("password"); String content = su.getRequest().getParameter("content"); File file = su.getFiles().getFile(0); if (file.isMissing()) System.out.println("未选择文件"); String photo = file.getFileName(); String path = "/picture"; path = path + "/" + photo; file.saveAs(path, SmartUpload.SAVE_VIRTUAL); System.out.println(photo); Users user = new Users(); user.setUsername(username); user.setPassword(password); user.setContent(content); user.setPhoto(photo); if(UsersDao.update(user,id)){ out.println("成功"); response.setHeader("refresh", "3;UsersServlet?method=list"); } else{ out.println("失败"); response.setHeader("refresh", "3;UsersServlet?method=insert"); } } catch (ServletException e) { e.printStackTrace(); } catch (SmartUploadException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } private void select(HttpServletRequest request, HttpServletResponse response) { } private void list(HttpServletRequest request, HttpServletResponse response) { } }
add.jsp:
<%-- Created by IntelliJ IDEA. User: lenovo Date: 2016/9/14 Time: 16:31 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>用户添加页</title> </head> <body> <% request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); %> <form action="/servlet/UsersServlet?method=insert" method="post"enctype="multipart/form-data"> <!--<input type="hidden" name="method" value="insert">--> 用户名:<input type="text" name="username"><br> 密 码:<input type="password" name="password"><br> 简 介:<textarea name="content" placeholder="在这里输入您的简介"></textarea><br> 照片:<input type="file" name="photo"><br> <input type="submit" value="提交"> </form> </body> </html>
list.jsp:
<%@ page import="com.test.entity.Users" %> <%@ page import="java.util.List" %><%-- Created by IntelliJ IDEA. User: lenovo Date: 2016/9/18 Time: 9:36 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>用户列表</title> </head> <body> <tr> <td>用户ID</td> <td>用户名</td> <td>用户简介</td> <td>照片</td> </tr><br> <% List<Users> list = (List<Users>) request.getAttribute("list"); for (int i=0;list!=null&&i<list.size();i++){ %> <tr> <td><%=list.get(i).getId()%></td> <td><%=list.get(i).getUsername()%></td> <td><%=list.get(i).getContent()%></td> <td><img src="../picture/<%=list.get(i).getPhoto()%>" style="width:100px;height:100px;"></td> <a href="UsersServlet?method=select&id=<%=list.get(i).getId()%>">修改</a> <a href="UsersServlet?method=delete&id=<%=list.get(i).getId()%>">删除</a> </tr> <br> <% } %> </body> </html>
show.jsp:
<%@ page import="com.test.entity.Users" %><%-- Created by IntelliJ IDEA. User: lenovo Date: 2016/9/18 Time: 9:27 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>用户详情页</title> </head> <body> <% Users user = (Users) request.getAttribute("user"); %> <form action="/servlet/UsersServlet?method=update&id=<%=user.getId()%>" method="post"enctype="multipart/form-data"> <input type="hidden" name="method" value="update"> 用户名:<input name="username" type="text" value="<%=user.getUsername()%>"><br> 密码:<input name="password" type="password" value="<%=user.getPassword()%>"><br> 简介:<textarea name="content"><%=user.getContent()%></textarea><br> 照片:<img src="../picture/<%=user.getPhoto()%>" style="width:100px;height:100px;"> <input type="file" name="photo"><br> <input type="submit" value="提交"> </form> </body> </html>
写完这个小项目真的成就感一级强烈,终于把Servlet页面跳转的门给进去了,所有代码逻辑性也并不是特别强烈,现在看来不应该写用户管理,新闻管理的话会更好,但是已经写完了,就可以进行下一步的学习了。全部代码都放在这里以供以后自己写东西参考
相关推荐
本教程将详细介绍如何通过Servlet来实现CKEditor的文件上传功能。 首先,我们需要了解Servlet的概念。Servlet是Java服务器端程序,用于处理来自客户端(如浏览器)的请求并返回响应。在CKEditor的文件上传场景中,...
本篇文章将深入探讨如何使用Servlet实现多文件上传的功能。多文件上传是Web应用中常见的一种需求,例如用户可能需要上传一组图片、文档或其他类型的数据。Servlet提供了一种灵活的方式来处理这种需求。 首先,我们...
### 使用JSP、Servlet与JavaBean构建用户管理系统的照片上传功能 #### 技术栈概览 在构建用户管理系统中的照片上传功能时,本案例采用了JSP(Java Server Pages)、Servlet(Java Servlets)和JavaBean的技术组合...
在Java Web开发中,Servlet是用于处理HTTP请求的重要组件,常用于构建动态Web应用程序。"基于Servlet实现文件的上传与下载"是一个常见的实战任务,...通过不断的实践和学习,你可以创建更高效、更安全的文件管理系统。
在这个"Servlet 文件上传下载例子"中,我们将探讨如何使用Servlet实现文件的上传和下载功能,这对于构建一个简单的图片文件服务器至关重要。 1. **文件上传** - **MultipartRequest**: 在Servlet中,处理文件上传...
【描述】:“使用eclipse mysql等工具进行开发的JAVAWEB新闻发布管理系统,包括新闻发布、新闻大小标题设置、新闻分类、新闻上传等功能,内有视频教学” 1. Eclipse:Eclipse是一款强大的集成开发环境(IDE),支持...
### Servlet实现文件上传与下载...通过上述介绍,我们可以看到使用Servlet技术实现文件上传与下载并不复杂,但需要注意细节处理,如文件路径的管理、异常情况的处理等。希望本文能帮助开发者更好地理解和实现这一功能。
在提供的`MyUploadFile`压缩包中,可能包含了这个简易文件上传系统的具体实现,包括HTML表单、JavaScript的进度条逻辑以及Servlet的完整代码。解压后仔细查看,你将能更好地理解整个过程的实现细节。
人力资源管理系统通常包括员工信息管理、考勤管理、薪酬福利、招聘培训等多个模块,这些模块的后端逻辑都可以通过Servlet进行实现。 【描述】:“上次上传了静态页面,这次觉得应该把具体实现上传了”这句话表明...
### 使用JSP与Servlet实现文件上传的深度解析 ...总之,使用JSP与Servlet实现文件上传功能,不仅需要掌握核心的编程技巧,还应注重用户体验、性能优化以及安全防护,以构建稳定、高效且安全的文件上传系统。
本项目“纯Servlet写的用户管理系统”完全依赖于Servlet技术,不使用其他框架,如Spring或Struts,来实现用户管理的核心功能,如用户注册、登录、信息修改等。以下是对该项目中涉及的Servlet技术和相关知识点的详细...
用户通过浏览器提交一个包含图片数据的表单到服务器,Servlet接收这个请求,将图片数据保存到服务器的文件系统或者数据库中。这里的关键点包括: 1. **文件表单处理**:在HTML表单中,我们通常使用`...
在IT行业中,文件上传与下载是Web应用中常见的功能,特别是在企业级系统中,例如文档管理系统、在线教育平台等。Servlet作为Java Web开发中的一个重要组件,常被用来处理这些操作。下面将详细介绍如何使用Servlet...
在IT行业中,构建Web应用程序是常见的任务之一,而"Servlet+Mvc模式实现学生管理系统"是一个典型的案例,它展示了如何利用Java技术栈来设计一个简单的管理应用。在这个项目中,我们主要涉及了三个核心技术:Servlet...
在本文中,我们将深入探讨如何使用Java的JSP(JavaServer Pages)和Servlet技术来实现一个图片上传功能。这是一个常见的Web开发任务,特别是在构建交互性强、动态内容丰富的网站时。以下是一些关键知识点: 1. **...
【jsp+servlet实现的图书管理系统】是一个基于Web的软件应用,它使用Java Server Pages (JSP) 和Servlet技术来处理用户交互和管理后端数据库。这个系统提供了多种功能,包括用户管理和图书管理,同时利用Ajax实现...
总的来说,这个项目展示了如何使用Servlet、MySQL和JDBC实现基本的用户管理系统。这包括了用户注册、登录验证以及文件上传(如头像)的核心功能。对于初学者来说,这是一个很好的学习资源,可以帮助理解Web开发的...
在本主题"Servlet实现资源的上传与下载"中,我们将深入探讨如何利用Servlet技术来实现用户上传文件到服务器以及从服务器下载文件的功能。这两个功能在许多Web应用程序中都是至关重要的,例如在线文档管理系统、社交...
综上所述,这个"jsp servlet 实现的购物城管理系统"是一个完整的Java Web项目,涉及到用户认证、购物车管理等多个关键模块,需要开发者具备扎实的Java基础、Servlet和JSP的使用经验,以及数据库操作的能力。...
具体到这个压缩包中的“servlet文件上传jar包”,可能包含了一个预封装好的Servlet实现,用于简化文件上传操作。这类库通常会提供方便的API,例如Apache Commons FileUpload和Spring Framework的MultipartFile。它们...