javaweb实验报告

  • 格式:pdf
  • 大小:223.37 KB
  • 文档页数:8

下载文档原格式

  / 8
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

5
软件 162 秦增鑫 1608050217
5、头像上传
UserAvatar.java import java.io.File; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part; import com.qst.itoffer.bean.Applicant; import com.qst.itoffer.dao.ResumeDAO; @WebServlet("/UserAvatar ") @MultipartConfig public class ResumePicUploadServlet extends HttpServlet { private static final long serialVersionUID = 1L; public UserAvatar () { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); // 获取上传文件域 Part part = request.getPart("headShot"); // 获取上传文件名称 String fileName = part.getSubmittedFileName(); // 为防止上传文件重名,对文件进行重命名 String newFileName = System.currentTimeMillis() + fileName.substring(fileName.lastIndexOf("."));
4
软件 162 秦增鑫 1608050217
对数据库访问,查询相关信息得到某用户的登录名和相应密码 import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class User_Dao { public User login(Connection con,User user) throws SQLException{ String sql = "select * from tb_user where userName=? and password=?"; User resultUser = null; PreparedStatement pstmt =con.prepareStatement(sql); pstmt.setString(1, user.getUserName()); pstmt.setString(2, user.getPassword()); ResultSet rs = pstmt.executeQuery(); if(rs.next()) { resultUser = new User(); resultUser.setUserId(rs.getInt("userId")); resultUser.setUserName(rs.getString("userName")); resultUser.setPassword(rs.getString("password")); resultUser.setImagePath(rs.getString("ImagePath")); } return resultUser; } public boolean isNotExist(Connection con,String userName) throws SQLException { String sql = "select * from tb_user where userName=?"; PreparedStatement pstmt =con.prepareStatement(sql); pstmt.setString(1, userName); if(pstmt.executeQuery().next()) { return false; } return true; } }
1、使用 Servlet 进行头像的上传功能及添加求职者信息模块 2、学会使用 Servlet 的 API 进行网站访问的统计 3、学会对基本需求的理解、讲需求转换为实战代码中
JDK1.7 或者 1.8、 MyEclipse、Tomcat8 实验内容: 使用 Servlet 进行头像上传及统计访问网站的人数以及添加求职者 信息模块 算法描述: 用户登录请求的 Servlet,验证信息通过后,增加对用户信息进行 会话跟踪功能,以方便用户上传头像等信息维护的功能。用户在欢迎页 面从上传头像的链接进入,后台跳转到 UserAvatar.java,获取到上传文 件域和头像文件名称,并对文件名重命名保存到指定路径下,同时更新 session。 实验步骤: 详情:附录一
软件 162 秦增鑫 1608050217
青 岛 科Leabharlann Baidu技 大 学
课程实验报告
课程 名称 姓名 实验 名称 JavaWeb 高级开发 秦增鑫 班级 学号
161、162 1608050217
实验 日期 实验 成绩
2018-09-22
Servlet 开发中的具体应用 实验目的:
实验 目的 及要 求 实 验 环 境 实 验 内 容 算 法 描 述 及 实 验 步 骤 调 试 过 程 及 实 验 结 果
附录一:
1、数据库设计:
-- ----------------------------- Table structure for TB_USER -- ---------------------------DROP TABLE "QZX"."TB_USER"; CREATE TABLE "QZX"."TB_USER" ( "USERID" NUMBER , "USERNAME" VARCHAR2(30 BYTE) , "PASSWORD" VARCHAR2(30 BYTE) , "IMAGEPATH" VARCHAR2(100 BYTE) ) TABLESPACE "Qust_JavaWeb1" LOGGING NOCOMPRESS PCTFREE 10 INITRANS 1 STORAGE ( BUFFER_POOL DEFAULT ) PARALLEL 1 NOCACHE DISABLE ROW MOVEMENT ; TB_USER:
3
软件 162 秦增鑫 1608050217
3、 用户实体类及数据库访问
建立实体类存储和管理信息映射数据库表
public class User { private Integer userId; private String passWord; private String userName; private String imagePath; public User() { super(); } public User(String userName, String password) { super(); this.userName = userName; this.password = password; } public Integer getUserId() { return userId; } public void setUserId(Integer userId) { this.userId = userId; } 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; } }
2
软件 162 秦增鑫 1608050217
2、 连接数据库:
通过数据库连接类,在本地用 thin 方式连接 Oracle 数据库: 通过 DriverManager 获取数据库连接利用反射加载好数据库的驱动程序然后再 调用其中的 getConnection()方法完成数据库的连接。 import java.sql.Connection; import java.sql.DriverManager; import com.lock.util.DbUtil; public class DbUtil { String dburl = "jdbc:oracle:thin:@localhost:1521:orcl"; String dbDriverName = "oracle.jdbc.OracleDriver"; String dbName = "qzx"; String dbpassword = "154876"; public Connection getCon() throws Exception{ Class.forName(dbDriverName); Connection con=DriverManager.getConnection(dburl,dbName,dbpassword); return con; } public void closeCon(Connection con) throws Exception{ if(con!=null) { con.close(); } } public static void main(String[] args) { DbUtil dbUtil=new DbUtil(); try { dbUtil.getCon(); System.out.println("Database connection success "); } catch (Exception e) { e.printStackTrace(); System.out.println("Database connection failure "); } } }
用户登陆后,mainTemp 页面显示当前访问的人数以及详细信息包括 用户头像。在统计网站的访问用户时参数的初始值从 1 开始。 详情:附录一
1
软件 162 秦增鑫 1608050217
总 结
熟悉了 Servlet 的运行过程,关于会话跟踪技术更加了解,session 和 cookie 的不同使用场景会在某些条件下更大的发挥两者的功能。