servlet

JSP编写Servlet(一)

末鹿安然 提交于 2020-01-13 06:35:05
用户自定义的类需要继承HttpServlet,然后重写doGet()和doPost() 重写doGet()或者doPost()方法 在web.xml中注册Servlet 新建一个web项目工程 File—New—Web Project,这里项目名命名为Servlet001。 然后再index.jsp文件里编写: 在新建的Web Project目录下的src文件—New–Package,即新建一个包,我这里命名的是Servlet. 光标放在新建的包Servlet上面—New—Class,新建一个类。 Name:是类的名字,可以随便命名,这里假设为HelloServlet, SuperClass:点击右边的Browse…,出现Super Class Selection界面,在Choose a type 选项框中输入HttpServlet,选择 javax.servlet.http.HttpServlet 。点击OK , finish。 打开.java文件,在中间输入代码区域右击,Source—Override Implement Methods…,选中开头为doGet和doPost的方法,打勾,点击OK. 打开该项目的web.xml文件,添加两个配置标签: < servlet > < servlet - name > HelloServlet < / servlet - name >

Spring 源码解析之DispatcherServlet源码解析(五)

放肆的年华 提交于 2020-01-13 06:23:14
spring 的 整个请求流程都是围绕着 DispatcherServlet 进行的 类结构图 根据类的结构来说 DispatcherServlet本身也是继承了HttpServlet的,所有的请求都是根据这一个Servlet来进行转发的 , 同时解释了为什么需要在web.xml进行如下配置 ,因为Spring是基于一个Servlet来展开的,当然不需要Servlet也能够使用Spring <servlet> <servlet-name>appServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/spring-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>appServlet</servlet-name> <url-pattern>/</url-pattern>

Dubbox 框架消费端(二)

﹥>﹥吖頭↗ 提交于 2020-01-13 05:21:44
消费者开发步骤: (1) 创建Maven工程dubbox-customer,在pom.xml引入依赖 ,同“dubboxservice”工程。 (2 )在webapps 目录下WEB-INF 目录 ,并修改web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <!-- 解决post乱码 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf

利用Servlet生成动态页面

