使用xml文件配置网页报500错误是咋回事,老师能帮忙看看嘛
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0" metadata-complete="false"> <context-param> <param-name>key1</param-name> <param-value>BJSXT</param-value> </context-param> <context-param> <param-name>key2</param-name> <param-value>BJSXT</param-value> </context-param> <servlet> <servlet-name>demoServlet</servlet-name> <servlet-class>com.example.demo.DemoServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>demoServlet</servlet-name> <url-pattern>/demo.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>getRequestDataServlet</servlet-name> <servlet-class>com.example.demo.GetRequestDataServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>getRequestDataServlet</servlet-name> <url-pattern>/getinfo.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>getRequestHeaderServlet</servlet-name> <servlet-class>com.example.demo.GetRequestHeaderServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>getRequestHeaderServlet</servlet-name> <url-pattern>/getHeader.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>LanguageServlet</servlet-name> <servlet-class>com.example.demo.LanguageServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LanguageServlet</servlet-name> <url-pattern>/Languages.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>RespByteServlet</servlet-name> <servlet-class>com.example.demo.RespByteServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>RespByteServlet</servlet-name> <url-pattern>/RespByte.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>RedirectServlet</servlet-name> <servlet-class>com.example.demo.RedirectServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>RedirectServlet</servlet-name> <url-pattern>/Redirect.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>DownFileServlet</servlet-name> <servlet-class>com.example.demo.DownFileServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>DownFileServlet</servlet-name> <url-pattern>/Down.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>GetBaseInfoServlet</servlet-name> <servlet-class>com.example.demo.GetBaseInfoServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>GetBaseInfoServlet</servlet-name> <url-pattern>/getBaseInfo.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>ContextReadInfoServlet</servlet-name> <servlet-class>com.example.demo.ContextReadInfoServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>ContextReadInfoServlet</servlet-name> <url-pattern>/Context.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>GlobalContainerServlet</servlet-name> <servlet-class>com.example.demo.GlobalContainerServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>GlobalContainerServlet</servlet-name> <url-pattern>/Global.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>GetConfigInfoServlet</servlet-name> <servlet-class>com.example.demo.GetConfigInfoServlet</servlet-class> <init-param> <param-name>key1</param-name> <param-value>BJSXT</param-value> </init-param> <init-param> <param-name>key2</param-name> <param-value>ITBZ</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>GetConfigInfoServlet</servlet-name> <url-pattern>/Config.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>CreatCookieSrvlet</servlet-name> <servlet-class>com.example.demo.CreatCookieSrvlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>CreatCookieSrvlet</servlet-name> <url-pattern>/Cookie.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>GetCookieDataServlet</servlet-name> <servlet-class>com.example.demo.GetCookieDataServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>GetCookieDataServlet</servlet-name> <url-pattern>/GetCookie.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>WelcomeServlet</servlet-name> <servlet-class>com.example.demo.WelcomeServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>WelcomeServlet</servlet-name> <url-pattern>/Welcome.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>CreateHttpSessionServlet</servlet-name> <servlet-class>com.example.demo.CreateHttpSessionServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>CreateHttpSessionServlet</servlet-name> <url-pattern>/CreatSession.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>GetHttpSessionDataServlet</servlet-name> <servlet-class>com.example.demo.GetHttpSessionDataServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>GetHttpSessionDataServlet</servlet-name> <url-pattern>/GetSessionData.do</url-pattern> </servlet-mapping> <session-config> <session-timeout>1</session-timeout> </session-config> <servlet> <servlet-name>WelcomeSessionServlet</servlet-name> <servlet-class>com.example.demo.WelcomeSessionServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>WelcomeSessionServlet</servlet-name> <url-pattern>/WelcomeSession.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>AutoStartServlet</servlet-name> <servlet-class>com.example.demo.AutoStartServlet</servlet-class> <init-param> <param-name>path</param-name> <param-value>image</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>AutoStartServlet</servlet-name> <url-pattern>/auto.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>ThreadSafeServlet</servlet-name> <servlet-class>com.example.demo.ThreadSafeServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>ThreadSafeServlet</servlet-name> <url-pattern>/Safe.do</url-pattern> </servlet-mapping> <servlet> <servlet-name>FileUploadServlet</servlet-name> <servlet-class>com.example.demo.FileUploadServlet</servlet-class> <multipart-config> <file-size-threshold>2000</file-size-threshold> </multipart-config> </servlet> <servlet-mapping> <servlet-name>FileUploadServlet</servlet-name> <url-pattern>/fileupload.do</url-pattern> </servlet-mapping> </web-app>
package com.example.demo; import javax.servlet.ServletContext; import javax.servlet.ServletException; 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 java.io.IOException; import java.io.PrintWriter; import java.util.UUID; public class FileUploadServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("utf-8"); String desc = req.getParameter("desc"); Part part=req.getPart("file"); // InputStream inputStream = part.getInputStream(); String filename= UUID.randomUUID().toString()+part.getSubmittedFileName().substring(part.getSubmittedFileName().lastIndexOf(".")); ServletContext servletContext = this.getServletContext(); String realPath = servletContext.getRealPath("image"+filename); part.write(realPath); PrintWriter out=resp.getWriter(); out .println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); out.println("<HTML>"); out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>"); out.println(" <BODY>"); out.println("上传成功"); out.println("</BODY>"); out.println("</HTML>"); out.flush(); out.close(); } }
//对对象进行反序列化 public static void test2(){ ObjectInputStream ois = null; try{ ois = new ObjectInputStream(new FileInputStream("E:/object.txt")); Person p =(Person)ois.readObject(); System.out.println(p); }catch(Exception e){ e.printStackTrace(); }finally{ try{ if(ois != null){ ois.close(); } }catch(Exception e){ e.printStackTrace(); } } } java.io.InvalidClassException: cn.bzsxt.bytestream.User; local class incompatible: stream classdesc serialVersionUID = 1732458846381710476, local class serialVersionUID = -6028733942570062611 at java.base/java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:689) at java.base/java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1898) at java.base/java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1764) at java.base/java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2055) at java.base/java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1586) at java.base/java.io.ObjectInputStream.readObject(ObjectInputStream.java:423) at cn.bzsxt.Test.Test.test2(Test.java:40) at cn.bzsxt.Test.Test.main(Test.java:11)
老师查了好久说不是代码问题 测了好几遍都报错
public class Person implements Serializable { private String name; private int age; public Person() { } public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "Person{" + "name='" + name + '\'' + ", age=" + age + '}'; }
老师,这里返回的为什么是这样的,而不是返回一个对象地址
老师,视频中,这个查询组件的菜单命令是什么?
老师你好我用视频中的auth.authenticate方法获取,显示None,但是我用models.user.object.get就能获取到,不知道是不是因为我在数据库中添加的数据是明文的,如果是的话我怎么往数据库添加密文的密码呢?
两个集合求并集以后,会返回一个新的集合,这个新集合中元素排列是按照什么规则进行的?
给的资料上是:
a = {1,3,’sxt’}
b = {‘he’,’it’,’sxt’}
求并集以后结果是:
{1,3,’sxt’, ‘he’,’it’}
我自己操作得到的结果不是这样,得到的结果是
{1,3,’it’, ‘he’,’sxt’}
在Python3.8和3.6版本都是这个结果,而不是资料上给的。
老师,这节课也是和上节课一样的问题,成功初始化servlet后,并没有出现value1和value2,访问页面也是404报错,老师能不能帮忙看看哪里出问题了
package com.example.demo; import jakarta.servlet.ServletConfig; import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import javax.servlet.annotation.WebInitParam; import javax.servlet.annotation.WebServlet; import java.io.IOException; import java.io.PrintWriter; @WebServlet(urlPatterns="/initParam.do" ,initParams ={@WebInitParam(name="key1",value="value1"),@WebInitParam(name="key2",value = "value2")} ,loadOnStartup = 1) public class InitParamServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { ServletConfig servletConfig = this.getServletConfig(); PrintWriter out=resp.getWriter(); out .println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); out.println("<HTML>"); out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>"); out.println(" <BODY>"); out.println("Value1"+servletConfig.getInitParameter("key1")+"<br/>"); out.println("Value2"+servletConfig.getInitParameter("key2")+"<br/>"); out.println("</BODY>"); out.println("</HTML>"); out.flush(); out.close(); } @Override public void init() throws ServletException { ServletConfig servletConfig = this.getServletConfig(); System.out.println(servletConfig.getInitParameter("key1")); System.out.println(servletConfig.getInitParameter("key2")); } }
老师,我想请问一下callbac是什么意思呢?不太懂;还有就是您后面说的是写了args的效率要比不写是要高一点是吗?
我用注解无法获取响应页面,老师能帮忙看看是咋回事吗
package com.example.demo; import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import javax.servlet.annotation.WebServlet; import java.io.IOException; import java.io.PrintWriter; @WebServlet(urlPatterns = "/ann.do") public class AnnotationServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { PrintWriter out=resp.getWriter(); out .println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); out.println("<HTML>"); out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>"); out.println(" <BODY>"); out.println("Annotation servlet"); out.println("</BODY>"); out.println("</HTML>"); out.flush(); out.close(); } }
老师,我做练习的时候,遇到问题,我明明写了两个参数但是它提示我还少一个参数
# 定义战士类 class Warrior: def __init__(self): self.health = 50 self.attack = 5 self.is_alive = True # 定义骑士类 class Knight(Warrior): def __init__(self): super().__init__() self.attack = 7 # 定义军队 class Army: def __init__(self): self.arm = [] def add_units(self, soldier, number): for i in range(number): new_unit = soldier self.arm.append(new_unit) return self.arm # 定义战斗类 class Battle: def fight(self, armclass1, armclass2): arm1 = armclass1.arm arm2 = armclass2.arm while len(arm1) > 0 and len(arm2) > 0: if fight1(arm1[0], arm2[0]) == True: arm2.remove(arm2[0]) else: arm1.remove(arm1[0]) if len(arm1) > 0: return True else: return False def fight1(unit_1, unit_2): while unit_1.is_alive and unit_2.is_alive: unit_2.health -= unit_1.attack if unit_2.health <= 0: unit_2.is_alive = False break unit_1.health -= unit_2.attack if unit_1.health <= 0: unit_1.is_alive = False break return unit_1.is_alive if __name__ == '__main__': # battle tests my_army = Army() my_army.add_units(Knight, 3) enemy_army = Army() enemy_army.add_units(Warrior, 3) Battle.fight(my_army, enemy_army) army_3 = Army() army_3.add_units(Warrior, 20) army_3.add_units(Knight, 5) army_4 = Army() army_4.add_units(Warrior, 30) battle = Battle()
老师,请问with的用法是什么意思呢?在这儿写起什么作用呀?下面的两行是什么意思呢?
老师,请您看一下这样为什么会报错啊?就是下面我用荧光笔标注出来的位置
老师,我的eclipse中点击方法后的点,不出现方法的提示是怎么回事呢?
老师关于谷歌不支持flash我看到这个方法不知道能不能行,因为需要修改注册表我也很慌所以麻烦老师帮忙看看这个方法可行否
老师,访问index.jsp会调用getSession对象那里还是有疑问,在调用index.jsp时返回Session那块(和我们写的创建session的代码有关吗,还是Tomcat默认的行为,如果是默认的,那这种调用有什么用呀)
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637