当前位置: 首页 > news >正文

懒人图库seo有什么作用

懒人图库,seo有什么作用,html网页课程设计报告,杭州网站建设设计制作文章目录 1、自定义MyWebServlet 注解2、创建HttpServlet文件3、加载项目中的所有以.java结尾的文件4、收集项目中带有MyWebServlet 的类对象 1、自定义MyWebServlet 注解 我们知道,tomcat是依据WebServlet注解去收集所有servlet类的。 import java.lang.annotati…

文章目录

  • 1、自定义@MyWebServlet 注解
  • 2、创建HttpServlet文件
  • 3、加载项目中的所有以.java结尾的文件
  • 4、收集项目中带有@MyWebServlet 的类对象

在这里插入图片描述

1、自定义@MyWebServlet 注解

我们知道,tomcat是依据@WebServlet注解去收集所有servlet类的。

import java.lang.annotation.*;//该注解可以应用于类、接口(包括注解类型)、枚举
@Target(ElementType.TYPE)//ElementType.TYPE
//该注解标记的元素可以被Javadoc 或类似的工具文档化
@Documented
//该注解的生命周期,由JVM 加载,包含在类文件中,在运行时可以被获取到
@Retention(RetentionPolicy.RUNTIME)//RUNTIME/*** @description:* @author: YHZ* @date: 2023/8/15 14:36**/
public @interface MyWebServlet {String urlMapping()default "";
}

2、创建HttpServlet文件

用过Servlet写过项目的朋友都知道,声明一个Servlet不仅要有@WebServlet注解,还要继承HttpServlet这个类。

public abstract class HttpServlet {//实现doGet方法public abstract void doGet(HttpRequest request, HttpResponse response);//实现doPOST方法public abstract void doPost(HttpRequest request, HttpResponse response);//实现service方法进行判断public void service(HttpRequest request, HttpResponse response){if ("GET".equals(request.getMethod())){doGet(request,response);}else if("POST".equals(request.getMethod())){doPost(request,response);}}
}

3、加载项目中的所有以.java结尾的文件

public class FileChooseConfig {//存的是该项目文件夹中所有.java结尾文件的全限定名public static List<String> arr= new ArrayList<>();public static void getFilePath(File file) {File[] fs = file.listFiles();for (File f : fs) {if (f.isDirectory()){getFilePath(f);}if (f.isFile()) {String filepath = f.toString();filepath = filepath.split("main")[1];filepath = filepath.substring(6,filepath.length());if( filepath.endsWith(".java")) {//把是.java文件的全类名放到arr中arr.add(filepath.replace("\\", ".").replace(".java", ""));}}}}
}

4、收集项目中带有@MyWebServlet 的类对象

public class FileChooseConfig {//key为urlMapping路径,value为通过全类名反射得到的servlet类对象public static Map<String,Class> webServletMap = new ConcurrentHashMap<>();//查找所有controller,并创建对象装入Map里(“url”:Object)public static void chooseWebServlet() {for(String file: arr){try {Class<?> aClass = Class.forName(file);//如果有WebServlet注解if(aClass.isAnnotationPresent(MyWebServlet.class)) {MyWebServlet webServlet = getUrlMapping(aClass);//如果之前已经有了一样的  不同controller的requestmapping的值,说明有冲突。if (webServletMap.containsKey(webServlet.urlMapping())) {throw new RuntimeException("类多注解值:" + webServlet.urlMapping());} else {//如果之前没有添加过相同urlMapping的servlet,则向servletMap中添加key:urlMapping;value:servlet类对象webServletMap.put(webServlet.urlMapping(),  aClass);}}}catch (ClassNotFoundException e) {e.printStackTrace();}}}public static MyWebServlet getUrlMapping(Class cl){Annotation annotation = cl.getAnnotation(MyWebServlet.class);if(annotation instanceof  MyWebServlet){return  (MyWebServlet) annotation;}return null;}}
http://www.shuangfujiaoyu.com/news/9333.html

相关文章:

  • 郑州 手机网站制作网页制作教程视频
  • 汕头网站建设制作方案湖南今日新闻最新头条
  • 办公用品网站建设百度一下你就知道主页
  • 河南省建设委员会网站专业的网络推广
  • 网站网页设计中怎么添加页码信息网站推广去哪家比较好
  • 中国最大的建站网站长沙网站seo技术厂家
  • 如何建立代购网站域名购买哪个网站好
  • 武汉教育网站百度竞价排名叫什么
  • 邢台政府信息公开平台长沙关键词优化费用
  • 外贸网站建设十大标准外贸网站建站网络推广的细节
  • 南昌网站建设公司应用商店关键词优化
  • 东莞英文网站制作sem扫描电镜是测什么的
  • 网站建设的域名注册资源
  • 金坛常州做网站西安seo优化公司
  • 做app和网站哪个沈阳优化推广哪家好
  • 大兴网站开发网站建设报价网站开发外包
  • 秦皇岛建网站百度账号中心
  • 深圳定制建设网站搜资源
  • 网站模板怎么用dreamweaver编辑营销策略分析论文
  • web网站开发基础培训如何优化网站
  • 轮播网站手游cpa推广平台
  • wordpress cms怎么登陆重庆seo整站优化方案范文
  • oa办公系统如何使用windows7优化大师下载
  • 梁志天设计公司简介网站优化哪家好
  • wordpress 自定义标签云seo公司关键词
  • 网站制作 发票杭州seo网站排名
  • 模仿网站怎么做南昌网站seo
  • 展厅布置摆放设计公司安卓手机游戏优化器
  • 淘宝客导购网站建设?企业建站用什么好
  • 网站主体信息百度seo发包工具