老师我在网页上输入localhost:8080显示404是为啥呢?
我这个url为什么用不了,一直是服务器错误
找不到文件路径,也没有进行下载package server;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.OutputStream;public class DownFileServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req,resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //获取servletContext对象 ServletContext servletContext=this.getServletContext();// String path=(String)servletContext.getAttribute("E:/matlab图片/天.jpg");// System.out.println(path); //路径转换 String realPath=servletContext.getRealPath("image/天.jpg"); File file=new File(realPath); System.out.println(file.getName()); FileInputStream fis=new FileInputStream(file); byte [] buff=new byte[fis.available()]; fis.read(buff); resp.addHeader("Content-Disposition","attachment;filename="+new String(file.getName().getBytes("gbk"),"iso-8859-1")); OutputStream os=resp.getOutputStream(); os.write(buff); os.flush(); os.close(); }}
使用的2020.2.1版本, 没法新建packge,class文件也创建不了
没法新建packge,class文件也创建不了
WebDemo.zip老师,我这个点击确认保存后返回一个空白界面,然后数据也不能预更新,麻烦老师帮我看看
老师,我的账号密码输入正确它也显示账号密码错误,找了好久也没找到原因,麻烦您帮我看下。
WebDemo.zip
private void addUsers(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{ //创建获取数据的方法createUsers(); Users users = this.createUsers(req); ServletContext servletContext = this.getServletContext(); List<Users> list = (List<Users>) servletContext.getAttribute("list"); list.add(users); resp.setContentType("text/plain;charset=utf-8"); PrintWriter pw = resp.getWriter(); pw.print("添加成功"); pw.flush(); pw.close(); }
设置了响应编码,为啥添加用户中有中文,还是会出现乱码现象
老师,我有几个问题呢。
1、web服务器、应用服务器、web容器具体是什么呢,以及它们和servlet的关系
2、tomcat是属于什么,还有就是serlet是串实现的代码吗?那它是放在哪的?
3、这些服务器是全部部署在物理服务器上的吧?
public class UserLoginDaoImpl implements UserLoginDao { @Override public Users selectUsersByUsernameAndUserpwd(String username, String userpwd) { Connection conn = null; Users user = null; try { conn = JDBCUtils.getConnection(); PreparedStatement ps = conn.prepareStatement("selcet * from users where username=? and userpwd=?"); ps.setString(1, username); ps.setString(2, userpwd); ResultSet resultSet = ps.executeQuery(); while (resultSet.next()) { user = new Users(); user.setUsersex(resultSet.getString("usersex")); user.setUserpwd(resultSet.getString("userpwd")); user.setPhonenumber(resultSet.getString("phonenumber")); user.setQqnumber(resultSet.getString("qqnumber")); user.setUserid(resultSet.getInt("userid")); user.setUsername(resultSet.getString("username")); } } catch (SQLException e) { e.printStackTrace(); }finally { JDBCUtils.closeConnection(conn); } return user; } }
老师能给我讲解一下,这串代码吗?有点迷糊了,特别是这两个传进来的参数String username,String userpwd。
老师为啥我每次请求,必须要在根目录的基础上加上对应的Servlet才能跳转页面,直接复制完整的url去跳转就报500错误。这是什么原因啊?
老师有两个疑问
1、把删除和添加都放到if判断中是不是比较好一点,这样可以保证只有找到这个user才会更新,没找到就不更新,
如果把list.add(user);放在if判断外面,不就是不管有没有找到都会把这个更新的user添加进去,这样不就成了是添加而不是更新了
if(u != null){ list.remove(u); // 删除找到的user对象 // 删除原来的之后,把更新的加进去 list.add(user); }
2、更新后用户位置移动到最后,顺序就乱了。可以这样写吗?测试了一下,是可以实现的
if(u != null){ // u不为空表示找到了 /*list.remove(u); // 删除找到的user对象 // 删除原来的之后,把更新的加进去 list.add(user);*/ u.setUsername(user.getUsername()); u.setUsersex(user.getUsersex()); u.setUserbirth(user.getUserbirth()); }
老师为什么从文档里直接复制文本到IDEA不会自动换行呀
点ok会出现这个错误,百度查了一下发现将Application context设成一个/,再运行就可以了
老师求解这是什么原理啊
老师 我这个日期现实不出来 这是为什么?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637