孤人 提交于 2020-01-13 01:54:00
创建Web项目HelloServletWorld 在web目录里创建首页文件index.html 在src目录里创建net.xmh.servlet包,在里面创建HelloServletWorld类 package net.cw.servlet; import javax.servlet.ServletException; import javax.servlet.annotation.WebInitParam; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.util.Date; @WebServlet(name = "HelloServletWorld", value = "/hello", initParams = { @WebInitParam(name =

Servlet学习

走远了吗. 提交于 2020-01-13 01:22:39
servlet 每一个servlet相当于一个客服,但是不同的客服只能做对应的事情,列如:客服A–只能拉屎,客服B–只能擦pp,当你要做某种事情的时候只能让对应的客服为你服务; 有五个方法: public void destroy ( ) { System . out . println ( "12313" ) ; } @Override public ServletConfig getServletConfig ( ) { System . out . println ( "getServletConfig()" ) ; return null ; } /** * 获取信息 * @return */ @Override public String getServletInfo ( ) { System . out . println ( "getServletInfo()...." ) ; return "getServletInfo().. 的 return" ; } // 出生 @Override public void init ( ServletConfig servletConfig ) throws ServletException { System . out . println ( "init()" ) ; } /* 调用多次 每次处理请求都执行; */

Servlet入门

旧城冷巷雨未停 提交于 2020-01-13 00:48:47
Servlet入门 软件结构的发展史与Tomcat 软件结构的发展史 Tomcat与Servlet的关系 Servlet的创建与声明周期 Servlet的创建 请求参数的发送与接收 在浏览器URL中写参数 HTML页面 action与选择提交按钮后请求的URL地址(默认为Get方式),提交给Servlet进行处理 请求显示HTML页面 数据传递给Servlet,Servlet就收数据并将结果打印输出在页面上。 选择提交按钮后显示的内容 Get与Post请求 如何参看使用请求体传递参数,F12 我们通过点击Form Data右侧的view source查看源代码,可以看出post与get传递数据格式完全相同,只是存放的位置不一样而已,POst存放在了不可见的请求体中(Form Data---数据表单), Get方式请求存放的位置 Servlet对于Get和Post传递参数处理 但正式业务开发对于Get和Post需要分开处理 Servlet提供了两方法来处理Get和Post的请求,我们重写这两个方法即可 Servlet的生命周期 来源: CSDN 作者: 紫蝶侠 链接: https://blog.csdn.net/yangshengwei230612/article/details/103945348

Java 守护线程

泪湿孤枕 提交于 2020-01-12 23:44:29
在 Java 中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) 用个比较通俗的比如,任何一个守护线程都是整个JVM中所有非守护线程的保姆: 只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同结束工作。 Daemon的作用是为其他线程的运行提供便利服务,守护线程最典型的应用就是 GC (垃圾回收器),它就是一个很称职的守护者。 User和Daemon两者几乎没有区别,唯一的不同之处就在于虚拟机的离开:如果 User Thread已经全部退出运行了,只剩下Daemon Thread存在了,虚拟机也就退出了。 因为没有了被守护者,Daemon也就没有工作可做了,也就没有继续运行程序的必要了。 值得一提的是,守护线程并非只有虚拟机内部提供,用户在编写程序时也可以自己设置守护线程。下面的方法就是用来设置守护线程的。 [java] view plain copy Thread daemonTread = new Thread(); // 设定 daemonThread 为 守护线程,default false(非守护线程) daemonThread.setDaemon( true); // 验证当前线程是否为守护线程,返回 true 则为守护线程 daemonThread

Java中的守护线程

a 夏天 提交于 2020-01-12 23:43:42
转载于 http://blog.csdn.net/shimiso 在Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) 用个比较通俗的比如,任何一个守护线程都是整个JVM中所有非守护线程的保姆: 只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同结束工作。 Daemon的作用是为其他线程的运行提供便利服务,守护线程最典型的应用就是 GC (垃圾回收器),它就是一个很称职的守护者。 User和Daemon两者几乎没有区别,唯一的不同之处就在于虚拟机的离开:如果 User Thread已经全部退出运行了,只剩下Daemon Thread存在了,虚拟机也就退出了。 因为没有了被守护者,Daemon也就没有工作可做了,也就没有继续运行程序的必要了。 值得一提的是,守护线程并非只有虚拟机内部提供,用户在编写程序时也可以自己设置守护线程。下面的方法就是用来设置守护线程的。 Thread daemonTread = new Thread(); // 设定 daemonThread 为 守护线程,default false(非守护线程) daemonThread.setDaemon( true); // 验证当前线程是否为守护线程,返回 true 则为守护线程

Java中守护线程的总结

拜拜、爱过 提交于 2020-01-12 23:42:55
转载: http://blog.csdn.net/shimiso 在 Java 中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) 用个比较通俗的比如,任何一个守护线程都是整个JVM中所有非守护线程的保姆: 只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同结束工作。 Daemon的作用是为其他线程的运行提供便利服务,守护线程最典型的应用就是 GC (垃圾回收器),它就是一个很称职的守护者。 User和Daemon两者几乎没有区别,唯一的不同之处就在于虚拟机的离开:如果 User Thread已经全部退出运行了,只剩下Daemon Thread存在了,虚拟机也就退出了。 因为没有了被守护者,Daemon也就没有工作可做了,也就没有继续运行程序的必要了。 值得一提的是,守护线程并非只有虚拟机内部提供,用户在编写程序时也可以自己设置守护线程。下面的方法就是用来设置守护线程的。 [java] view plain copy Thread daemonTread = new Thread(); // 设定 daemonThread 为 守护线程,default false(非守护线程) daemonThread.setDaemon( true); //

JAVA守护线程

a 夏天 提交于 2020-01-12 23:42:14
  在Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) 。用个比较通俗的比如,任何一个守护线程都是整个JVM中所有非守护线程的保姆: 只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同结束工作。 Daemon的作用是为其他线程的运行提供便利服务,守护线程最典型的应用就是 GC (垃圾回收器),它 就是一个很称职的守护者。 User 和Daemon两者几乎没有区别,唯一的不同之处就在于虚拟机的离开:如果 User Thread已经全部退出运行了,只剩下Daemon Thread存在了,虚拟机也就退出了。 因为没有了被守护者,Daemon也就没有工作可做了,也就没有继续运行程序的必要了。 值得一提的是,守护线程并非只有虚拟机内部提供,用户在编写程序时也可以自己设置守护线程。下面的方法就是用来设置守护线程的。 Thread daemonTread = new Thread(); // 设定 daemonThread 为 守护线程,default false(非守护线程) daemonThread.setDaemon(true); // 验证当前线程是否为守护线程,返回 true 则为守护线程 daemonThread.isDaemon();   这里有几点需要注意